鴻蒙OS 在模塊中添加Ability

2020-09-19 10:42 更新

Ability 是應(yīng)用所具備的能力的抽象,一個 Module 可以包含一個或多個 Ability。Ability 分為兩種類型:FA(Feature Ability)和 PA(Particle Ability),DevEco Studio 支持創(chuàng)建的 Ability 模板和應(yīng)用場景如下表所示。

Ability類型 Ability模板 使用場景
Particle Ability Empty Data Ability Data Ability 有助于應(yīng)用管理其自身和其他應(yīng)用所存儲數(shù)據(jù)的訪問,并提供與其他應(yīng)用共享數(shù)據(jù)的方法。Data 既可用于同設(shè)備不同應(yīng)用的數(shù)據(jù)共享,也支持跨設(shè)備之間不同應(yīng)用的數(shù)據(jù)共享。
Empty Service Ability Service Ability 可在后臺長時間運(yùn)行而不提供用戶交互界面。Service 可由其他應(yīng)用或 Ability 啟動,即使用戶切換到其他應(yīng)用,Service 仍將在后臺繼續(xù)運(yùn)行。
Feature Ability Empty Feature Ability(JS) 用 JS 和 Java 編寫帶 UI 界面的空模板。
Empty Feature Ability(Java) 用 Java 和 xml 編寫帶 UI 界面的空模板。
List Feature Ability(JS) 用 JS 和 Java 編寫帶 UI 界面的目錄列表模板。
Tab Feature Ability(JS) 用 JS 和 Java 編寫帶 UI 界面的表單模板。

創(chuàng)建Particle Ability

  1. 選中對應(yīng)的模塊,點(diǎn)擊鼠標(biāo)右鍵,選擇 New > Ability ,然后選擇 Empty Data Ability 或者 Empty Service Ability。

img

  1. 根據(jù)選擇的 Ability 模板,設(shè)置 Ability 的基本信息。

  • Empty Data Ability

基本信息設(shè)置:

  • Data Name:Data Ability類名稱。
  • Visible:表示該Ability是否可以被其它應(yīng)用所調(diào)用,勾選上則表示允許被調(diào)用。
  • Package name:新增Ability對應(yīng)的包名稱。

  • Empty Service Ability

基本信息設(shè)置:

  • Service Name:Service Ability 類名稱。

  • Visible:表示該 Ability 是否可以被其它應(yīng)用所調(diào)用,勾選上則表示允許被調(diào)用。

  • Package name:新增 Ability 對應(yīng)的包名稱。

  • Enable background mode

:指定用于滿足特定類型的后臺服務(wù),

可以將多個后臺服務(wù)類型分配給特定服務(wù)。

各服務(wù)與 config.json 文件的映射關(guān)系如下表所示。

Background modes 對應(yīng)config.json字段名稱 描述
Data upload/download, backup/restore data-transfer 通過網(wǎng)絡(luò)/對端設(shè)備進(jìn)行數(shù)據(jù)下載,備份分享,傳輸?shù)葮I(yè)務(wù)
Audio playback audio-playback 音頻輸出業(yè)務(wù)
Audio recording audio-recording 音頻輸入業(yè)務(wù)
Picture-in-picture picture-in-picture 畫中畫,小窗口播放視頻業(yè)務(wù)
Voice/video call over IP voip 音視頻電話、VOIP業(yè)務(wù)
Location update location 定位,導(dǎo)航業(yè)務(wù)
Bluetooth communication bluetooth-interaction 藍(lán)牙掃描、連接、傳輸業(yè)務(wù)(穿戴)
Wifi communication wifi-interaction WLAN掃描、連接、傳輸業(yè)務(wù)(多屏,克?。?/td>
Screen recording, screenshot screen-fetch 錄屏,截屏業(yè)務(wù)

  1. 點(diǎn)擊 Finish 完成 Ability 的創(chuàng)建,可以在工程目錄對應(yīng)的模塊中查看和編輯 Ability。

創(chuàng)建 Feature Ability

  1. 選中對應(yīng)的模塊,點(diǎn)擊鼠標(biāo)右鍵,選擇 New > Ability ,然后選擇對應(yīng)的 Feature Ability 模板。

img

  1. 根據(jù)選擇的 Ability 模板,設(shè)置 Feature Ability 的基本信息。

  • Page Name:Feature Ability 類名稱。
  • Launcher Ability:表示該 Ability 在終端桌面上是否有啟動圖標(biāo),一個 HAP 可以有多個啟動圖標(biāo),來啟動不同的 FA。
  • Visible:表示該 Ability 是否可以被其它應(yīng)用所調(diào)用,勾選上則表示允許被調(diào)用。
  • JS Component Name:JS 組件名稱,只有涉及 JS 開發(fā)語言時才需要設(shè)置。
  • Package name:新增 Ability 對應(yīng)的包名稱。

  1. 點(diǎn)擊 Finish 完成 Ability 的創(chuàng)建,可以在工程目錄對應(yīng)的模塊中查看和編輯Ability。
以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號