鴻蒙OS 在模塊中添加Ability

2020-09-19 10:42 更新

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

Ability類型 Ability模板 使用場(chǎng)景
Particle Ability Empty Data Ability Data Ability 有助于應(yīng)用管理其自身和其他應(yīng)用所存儲(chǔ)數(shù)據(jù)的訪問(wèn),并提供與其他應(yīng)用共享數(shù)據(jù)的方法。Data 既可用于同設(shè)備不同應(yīng)用的數(shù)據(jù)共享,也支持跨設(shè)備之間不同應(yīng)用的數(shù)據(jù)共享。
Empty Service Ability Service Ability 可在后臺(tái)長(zhǎng)時(shí)間運(yùn)行而不提供用戶交互界面。Service 可由其他應(yīng)用或 Ability 啟動(dòng),即使用戶切換到其他應(yīng)用,Service 仍將在后臺(tái)繼續(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. 選中對(duì)應(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對(duì)應(yīng)的包名稱。

  • Empty Service Ability

基本信息設(shè)置:

  • Service Name:Service Ability 類名稱。

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

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

  • Enable background mode

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

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

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

Background modes 對(duì)應(yīng)config.json字段名稱 描述
Data upload/download, backup/restore data-transfer 通過(guò)網(wǎng)絡(luò)/對(duì)端設(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)建,可以在工程目錄對(duì)應(yīng)的模塊中查看和編輯 Ability。

創(chuàng)建 Feature Ability

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

img

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

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

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

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)