我最近正在更新一个应用程序,我使用JobIntentService而不是常规的IntentService处理来自push的通知,因为它似乎是在棒棒糖前设备和帖子上处理此问题的正确方法.我这样排队工作:
JobIntentService
这是清单声明:
IntentService
我从未在onHandleWork中看到任何回调或在我的logcat中看到任何错误日志.是否有人成功整合了这可能有所帮助?
更新:我在api level 21设备上测试了它并且它工作..但它似乎没有在我的android O像素XL设备上调用..任何线索为什么?
更新#2:我似乎也看到了intentservice的onCreate被调用,但没有其他生命周期方法(包括onHandleWork).有人遇到过这个吗?
由于Android Oreo后台执行限制,因此文档建议将IntentServices 重构为JobIntentService。
https://developer.android.com/about/versions/oreo/background
JobIntentService立即以IntentService低于Oreo的价格运行,但在Oreo +上安排作业
https://developer.android.com/reference/android/support/v4/app/JobIntentService
在什么情况下,将法线IntentService作为Service具有持久性通知的前台会有意义,什么时候JobIntentService更好?
我可以看到的一个缺点JobIntentService是它不会立即开始。
android android-service intentservice android-intentservice android-jobscheduler