日B视频 亚洲,啪啪啪网站一区二区,91色情精品久久,日日噜狠狠色综合久,超碰人妻少妇97在线,999青青视频,亚洲一区二卡,让本一区二区视频,日韩网站推荐

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

如何在Android 12中運行WorkManager

谷歌開發(fā)者 ? 來源:Android開發(fā)者 ? 作者:Android ? 2021-10-28 11:18 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

Android 12 (API 級別為 31) 引入了前臺服務(wù)啟動限制。除少部分特殊場景外,如果您的應(yīng)用的 targetSdkVersion 是 Android 12 或者更高 API 級別的話,應(yīng)用在后臺運行時將不能再啟動前臺服務(wù)。這意味著,如果應(yīng)用當(dāng)前狀態(tài)不符合后臺啟動服務(wù)的條件,調(diào)用 setForeground 時可能會拋出異常。

前臺服務(wù)啟動限制

https://developer.android.google.cn/about/versions/12/foreground-services

特殊場景

https://developer.android.google.cn/guide/components/foreground-services#background-start-restriction-exemptions

setForeground

https://developer.android.google.cn/reference/androidx/work/ListenableWorker#setForegroundAsync(androidx.work.ForegroundInfo)

異常

https://developer.android.google.cn/reference/android/app/ForegroundServiceStartNotAllowedException

因此,我們在 WorkManager 2.7 中做出了部分改進(jìn),使得應(yīng)用在遵守后臺限制的同時可以輕松地安排重要任務(wù)。通過加急任務(wù),應(yīng)用可以輕松地運行耗時短且高優(yōu)先級的任務(wù),例如發(fā)送一條聊天信息或者往社交網(wǎng)絡(luò)上傳一張圖片。推薦使用加急任務(wù)來啟動需要立即執(zhí)行且即使用戶將應(yīng)用放至后臺也能繼續(xù)執(zhí)行的任務(wù)。

加急任務(wù)

https://developer.android.google.cn/about/versions/12/foreground-services#expedited-jobs

如需設(shè)置加急任務(wù),可通過 WorkRequest 的 Builder 對象調(diào)用 setExpedited() 方法:

val request = OneTimeWorkRequestBuilder《HighPriorityWorker》() .setExpedited(OutOfQuotaPolicy.RUN_AS_NON_EXPEDITED_WORK_REQUEST) .build()WorkManager.getInstance(context).enqueue(request)

通過調(diào)用 setExpedited() 告訴框架該任務(wù)是重要的并且比其他任務(wù)具有更高的優(yōu)先級。請注意,我們在調(diào)用 setExpedited() 方法時傳入了 OutOfQuotaPolicy 參數(shù)。加急任務(wù)受基于應(yīng)用待機群組 (App Standby Buckets) 的配額限制,當(dāng)您的應(yīng)用嘗試在超出配額的情況下執(zhí)行加急任務(wù)時,WorkManager 會根據(jù) OutOfQuotaPolicy 參數(shù)做出相應(yīng)的行為: 完全放棄加急任務(wù)請求 (DROP_WORK_REQUEST),或者將該加急任務(wù)降級至普通任務(wù) (RUN_AS_NON_EXPEDITED_WORK_REQUEST)。加急任務(wù)很重要,但并不意味著它可以一直執(zhí)行,您需要將配額視為執(zhí)行加急任務(wù)的時間限制。

OutOfQuotaPolicy

https://developer.android.google.cn/reference/androidx/work/OutOfQuotaPolicy

應(yīng)用待機群組 (App Standby Buckets)

https://developer.android.google.cn/topic/performance/appstandby

WorkManager 2.7 是向后兼容的,可以在 Android 12 之前的系統(tǒng)上運行。當(dāng)在 Android 11 或之前版本的系統(tǒng)上調(diào)用 setExpedited() 時,WorkManager 將默認(rèn)使用前臺服務(wù)代替加急任務(wù)。

想了解 WorkManager 中 setExpedited() API 的實戰(zhàn),請參閱官方文檔:

WorkManager 示例

https://github.com/android/architecture-components-samples/tree/android-s/WorkManagerSample

