為什么要使用后臺任務(wù)?開發(fā)過程中如何選擇合適的后臺任務(wù)?后臺任務(wù)申請時存在哪些約束與限制?
針對開發(fā)者使用后臺任務(wù)中的疑問,我們上線了概念更明確、邏輯結(jié)構(gòu)更清晰的后臺任務(wù)開發(fā)指南,包含具體的使用場景、詳細(xì)的開發(fā)步驟,幫助開發(fā)者全面理解申請后臺任務(wù)的必要性、后臺任務(wù)類型和申請操作步驟等。
本期HarmonyOS開發(fā)者資料直通車帶您快速了解內(nèi)容干貨~
一
初識后臺任務(wù)
設(shè)備返回主界面、鎖屏、應(yīng)用切換等操作會使應(yīng)用退至后臺,應(yīng)用退至后臺后如果繼續(xù)活動,可能會造成設(shè)備耗電快、用戶界面卡頓等現(xiàn)象。為了降低設(shè)備耗電速度、保障用戶使用流暢度,系統(tǒng)會對退至后臺的應(yīng)用進行管控,包括進程掛起(即系統(tǒng)不再為應(yīng)用進程分配CPU資源,同時對應(yīng)的公共事件等不再發(fā)給應(yīng)用進程)和進程終止。
為了保障后臺音樂播放、日歷提醒等功能的正常使用,系統(tǒng)提供了規(guī)范內(nèi)受約束的后臺任務(wù),擴展應(yīng)用在后臺運行時間,包括短時任務(wù)、長時任務(wù)、延遲任務(wù)、代理提醒。
參考文檔鏈接
后臺任務(wù)總體概述:https://developer.harmonyos.com/cn/docs/documentation/doc-guides-V3/background-task-overview-0000001614944868-V3
二
選擇后臺任務(wù)
開發(fā)者可以根據(jù)如下的功能介紹,選擇合適的后臺任務(wù),以滿足應(yīng)用退至后臺后繼續(xù)運行的需求。
-
短時任務(wù):適用于實時性要求高、耗時不長的任務(wù),例如應(yīng)用更新時退至后臺后繼續(xù)更新,保存更新時的數(shù)據(jù)和狀態(tài)。
-
長時任務(wù):適用于長時間運行在后臺、用戶可感知的任務(wù),例如后臺播放音樂、導(dǎo)航、設(shè)備連接等,使用長時任務(wù)避免應(yīng)用進程被掛起。
-
延遲任務(wù):適用于實時性要求不高、可延遲執(zhí)行的任務(wù)。應(yīng)用退至后臺后被放入執(zhí)行隊列,系統(tǒng)會根據(jù)內(nèi)存、功耗等統(tǒng)一調(diào)度,例如有網(wǎng)絡(luò)時不定期主動獲取郵件。
- 代理提醒:代理提醒是指應(yīng)用退后臺或進程終止后,系統(tǒng)會代理應(yīng)用做相應(yīng)的提醒。適用于定時提醒類業(yè)務(wù),當(dāng)前支持的提醒類型包括倒計時、日歷和鬧鐘三類。
圖1 后臺任務(wù)類型選擇
為保障選擇到合適的任務(wù),開發(fā)者可以根據(jù)圖1流程圖再次判斷。
參考文檔鏈接
后臺任務(wù)總體概述:https://developer.harmonyos.com/cn/docs/documentation/doc-guides-V3/background-task-overview-0000001614944868-V3
三
申請后臺任務(wù)
選擇合適的后臺任務(wù)類型后,可以進行申請后臺任務(wù)的操作啦~以短時任務(wù)為例,清晰地呈現(xiàn)申請后臺任務(wù)時的操作步驟。
①了解相關(guān)機制及規(guī)格,實現(xiàn)更高效開發(fā)。
-
申請時機:應(yīng)用需要在前臺或退至后臺5秒內(nèi)申請短時任務(wù)。
-
數(shù)量限制:一個應(yīng)用同一時刻最多支持申請3個。
-
配額機制:一個應(yīng)用有一定時間配額,單日配額10分鐘,單次配額最大為3分鐘,低電量時默認(rèn)為1分鐘,配額消耗完后不允許再申請短時任務(wù)。所以,任務(wù)完成后,應(yīng)用需主動取消短時任務(wù),否則會影響應(yīng)用當(dāng)日短時任務(wù)的剩余配額。
-
配額計算:僅當(dāng)應(yīng)用在后臺時,統(tǒng)計應(yīng)用下的短時任務(wù)計時;同一個應(yīng)用下的同一個時間段的短時任務(wù),不重復(fù)計時。
②導(dǎo)入相關(guān)模塊,申請短時任務(wù)并實現(xiàn)回調(diào)。
③查詢短時任務(wù)的剩余時間,用以判斷是否繼續(xù)運行其他業(yè)務(wù)。
④任務(wù)完成后,及時取消短時任務(wù)。
更詳細(xì)內(nèi)容請參見:
參考文檔鏈接
短時任務(wù):https://developer.harmonyos.com/cn/docs/documentation/doc-guides-V3/transient-task-0000001759591245-V3
長時任務(wù):https://developer.harmonyos.com/cn/docs/documentation/doc-guides-V3/continuous-task-0000001711672320-V3
延遲任務(wù):https://developer.harmonyos.com/cn/docs/documentation/doc-guides-V3/work-scheduler-0000001711831844-V3
代理提醒:https://developer.harmonyos.com/cn/docs/documentation/doc-guides-V3/agent-powered-reminder-0000001663585481-V3
四
期待您的反饋
以上就是本期為大家準(zhǔn)備的HarmonyOS后臺任務(wù)管理開發(fā)指南上新內(nèi)容,希望能夠幫助開發(fā)者更高效地探索、體驗、上手HarmonyOS。
同時,我們十分重視開發(fā)者的意見,歡迎各位開發(fā)者在HarmonyOS應(yīng)用開發(fā)官網(wǎng)積極反饋意見。
我們將持續(xù)提升文檔體驗、豐富和完善內(nèi)容,感謝各位開發(fā)者的支持及信賴,您的滿意是我們持續(xù)提升文檔體驗的目標(biāo)和動力。
請關(guān)注HarmonyOS開發(fā)者公眾號更多HarmonyOS開發(fā)者資料直通車相關(guān)推送,獲取最新文檔和內(nèi)容資源!
更多推薦
點擊下方圖片鏈接,查看更多欄目內(nèi)容
-
HarmonyOS
+關(guān)注
關(guān)注
79文章
1980瀏覽量
30337
原文標(biāo)題:HarmonyOS后臺任務(wù)管理開發(fā)指南上線!
文章出處:【微信號:HarmonyOS_Dev,微信公眾號:HarmonyOS開發(fā)者】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論