名詞解釋
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
- let result = await pm.getInstalledAppInfo({
- });
- result && !result.error && console.log(result);
success 回調函數
appList | List | 檔案清單。 |
App 對象屬性
appId | String | 小程式應用的 id。 |
name | 小程式應用的名稱。 | |
version | 小程式應用的版本。 | |
icon | 小程式應用圖示的路徑。 |
1.2、falcon.jsapi.pm.on
falcon.jsapi.pm.on 是打開監聽小程式安裝和解除安裝事件的 API。
事件名 | 是 | 監聽事件的名稱。 | |
回調函數。 |
falcon.jsapi.pm.on("packageInstalled", param => {}) 是監聽小程式被安裝的 API。如果某個小程式被安裝,将列印被安裝小程式的appId。
- pm.on("packageInstalled", param => {})
falcon.jsapi.pm.on("packageUninstalled", param => {}) 是監聽小程式被解除安裝的 API。如果某個小程式被解除安裝,将列印被解除安裝小程式的appId。
- pm.on("packageUninstalled", param => {})
1.3、falcon.jsapi.pm.off
falcon.jsapi.pm.off 是關閉監聽小程式安裝和解除安裝事件的 API。
falcon.jsapi.pm.off("packageInstalled", param => {}) 将關閉監聽小程式的解除安裝事件。
- pm.off("packageInstalled", param => {})
falcon.jsapi.pm.off("packageUninstalled", param => {}) 将關閉監聽小程式的安裝事件。
- pm.off("packageUninstalled", param => {})
2、Package JSAPI調用示例
2.1、擷取應用清單
通過調用package.getInstalledAppInfo({}),即可擷取目前所有已安裝的小程式的清單,每個小程式的資訊包含:
- 小程式的名稱
- 小程式的id
- 小程式的版本
![](https://img.laitimes.com/img/9ZDMuAjOiMmIsIjOiQnIsIyZuBnLwUzN4UjNzEjM1ADNwEjMwIzLc52YucWbp5GZzNmLn9Gbi1yZtl2Lc9CX6MHc0RHaiojIsJye.png)
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/1123061942.HaaS UI小程式解決方案基礎教學之一: 快速開始
3.HaaS UI小程式解決方案基礎教學之二: 搭建第一個UI頁面
https://blog.csdn.net/HaaSTech/article/details/1126741744.HaaS UI小程式解決方案基礎教學之三: JSAPI頁面導航
https://blog.csdn.net/HaaSTech/article/details/1126815115.HaaS UI小程式解決方案基礎教學之四: JSAPI資料存儲
https://blog.csdn.net/HaaSTech/article/details/1127661286.HaaS UI小程式解決方案基礎教學之五: JSAPI檔案管理
開發者技術支援
如需更多技術支援,可加入釘釘開發者群,或者關注微信公衆号
更多技術與解決方案介紹,請通路阿裡雲AIoT首頁
https://iot.aliyun.com/