gpt4 book ai didi

Android - 应用程序关闭后,AlarmManager 不工作

转载 作者:行者123 更新时间:2023-12-03 15:54:04 25 4
gpt4 key购买 nike

我正在使用 AlarmManager在特定时间调用函数。它在 Genymotion Emulator 中成功运行,但在 Redmi、Honor 等真实设备中却没有。这是代码。

     Intent intent = new Intent(CreateContact.this, DeleteContactReceiver.class);
intent.putExtra("name", name.getText().toString());
intent.putExtra("phone", phoneNumber.getText().toString());
PendingIntent pendingIntent = PendingIntent.getBroadcast(
getApplicationContext(), (int) System.currentTimeMillis(), intent, 0);
AlarmManager alarmManager = (AlarmManager) getSystemService(ALARM_SERVICE);
alarmManager.set(AlarmManager.RTC_WAKEUP, System.currentTimeMillis()
+ (selected * 60000), pendingIntent);
min SDK版本是 21 .
编辑:我尝试使用 setAndAllowWhileIdle但它仍然无法正常工作。
有什么建议么?

最佳答案

改用 androidx WorkManager图书馆,是所有调度服务的替代品。

The WorkManager API is a suitable and recommended replacement for all previous Android background scheduling APIs


https://developer.android.com/topic/libraries/architecture/workmanager
什么 WorkManager做的就是把现有的调度服务都封装起来,根据可用的、API级别等使用最合适的一个,甚至 处理兼容性问题和系统错误 .
部分教程:
https://medium.com/androiddevelopers/introducing-workmanager-2083bcfc4712
https://www.programmersought.com/article/82731596284/
https://medium.com/swlh/periodic-tasks-with-android-workmanager-c901dd9ba7bc

关于Android - 应用程序关闭后,AlarmManager 不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64186458/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com