名词解释
AliOS Things: 阿里云智能IoT团队自研的物联网操作系统
HaaS:全称是Hardware as a Service,阿里云智能IoT团队基于AliOS Things系统推出的硬件即服务
HaaS UI:全称是Hardware as a Service User Interface,是源自AliOS Things操作系统上的一套应用&图形解决方案,支持C/C++和 JS两种开发语言
JSAPI: 全称是JavaScript Application Programming Interface, 即JS应用程序编程接口,实现JS前端和系统层各个模块的接口调用,类似android系统的JNI
1、Package JSAPI简介
Package JSAPI是HaaS UI提供的一个轻量级应用包管理接口,特别适用于管理小程序应用包的安装信息。
例如用户想要获取当前安装的所有小程序应用的信息,或者想要监听小程序应用包的安装和卸载,就可以通过Package JSAPI来完成。
Package JSAPI的作用域为当前小程序应用,包含的接口如下:
接口宿主 |
JSAPI |
调用方法 |
接口功能 |
package |
getInstalledAppInfo |
$falcon.jsapi.pm.getInstalledAppInfo |
应用包管理 |
packageInstalled |
$falcon.jsapi.pm.on("packageInstalled", param => {}) $falcon.jsapi.pm.off("packageInstalled", param => {}) |
||
packageUninstalled |
$falcon.jsapi.pm.on("packageUnInstalled", param => {}) $falcon.jsapi.pm.off("packageUninstalled", param => {}) |
1.1、package.getInstalledAppInfo
package.getInstalledAppInfo 是获取本地已安装的小程序应用的 API。
调用 package.getInstalledAppInfo 成功后,可查看所有本地已安装的小程序的信息。
入参
Object 类型,属性如下:
属性 |
类型 |
必填 |
描述 |
无 |
- |
- |
- |
callback |
Function |
否 |
回调函数,包含result参数。 |
示例代码
-
// sync
-
-
const pm = $falcon.jsapi.pm;
-
-
pm.getInstalledAppInfo({
-
-
}, result => {
-
-
result && !result.error && console.log(result);
-
-
});
-
-
}
-
-
-
-
// async
-
-
const pm = $falcon.jsapi.pm;
-
-
let result = await pm.getInstalledAppInfo({
-
-
});
-
-
result && !result.error && console.log(result);
success 回调函数
属性 |
类型 |
描述 |
appList |
List |
文件列表。 |
App 对象属性
属性 |
类型 |
描述 |
appId |
String |
小程序应用的 id。 |
name |
String |
小程序应用的名称。 |
version |
String |
小程序应用的版本。 |
icon |
String |
小程序应用图标的路径。 |
1.2、falcon.jsapi.pm.on
falcon.jsapi.pm.on 是打开监听小程序安装和卸载事件的 API。
入参
属性 |
类型 |
必填 |
描述 |
事件名 |
String |
是 |
监听事件的名称。 |
callback |
Function |
否 |
回调函数。 |
示例代码
falcon.jsapi.pm.on("packageInstalled", param => {}) 是监听小程序被安装的 API。如果某个小程序被安装,将打印被安装小程序的appId。
-
const pm = $falcon.jsapi.pm;
-
-
pm.on( "packageInstalled", param => {})
falcon.jsapi.pm.on("packageUninstalled", param => {}) 是监听小程序被卸载的 API。如果某个小程序被卸载,将打印被卸载小程序的appId。
-
const pm = $falcon.jsapi.pm;
-
-
pm.on( "packageUninstalled", param => {})
1.3、falcon.jsapi.pm.off
falcon.jsapi.pm.off 是关闭监听小程序安装和卸载事件的 API。
入参
属性 |
类型 |
必填 |
描述 |
事件名 |
String |
是 |
监听事件的名称。 |
callback |
Function |
否 |
回调函数。 |
示例代码
falcon.jsapi.pm.off("packageInstalled", param => {}) 将关闭监听小程序的卸载事件。
-
const pm = $falcon.jsapi.pm;
-
-
pm.off( "packageInstalled", param => {})
falcon.jsapi.pm.off("packageUninstalled", param => {}) 将关闭监听小程序的安装事件。
-
const pm = $falcon.jsapi.pm;
-
-
pm.off( "packageUninstalled", param => {})
-
2、Package JSAPI调用示例
2.1、获取应用列表
通过调用package.getInstalledAppInfo({}),即可获取当前所有已安装的小程序的列表,每个小程序的信息包含:
- 小程序的名称
- 小程序的id
- 小程序的版本
2.2、监听小程序安装
通过调用pm.on("packageInstalled", param => {}),即可监听某个小程序的安装。当小程序被安装时,将打印该小程序的id。
2.3、关闭监听小程序安装
通过调用pm.off("packageInstalled", param => {}),即可关闭监听某个小程序的安装。
2.4、监听小程序卸载
通过调用pm.on("packageUninstalled", param => {}),即可监听某个小程序的卸载。当小程序被卸载时,将打印该小程序的id。
2.5、 关闭监听小程序卸载
通过调用pm.off("packageUninstalled", param => {}),即可关闭监听某个小程序的卸载。
3、相关学习文章
1.HaaS UI 免费开源的轻量级IoT小程序解决方案 https://blog.csdn.net/HaaSTech/article/details/112306194
2.HaaS UI小程序解决方案基础教学之一: 快速开始 https://blog.csdn.net/HaaSTech/article/details/112306194
3.HaaS UI小程序解决方案基础教学之二: 搭建第一个UI页面
https://blog.csdn.net/HaaSTech/article/details/112674174
4.HaaS UI小程序解决方案基础教学之三: JSAPI页面导航
https://blog.csdn.net/HaaSTech/article/details/112681511
5.HaaS UI小程序解决方案基础教学之四: JSAPI数据存储
https://blog.csdn.net/HaaSTech/article/details/112766128
6.HaaS UI小程序解决方案基础教学之五: JSAPI文件管理
https://blog.csdn.net/HaaSTech/article/details/112766128
开发者技术支持
如需更多技术支持,可加入钉钉开发者群,或者关注微信公众号
更多技术与解决方案介绍,请访问阿里云AIoT首页https://iot.aliyun.com/