[Day 30] 认识LIFF

所以 LIFF 到底是什麽?

从前,我们只能用 LINE app,在聊天室内与朋友一对一谈话,或是用群组、聊天室,甚或是社群进行多人谈话。到後来聊天机器人的出现,开始可以与机器人透过 Rich Menu 等介面互动,这些都只是在聊天视窗内进行。

LIFF(LINE Front-end Framework) 的出现,让开发者与用户之间,能有更多元的互动。

我们不仅可以透过以下方法,取得用户的环境变数:

  • liff.getLanguage()
  • liff.getVersion()
  • liff.isInClient()
  • liff.getOS()
  • liff.getLineVersion()

在建立 LIFF 的时候,它是建在 LINE Login Channel。我们可以用 liff.IsLoggedIn() 去判断用户是否已登入,假如已登入,触发事件执行 liff.logout(),能让他登出;反之,执行 liff.login() 可以将用户倒页至 LINE 的登入画面,再成功登入後,我们也可以利用以下方法,取得用户的相关资讯:

  • liff.getAccessToken()
  • liff.getIDToken()
  • liff.getDecodedIDToken()
  • liff.getContext()
  • liff.getProfile()

不论用户是用 LINE app 的内部浏览器,或是如 Chrome 的外部浏览器,接能开启 LIFF URL。我们能透过 liff.isInClient(),去判断用户是否在 LINE 内部浏览器开启 LIFF APP。甚至能用 liff.openWindow() 定义URL,让其打开其他LIFF APP的页面。也能透过 liff.IsApiAvailable(),去检查用户执行 LIFF app 的环境,是否符合 API 的版本限制。

用户能在LIFF中,触发事件执行 liff.ShareTargetPicker(),将开发人员定义好的讯息格式分享给好友。
同时也能利用 liff.sendMessages(),以用户的身分,在LIFF APP中发送讯息给聊天机器人。

过去,在 LINE 9.19.0 以前的版本,LIFF app 能执行 liff.ScanCode(),取得QRCode扫描的字串结果,甚至能利用 liff.bluetooth.* 相关的方法,玩转IoT。

未来,期待各企业上架以LIFF框架开发的LINE MINI app(透过 liff.permanentLink.createUrl() 组成的 permanentLink 开启,可以用 liff.permanentLink.setExtraQueryParam() 在 permanentLink 中设定查询参数),让用户只要打开LINE,就能享有各种服务!

终於30天,认识LIFF可以很容易,也可以不容易(痛哭流涕)。


<<:  Day 25. Vue Server Test Utils

>>:  [Day - 30] 不完美的结束

Flutter简介

Flutter简介 Flutter 是 Google推出并开源的移动应用开发框架,主打跨平台、高保真...

予焦啦!支援 RISC-V 权限指令与暂存器

本节是以 Golang 上游 1a708bcf1d17171056a42ec1597ca8848c...

Day 26 - HBuilderX 与 Native.js API 读取图片

Day 26 - HBuilderX 与 Native.js API 读取图片 在 Day 25 -...

Day20:20 - 结帐服务(4) - PayPal Python Checkout SDK(2)

ನಮಸ್ಕಾರ,我是Charlie! 在Day19当中我们完成了Paypal的注册并且试着发了req...

Day28 plugin

在专案中我们常常需要扩充功能,因此我们就可以使用插件,所以今天我们就要来学习如何使用 如何使用 可以...