HaaS UI基础教学九:JSAPI应用包管理

简介: Package JSAPI是HaaS UI提供的一个轻量级应用包管理接口,特别适用于管理小程序应用包的安装信息。

名词解释

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参数。

示例代码


  1. // sync
  2. const pm = $falcon.jsapi.pm;
  3.   pm.getInstalledAppInfo({
  4.     }, result => {
  5.     result && !result.error && console.log(result);
  6.     });
  7. }
  8. // async
  9. const pm = $falcon.jsapi.pm;
  10.     let result = await pm.getInstalledAppInfo({
  11. });         
  12. 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。


 
  1. const pm = $falcon.jsapi.pm;
  2. pm.on( "packageInstalled", param => {})

falcon.jsapi.pm.on("packageUninstalled", param => {}) 是监听小程序被卸载的 API。如果某个小程序被卸载,将打印被卸载小程序的appId。


  
  1. const pm = $falcon.jsapi.pm;
  2. pm.on( "packageUninstalled", param => {})

 

1.3、falcon.jsapi.pm.off

falcon.jsapi.pm.off 是关闭监听小程序安装和卸载事件的 API。

入参
 

属性

类型

必填

描述

事件名

String

监听事件的名称。

callback

Function

回调函数。

 

示例代码

falcon.jsapi.pm.off("packageInstalled", param => {}) 将关闭监听小程序的卸载事件。


   
  1. const pm = $falcon.jsapi.pm;
  2. pm.off( "packageInstalled", param => {})

falcon.jsapi.pm.off("packageUninstalled", param => {}) 将关闭监听小程序的安装事件。


    
  1. const pm = $falcon.jsapi.pm;
  2. 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/

相关文章
|
11天前
「Mac畅玩鸿蒙与硬件41」UI互动应用篇18 - 多滑块联动控制器
本篇将带你实现一个多滑块联动的控制器应用。用户可以通过拖动多个滑块,动态控制不同参数(如红绿蓝三色值),并实时显示最终结果。我们将以动态颜色调节为例,展示如何结合状态管理和交互逻辑,打造一个高级的滑块控制器应用。
145 78
「Mac畅玩鸿蒙与硬件41」UI互动应用篇18 - 多滑块联动控制器
|
1天前
|
数据处理
「Mac畅玩鸿蒙与硬件45」UI互动应用篇22 - 评分统计工具
本篇将带你实现一个评分统计工具,用户可以对多个选项进行评分。应用会实时更新每个选项的评分结果,并统计平均分。这一功能适合用于问卷调查或评分统计的场景。
101 65
「Mac畅玩鸿蒙与硬件45」UI互动应用篇22 - 评分统计工具
|
12天前
|
UED
「Mac畅玩鸿蒙与硬件40」UI互动应用篇17 - 照片墙布局
本篇将带你实现一个简单的照片墙布局应用,通过展示多张图片组成照片墙效果,用户可以点击图片查看其状态变化。
119 67
「Mac畅玩鸿蒙与硬件40」UI互动应用篇17 - 照片墙布局
|
15小时前
「Mac畅玩鸿蒙与硬件46」UI互动应用篇23 - 自定义天气预报组件
本篇将带你实现一个自定义天气预报组件。用户可以通过选择不同城市来获取相应的天气信息,页面会显示当前城市的天气图标、温度及天气描述。这一功能适合用于动态展示天气信息的小型应用。
51 35
「Mac畅玩鸿蒙与硬件46」UI互动应用篇23 - 自定义天气预报组件
|
2天前
|
存储 索引
「Mac畅玩鸿蒙与硬件44」UI互动应用篇21 - 随机励志语录生成器
本篇将带你实现一个随机励志语录生成器应用。用户点击按钮后,界面会随机显示一条预设的励志语录。该应用展示了如何结合数组操作、状态管理和动态更新界面内容的功能,是一个轻量级的互动应用示例。
57 21
「Mac畅玩鸿蒙与硬件44」UI互动应用篇21 - 随机励志语录生成器
|
17天前
|
存储 UED
「Mac畅玩鸿蒙与硬件37」UI互动应用篇14 - 随机颜色变化器
本篇将带你实现一个随机颜色变化器应用。用户点击“随机颜色”按钮后,界面背景会随机变化为淡色系颜色,同时显示当前的颜色代码,页面还会展示一只猫咪图片作为装饰,提升趣味性。
74 36
「Mac畅玩鸿蒙与硬件37」UI互动应用篇14 - 随机颜色变化器
|
14天前
「Mac畅玩鸿蒙与硬件38」UI互动应用篇15 - 猜数字增强版
本篇将带你实现一个升级版的数字猜谜游戏。相比基础版,新增了计分和历史记录功能,用户可以在每次猜测后查看自己的得分和猜测历史。此功能展示了状态管理的进阶用法以及如何保存和显示历史数据。
71 31
「Mac畅玩鸿蒙与硬件38」UI互动应用篇15 - 猜数字增强版
|
9天前
「Mac畅玩鸿蒙与硬件43」UI互动应用篇20 - 闪烁按钮效果
本篇将带你实现一个带有闪烁动画的按钮交互效果。通过动态改变按钮颜色,用户可以在视觉上感受到按钮的闪烁效果,提升界面互动体验。
62 19
「Mac畅玩鸿蒙与硬件43」UI互动应用篇20 - 闪烁按钮效果
|
10天前
「Mac畅玩鸿蒙与硬件42」UI互动应用篇19 - 数字键盘应用
本篇将带你实现一个数字键盘应用,支持用户通过点击数字键输入数字并实时更新显示内容。我们将展示如何使用按钮组件和状态管理来实现一个简洁且实用的数字键盘。
53 17
「Mac畅玩鸿蒙与硬件42」UI互动应用篇19 - 数字键盘应用
|
13天前
|
前端开发 UED
「Mac畅玩鸿蒙与硬件39」UI互动应用篇16 - 倒计时环形进度条
本篇将带你实现一个倒计时环形进度条应用。用户可以设置倒计时的时间,启动倒计时后,应用会动态显示一个随着时间递减的环形进度条,同时伴有数字倒计时显示。这是结合动画效果和时间管理的实用示例。
98 10
「Mac畅玩鸿蒙与硬件39」UI互动应用篇16 - 倒计时环形进度条
下一篇
DataWorks