问题标签 [android-workmanager]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
android - 如何在 Android 上进行不可阻挡的每日重复动作?
我怎样才能做每天重复而不被停止的不可阻挡的动作(检查没有 UI 的背景)?例如:每天在某个时间检查明天是否是格鲁吉亚日历月的偶数。
注意:我已经尝试过 alarmManger.setRepeating & WorkManagers 这样做,但一天或两天后它停止运行,我必须重新打开应用程序才能让它再次工作!
此问题发生在 Android Oreo (8) 及更高版本。
android - Android WorkManager 与 JobScheduler
如果我们已经有一个JobScheduler以及一些具有相同功能的漂亮反向端口( AndroidJob和FirebaseJobDispatcher ),为什么我们还需要新的 Android WorkManager ?它有什么杀手级功能吗?因为我没有看到任何让我想迁移到另一个调度程序的东西。
android - 如何使用 WorkManager 安排通知?
我想在每次用户在数据库中添加特定时间的注释时安排通知。虽然使用 AlarmManager、BroadcastReceiver 等有多种方法可以做到这一点。如何使用 WorkManager 做到这一点?
java - Android 工作管理器与服务?
在我的 Android 应用程序中,我有多个意图服务,它们一个接一个地运行,第一个意图服务是由广播触发的。几天前我遇到了Work Manager ,非常喜欢 Worker 和 WorkManager 类的简单性。与常规意图服务相比,Work Manager 的优缺点是什么?考虑到我将来可能需要编写更多的意图服务,我现在应该切换到工作经理吗?还有哪个选项可以帮助我轻松测试代码?
android - 使用 WorkManager 的定期日常工作请求
如何正确使用WorkManager
Android Jetpack 中的新功能来安排每天一次的定期工作,该工作应该每天并且恰好一次执行一些操作?
想法是检查具有给定标签的工作是否已经存在WorkManager
,否则开始新的定期工作。
我尝试使用下一种方法来做到这一点:
但value
始终为空,即使我在Worker
'doWork()
方法中放置了一个断点(所以它肯定在进行中)并从另一个线程检查工作状态。
android - Android Jetpack WorkManager 数据保留政策
我想使用新的 WorkManager 来替换电话遥测发送器的服务实现(与 Android O 抱怨)。现在它本质上是一个绑定服务,它尝试实时发送遥测数据,但如果网络出现故障,它会将记录保存到数据库中,稍后在网络恢复时将其重播到服务器。几乎是 WorkManager 可以使用约束完成的定义。
我遇到的麻烦是安全问题之一。我的数据库是加密的,当用户注销或要求擦除他们的数据时,它也会被完全擦除。WorkManager 由 Room db 支持,并以明文形式存储所有有效负载数据。更糟糕的是,他们似乎没有公开随心所欲地删除这些记录的能力。相反,他们提供取消,实际上只是将列状态设置为 CANCELLED。我找不到可以解释克服此问题的方法的文档或代码路径。有没有人有机会探索图书馆?也许我错过了一些东西。
谢谢
android - 使用 WorkManager 在特定时间安排工作
WorkManager 是一个用于将保证在满足其约束后执行的工作排入队列的库。
因此,在学习了Constraints类之后,我没有找到任何可以为工作添加时间限制的函数。例如,我想在早上 8:00 开始工作(工作可以是OneTimeWorkRequest或PeriodicWorkRequest两种类型中的任何一种)。如何添加约束以使用 WorkManager 安排这项工作。
android - 通过 Data 类发送类对象
Android 最近引入了WorkManager用于调度任务。此WorkManager的强大功能之一是通过combine、then和beginWith运算符链接多个任务。数据类用于在这些任务之间发送数据。但是在经历了Data和Data.Builder类之后,我还没有找到通过Data类在不同任务之间发送 Class 对象的方法,甚至没有通过Serializable或Parcelable。如何在不同任务之间发送类对象?
android - Android WorkManager 中的异步 Worker
谷歌最近宣布了新的WorkManager
架构组件。doWork()
通过在课堂上实现可以很容易地安排同步工作Worker
,但是如果我想在后台做一些异步工作怎么办?例如,我想使用 Retrofit 进行网络服务调用。我知道我可以发出同步网络请求,但它会阻塞线程并且感觉不对。是否有任何解决方案,或者目前不支持?