久久国产成人av_抖音国产毛片_a片网站免费观看_A片无码播放手机在线观看,色五月在线观看,亚洲精品m在线观看,女人自慰的免费网址,悠悠在线观看精品视频,一级日本片免费的,亚洲精品久,国产精品成人久久久久久久

分享

Day10 鴻蒙,Ability全家桶(二)如何后臺運(yùn)行任務(wù)

 月亮山的豬 2021-02-01

今天我們來聊一下Service Ability,,基于Service模板的Ability(以下簡稱“Service”)主要用于后臺運(yùn)行任務(wù)(如執(zhí)行音樂播放,、文件下載等),但不提供用戶交互界面,。Service可由其他應(yīng)用或Ability啟動,,即使用戶切換到其他應(yīng)用,Service仍將在后臺繼續(xù)運(yùn)行,。

這里就不得不提到另外一個知識點,,線程。

其實目前我們前面提到的一些UI布局的繪制都是在主線程上進(jìn)行的,,又稱UI線程,,默認(rèn)情況下,所有的操作都是在主線程上執(zhí)行,,這里如果我們系統(tǒng)通過ServiceAbility來完成后臺運(yùn)行任務(wù),,我們首先要初步了解一下asyncDispatch。

1)初識TaskDispatcher的異步派發(fā)任務(wù)asyncDispatch,;

那么TaskDispatcher又是什么呢,?TaskDispatcher是一個任務(wù)分發(fā)器,它是Ability分發(fā)任務(wù)的基本接口,,隱藏任務(wù)所在線程的實現(xiàn)細(xì)節(jié),。詳細(xì)的介紹我們放到后面,先來了解異步派發(fā)任務(wù)遠(yuǎn)程桌面asyncDispatch:派發(fā)任務(wù),,并立即返回,返回值是一個可用于取消任務(wù)的接口,。

2)創(chuàng)建Service Ability,;

通過工具欄File->New->Ability->Empty Service Ability來創(chuàng)建Service Ability,這樣創(chuàng)建的好處是可以在config.json中自動完成Service Ability的配置,。

3)啟動Service Ability,;

這里還可以通過Intent的構(gòu)造元素Parameters來傳遞參數(shù),進(jìn)行簡單的數(shù)據(jù)傳遞,。

4)連接ServiceAbility

如果Service需要與Page Ability或其他應(yīng)用的Service Ability進(jìn)行交互,,則應(yīng)創(chuàng)建用于連接的Connection。Service支持其他Ability通過connectAbility()方法與其進(jìn)行連接,。在使用connectAbility()處理回調(diào)時,,需要傳入目標(biāo)Service的Intent與IAbilityConnection的實例。IAbilityConnection提供了兩個方法供開發(fā)者實現(xiàn):onAbilityConnectDone()用來處理連接的回調(diào),,onAbilityDisconnectDone()用來處理斷開連接的回調(diào),。

連接時步驟(1)(2)保持不變,,connectAbility中傳入intentService和connection。

這里詳細(xì)的創(chuàng)建IDL文件過程可參考《IDL接口使用規(guī)范》和《定義HarmonyOS IDL接口》,。這個在后續(xù)的文章中分析討論,,目前官方的接口還無法成功回調(diào)onAbilityConnectDone()。

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,,所有內(nèi)容均由用戶發(fā)布,,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式,、誘導(dǎo)購買等信息,,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,,請點擊一鍵舉報,。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多