HarmonyOS 後臺任務管理開發指南上線!
為什麼要使用後臺任務?開發過程中如何選擇合適的後臺任務?後臺任務申請時存在哪些約束與限制?
針對開發者使用後臺任務中的疑問,我們 上線了概念更明確、邏輯結構更清晰的後臺任務開發指南,包含具體的使用場景、詳細的開發步驟,幫助開發者全面理解申請後臺任務的必要性、後臺任務型別和申請操作步驟等。
本期 HarmonyOS 開發者資料直通車帶您快速瞭解內容乾貨~
一、初識後臺任務
裝置返回主介面、鎖屏、應用切換等操作會使應用退至後臺,應用退至後臺後如果繼續活動,可能會造成裝置耗電快、使用者介面卡頓等現象。為了降低裝置耗電速度、保障使用者使用流暢度,系統會對退至後臺的應用進行管控,包括程式掛起(即系統不再為應用程式分配 CPU 資源,同時對應的公共事件等不再發給應用程式)和程式終止。
為了保障後臺音樂播放、日曆提醒等功能的正常使用,系統提供了規範內受約束的後臺任務,擴充套件應用在後臺執行時間,包括短時任務、長時任務、延遲任務、代理提醒。
參考文件連結
二、選擇後臺任務
開發者可以根據如下的功能介紹,選擇合適的後臺任務,以滿足應用退至後臺後繼續執行的需求。
○ 短時任務:適用於實時性要求高、耗時不長的任務,例如應用更新時退至後臺後繼續更新,儲存更新時的資料和狀態。
○ 長時任務:適用於長時間執行在後臺、使用者可感知的任務,例如後臺播放音樂、導航、裝置連線等,使用長時任務避免應用程式被掛起。
○ 延遲任務:適用於實時性要求不高、可延遲執行的任務。應用退至後臺後被放入執行佇列,系統會根據記憶體、功耗等統一排程,例如有網路時不定期主動獲取郵件。
○ 代理提醒:代理提醒是指應用退後臺或程式終止後,系統會代理應用做相應的提醒。適用於定時提醒類業務,當前支援的提醒型別包括倒數計時、日曆和鬧鐘三類。
圖 1 後臺任務型別選擇
為保障選擇到合適的任務,開發者可以根據圖 1 流程圖再次判斷。
參考文件連結
三、申請後臺任務
選擇合適的後臺任務型別後,可以進行申請後臺任務的操作啦~以短時任務為例,清晰地呈現申請後臺任務時的操作步驟。
①瞭解相關機制及規格,實現更高效開發。
○ 申請時機:應用需要在前臺或退至後臺 5 秒內申請短時任務。
○ 數量限制:一個應用同一時刻最多支援申請 3 個。
○ 配額機制:一個應用有一定時間配額,單日配額 10 分鐘,單次配額最大為 3 分鐘,低電量時預設為 1 分鐘,配額消耗完後不允許再申請短時任務。所以,任務完成後,應用需主動取消短時任務,否則會影響應用當日短時任務的剩餘配額。
○ 配額計算:僅當應用在後臺時,統計應用下的短時任務計時;同一個應用下的同一個時間段的短時任務,不重複計時。
②匯入相關模組,申請短時任務並實現回撥。
③查詢短時任務的剩餘時間,用以判斷是否繼續執行其他業務。
④任務完成後,及時取消短時任務。
更詳細內容請參見:
參考文件連結
四、期待您的反饋
以上就是本期為大家準備的 HarmonyOS 後臺任務管理開發指南上新內容,希望能夠幫助開發者更高效地探索、體驗、上手 HarmonyOS。
同時,我們十分重視開發者的意見,歡迎各位開發者在 HarmonyOS 應用開發官網積極反饋意見。
我們將持續提升文件體驗、豐富和完善內容,感謝各位開發者的支援及信賴,您的滿意是我們持續提升文件體驗的目標和動力。
來自 “ ITPUB部落格 ” ,連結:https://blog.itpub.net/70009402/viewspace-2997860/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- HarmonyOS Next後臺任務開發入門:背景與基本任務型別型別
- HarmonyOS 位置服務開發指南
- Linux任務的前後臺管理Linux
- 後臺任務
- 節能型後臺資料同步器:HarmonyOS Next的智慧延遲任務管理
- 如何使用WorkManager執行後臺任務(上)
- Android Jetpack – 使用 WorkManager 管理後臺任務AndroidJetpack
- Android Jetpack - 使用 WorkManager 管理後臺任務AndroidJetpack
- Android開發 - Runnable 類任務介面定義與後臺任務待辦解析Android
- HarmonyOS 裝置管理開發:USB 服務開發指導
- iOS後臺模式開發指南iOS模式
- 大資料開發-linux後臺執行,關閉,檢視後臺任務大資料Linux
- 開源任務懸賞接單平臺前後端開發搭建後端
- HarmonyOS CPU與I/O密集型任務開發指導
- 智慧提醒助手——基於HarmonyOS Next的多場景後臺任務實現
- React開發管理後臺0React
- iOS App 後臺任務的坑iOSAPP
- 使用screen後臺執行任務
- php後臺定時執行任務PHP
- ASP.NET 網站後臺任務ASP.NET網站
- 活用Linux的後臺任務(轉)Linux
- React開發管理後臺實踐1React
- 【中秋國慶不斷更】HarmonyOS網路管理開發—Socket連線
- HarmonyOS應用開發學習路線
- SQL Server平臺上資料倉儲管理員的關鍵任務SQLServer
- linux後臺執行和關閉、檢視後臺任務Linux
- HarmonyOS電話服務開發指導
- 研發管理案例-專案管理平臺-需求任務變更歷史分析專案管理
- 後臺提醒與代理提醒:HarmonyOS Next 的智慧提醒管理
- 前端Vue專案iHRM人力資源後臺管理從Vue模板到整體開發Nginx部署上線前端VueNginx
- Android後臺任務(HandlerThread、AsyncTask、IntentService)AndroidthreadIntent
- 如何在 Flutter 建立一個後臺任務Flutter
- netcore後臺任務注意事項NetCore
- 在 JS 中如何排程後臺任務?JS
- 打通Vue開發前後臺業務的任督二脈Vue
- 為開源專案 go-gin-api 增加後臺任務模組GoAPI
- SAP Bar Code 開發(03) – 後臺作業任務實現條碼編號歸零
- 基於 Hyperf 開發的前後分離管理後臺