目前,千牛提供了插件的生命周期回调方法。允许在插件打开/销毁时候,运行指定的JS文件。
补充
:目前Android的该功能在开发中,iOS已经支持该功能。
打开插件时(包括用户手动点击打开插件、通过协议路由打开插件),千牛移动客户端会运行ZIP包下,qap/lifecycle
目录下的onCreate.js
文件。
为此,新建文件src/lifecycle/onCreate.js
(目录随意),编辑代码:
console.log('QAP lifecycle onCreate'); //可以调用QAP-SDK import QN from 'QAP-SDK' QN.toast({ query: { text: '给你甩个 toast ~~?' } })
配置webpack,是为了确保lifecycle/onCreate.js会编译到build/lifecycle/onCreate.js。最终打包会把build
目录内容直接拷贝到ZIP包的QAP
目录中。
配置方案很简单,直接在getDevEntry
函数返回前,写死:entry['lifecycle/onCreate'] = 'lifecycle/onCreate.jsx';
。如下图所示:
千牛工作台扫码运行,会弹出内容为“给你甩个 toast
”的Toast,即可证明运行了
src/lifecycle/onCreate.js
文件。
插件关闭时,千牛移动客户端会运行ZIP包下,qap/lifecycle
目录下的onDestroy.js
文件。
方法跟“打开插件”很类似,在次不再赘述,唯一的区别是名字由onCreate.js
变成onDestroy.js
。