加急任務(wù)

https://developer.android.google.cn/topic/libraries/architecture/workmanager/how-to/define-work#expedited-jobs

您可以在官方發(fā)布說明中查看 WorkManager 每個版本中變更及優(yōu)化的詳細(xì)列表,以及 WorkManager 2.6 和 WorkManager 2.7 的發(fā)布說明。

WorkManager 2.6

https://developer.android.google.cn/jetpack/androidx/releases/work#2.6.0

WorkManager 2.7

https://developer.android.google.cn/jetpack/androidx/releases/work#2.7.0

責(zé)任編輯:haq

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • Android
    +關(guān)注

    關(guān)注

    12

    文章

    4035

    瀏覽量

    134557
  • 服務(wù)器
    +關(guān)注

    關(guān)注

    14

    文章

    10371

    瀏覽量

    91774

原文標(biāo)題:在 Android 12 中使用 WorkManager

文章出處:【微信號:Google_Developers,微信公眾號:谷歌開發(fā)者】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    Quectel_SG560D(CPU QCM6490)Android 12 PN7150似乎不起作用,為什么?

    Quectel_SG560D(cpu QCM6490) Android 12+PN7150 似乎無法工作。 當(dāng)檢測NFC標(biāo)簽時,框架層發(fā)生崩潰。
    發(fā)表于 04-27 07:37

    Google正式發(fā)布LLM評測基準(zhǔn)Android Bench

    LLM 在 Android 開發(fā)任務(wù)的表現(xiàn)?,F(xiàn)在,我們發(fā)布了 Android Bench 的首個版本,這是 Google 官方專門針對 Android 開發(fā)打造的 LLM 排行榜。
    的頭像 發(fā)表于 03-14 16:00 ?1927次閱讀
    Google正式發(fā)布LLM評測基準(zhǔn)<b class='flag-5'>Android</b> Bench

    RK3399 Android12自動調(diào)節(jié)屏幕亮度問題排查與解決

    在嵌入式設(shè)備開發(fā),屏幕自動亮度調(diào)節(jié)功能直接影響用戶體驗與功耗控制。近期在 RK3399 芯片 + Android12 系統(tǒng)的設(shè)備上,遇到了自動亮度調(diào)節(jié)的異常問題 —— 系統(tǒng)自動調(diào)節(jié)時亮度最低只能
    的頭像 發(fā)表于 02-04 17:36 ?1907次閱讀
    RK3399 <b class='flag-5'>Android12</b>自動調(diào)節(jié)屏幕亮度問題排查與解決

    深入解析RK平臺Android/Linux Bootloader核心文件:android_bootloader.c

    Bootloader是Android設(shè)備啟動的第一道“關(guān)卡”,負(fù)責(zé)初始化硬件、加載系統(tǒng)鏡像并完成內(nèi)核啟動的前置準(zhǔn)備。在基于U-Boot的Android設(shè)備android
    的頭像 發(fā)表于 01-09 10:58 ?1466次閱讀
    深入解析RK平臺<b class='flag-5'>Android</b>/Linux Bootloader核心文件:<b class='flag-5'>android</b>_bootloader.c

    何在DGX Spark上運行NVIDIA Omniverse

    首先感謝 Vigor 同學(xué)第一時間的分享,以下是具體如何在 DGX Spark 上運行 Omniverse 的方法。
    的頭像 發(fā)表于 12-17 10:13 ?968次閱讀
    如<b class='flag-5'>何在</b>DGX Spark上<b class='flag-5'>運行</b>NVIDIA Omniverse

    何在VS code配置Zephyr集成開發(fā)環(huán)境

    上一篇文章介紹了如何在VS code中使用瑞薩官方插件為RA芯片創(chuàng)建項目與項目調(diào)試,相信大家對RA在VS code的開發(fā)有了基礎(chǔ)的了解。
    的頭像 發(fā)表于 11-05 14:46 ?1819次閱讀
    如<b class='flag-5'>何在</b>VS code<b class='flag-5'>中</b>配置Zephyr集成開發(fā)環(huán)境

    何在 buildroot 的 rootfs 顯示當(dāng)前目錄?

    何在 buildroot 的 rootfs 顯示當(dāng)前目錄?
    發(fā)表于 09-03 07:02

    何在裸機環(huán)境運行KleidiAI微內(nèi)核

    探索如何在裸機環(huán)境運行 KleidiAI 內(nèi)核,并通過測試多款 C/C++ 編譯器,以確定如何能更高效地生成代碼。
    的頭像 發(fā)表于 08-08 15:16 ?4034次閱讀
    如<b class='flag-5'>何在</b>裸機環(huán)境<b class='flag-5'>中</b><b class='flag-5'>運行</b>KleidiAI微內(nèi)核

    Android Studio的Gemini全面支持Dart和Flutter開發(fā)

    Android Studio 創(chuàng)建 Android 應(yīng)用的 Flutter 開發(fā)者將迎來一次重大的飛躍: Android Studio
    的頭像 發(fā)表于 08-06 13:52 ?1541次閱讀
    <b class='flag-5'>Android</b> Studio<b class='flag-5'>中</b>的Gemini全面支持Dart和Flutter開發(fā)

    Android 16更新亮點介紹

    應(yīng)用Android 用戶提供更新,以及 6 月份的 Pixel Drop。我們還總結(jié)了所有 Google I/O 的相關(guān)更新,幫助 Android 開發(fā)者構(gòu)建出色的自適應(yīng) Androi
    的頭像 發(fā)表于 07-05 11:37 ?3963次閱讀

    何在樹莓派上安裝并運行 Arduino 集成開發(fā)環(huán)境!

    ,我們將介紹如何在樹莓派上安裝并運行ArduinoIDE。所需物品要在樹莓派上運行ArduinoIDE,你需要以下組件:配備適當(dāng)電源的樹莓派4開發(fā)板HDMI顯示器或電
    的頭像 發(fā)表于 07-01 17:41 ?4607次閱讀
    如<b class='flag-5'>何在</b>樹莓派上安裝并<b class='flag-5'>運行</b> Arduino 集成開發(fā)環(huán)境!

    何在k230上運行OpenCV的代碼?

    何在k230上運行OpenCV的代碼
    發(fā)表于 06-17 06:06

    Android In Docker Magisk 的部署與簡單應(yīng)用指南

    Magisk—系統(tǒng)級“魔法面具”Magisk(MagicMask)是由開發(fā)者topjohnwu開發(fā)的開源Android框架,自2016年發(fā)布以來已成為最受歡迎的Android系統(tǒng)修改工具之一。其核心
    的頭像 發(fā)表于 05-28 16:42 ?2541次閱讀
    <b class='flag-5'>Android</b> In Docker <b class='flag-5'>中</b> Magisk 的部署與簡單應(yīng)用指南

    何在Android設(shè)備上安裝Cyusb3014芯片驅(qū)動?

    1.如何在Android設(shè)備上安裝Cyusb3014芯片驅(qū)動? 我們在 Windows 上有 FX3 驅(qū)動程序 SDK。 2.如何在Android系統(tǒng)上下載固件到芯片中?
    發(fā)表于 05-15 07:23

    Android Studio的Gemini支持多模態(tài)輸入功能

    在開發(fā)生命周期的每個階段,Android Studio 的 Gemini 都已成為您的 AI 助手,助您更輕松地構(gòu)建高質(zhì)量的應(yīng)用。我們很高興地與您分享一項重大升級:Android Studio
    的頭像 發(fā)表于 05-14 16:44 ?1310次閱讀
    扶风县| 海盐县| 长兴县| 原平市| 施甸县| 双鸭山市| 东乡族自治县| 淳化县| 上蔡县| 三穗县| 邢台市| 临沂市| 泉州市| 石河子市| 彝良县| 英山县| 旌德县| 德清县| 夏河县| 玛纳斯县| 苏尼特左旗| 扶绥县| 柳州市| 天柱县| 富蕴县| 微博| 肇源县| 孟村| 安龙县| 靖边县| 射洪县| 思南县| 武宁县| 台北市| 象州县| 合作市| 奎屯市| 梅河口市| 庆阳市| 北川| 汉沽区|