HaaS UI基础教学九:JSAPI应用包管理-阿里云开发者社区

开发者社区> 开发者小助手> 正文

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/

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
今目标文荣:SaaS的最后一公里是应用
本文讲的是今目标文荣:SaaS的最后一公里是应用,作为软件产业的发展潮流,SaaS的发展已势不可挡,但是距离“井喷式”爆发似乎还有一段距离。那么到底是什么在阻碍用户对SaaS大规模接受呢?
1168 0
SAP(HANA+S/4)上云基础环境部署最佳实践
为提高客户服务水平及集团管理效率,客户选择了SAP解决方案。但是同时也对客户的IT基础设施提出了更多的要求。对此我们针对SAP上云基础设施选型、云原生产品、灾备方案设计,云上安全环境设计总结出了SAP最佳上云方案。本文展示真实案例中的HANA和S/4部署实践。
60 0
创建SinaSAE云账号创建和发布基于SVN代码管理的PHP空工程
1、使用Sina微博账号登录,进入【新浪云控制台】 2、选择【云应用SAE】界面,选择【创建新应用】 3、点击【继续创建】,进入应用信息编辑界面     依次编辑“二级域名”“应用程序名”,再点【运行环境】中的【PHP空应用】,再点左下角的【创建应用】完成应用创建。
846 0
云开发平台开箱,3分钟零基础搭建个人Hexo博客
Hexo是一款基于Node.js的博客框架,可以将Markdown格式的文本渲染为HTML代码。所以,博客基本就是纯静态,维护相对方便。但是缺点也很明显——经常换编写环境使用不便,因为它的所有渲染代码都是在本地存储的。云开发因为提供全云端的开发环境,零基础实现hexo博客的一键创建和一键部署。
4879 0
JSP 杂项基础知识
1.JSP九大内置对象 2.建立JSP后,将PageEncoding改为ContentType  pageEncoding是jsp文件自身的编码方式,而contentType是服务器发给客户端时内容的编码 3.
666 0
1445
文章
309
问答
来源圈子
更多
+ 订阅
文章排行榜
最热
最新
相关电子书
更多
《2021云上架构与运维峰会演讲合集》
立即下载
《零基础CSS入门教程》
立即下载
《零基础HTML入门教程》
立即下载