ADB命令列出使用WorkManager的所有已安排工作

11

是否有一种 adb shell (dumpsys) 命令可以提供所有使用 workmanager-PeriodicWorkRequest 调度的任务的详细信息?

基本上我有一个计划任务,应该每天运行。如何通过 adb 获取下一个任务的运行时间。

adb shell dumpsys alarm package.name 是否会列出我使用 workmanager 调度的任务?


https://developer.android.com/topic/libraries/architecture/workmanager/how-to/states-and-observation#observing - pskink
我知道,我想使用adb获取信息,以便我可以查看是否已正确安排。 - Rinav
所以重写dump方法,就像这里一样,并转储您的WorkInfo对象。 - pskink
有趣,我会尝试并看看是否能得到我想要的。 - Rinav
2个回答

10

考虑到WorkManager将所有WorkRequest存储在Room数据库中,您最好检索该数据库并查看其中的内容。

对于adb,据我所知,您最好使用JobScheduler可用的内容(WorkManager用于API Level 23+设备):

adb shell dumpsys jobscheduler

如此回答 这里

2020年1月更新 现在官方文档中提供了更多关于如何调试WorkManager的信息:调试WorkManager


4

清空你的Logcat。打开终端。运行 adb shell am broadcast -a "androidx.work.diagnostics.REQUEST_DIAGNOSTICS" -p "<your_app_package_name>" 命令。再次检查logcat。这样应该可以解决问题。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接