android - 当应用被用户杀死时,工作管理器不工作。为什么?
问题描述
我想执行一项任务,即使在使用工作管理器杀死应用程序之后也是如此。但是,应用程序被杀死后任务不会执行。
workManager = WorkManager.getInstance();
Constraints constraints = new Constraints.Builder().setRequiredNetworkType(NetworkType.CONNECTED).build();
OneTimeWorkRequest saveData = new OneTimeWorkRequest.Builder(SaveDataWorker.class).setConstraints(constraints).setInitialDelay(10,TimeUnit.SECONDS).build();
workManager.enqueue(saveData);
解决方案
我发现,工作经理取决于设备制造商。在我的情况下,它是一个 miui 设备,如果应用程序被杀死或重新启动,它不允许工作管理器工作。当我为应用程序提供“自动启动权限”时,工作经理开始工作。
推荐阅读
- c++ - 使用 JNI 挂钩 Java 函数
- c# - 在 C# 中使用“DefaultAudioEndpoint”以外的音频端点
- python - y 轴的动态范围(Plotly - Python)
- r - 在 ShinyApp 中使用 RadioButtons 在选定列中选择列的问题
- python - 由于部署中的空间问题,处理 docker 镜像 pull 失败
- java - 由于状态无效,无法为 Kafka 流打开存储
- javascript - 从现有文件在浏览器中打开 websql 数据库
- json - 使用 json 数据自动完成建议和搜索
- ios - 从 iOS 的下拉菜单中选择后,并非所有文本都显示
- html - Bootstrap 导航栏粘滞