- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我目前正在从 Service 类扩展我的自定义服务实现。作为 Android-O 迁移的一部分,我想使用 JobIntentService。
目前我所有的逻辑都在服务的 onStartCommand 方法中。
但是,根据 JobIntentService,我应该为我的逻辑部分使用 onHandleWork 方法。
official documentation for JobIntentService说 onStartCommand 进程在作为 O 前服务运行时启动命令,将它们排入队列,稍后在 onHandleWork(Intent) 中分派(dispatch)。
所以,我的问题是我是否需要同时保留 onStartCommand 和 onHandleWork 方法,是否需要在这两种方法中编写相同的逻辑?
或
只需 onHandleWork 就可以吗?
请澄清。
最佳答案
Currenlty all my logic is in service's onStartCommand method.
那么不清楚您为什么要提供这项服务。您的服务需要创建一个后台线程,这意味着创建其他类(例如,Thread
、Runnable
的子类)。
do I need to keep both onStartCommand & onHandleWork methods & do I need to write the same logic in both of these methods?
如果您正在使用 JobIntentService
,则将所有内容都放在 onHandleWork()
中。这是 IntentService
中 onHandleIntent()
的直接模拟——它将在后台线程上调用,如果方法返回时没有更多工作要做,服务可以消失。
关于Android JobIntentService - onStartCommand 与 onHandleWork,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49173775/
我最近正在更新一个我正在使用 JobIntentService 而不是常规 IntentService 处理推送通知的应用程序,因为这似乎是处理此问题的正确方法在 Lollipop 之前的设备以及后期
我需要在我的应用程序运行时和启动时处理通过 AlarmManager 发布的 Intent 。我已经编写了 JobIntentService 的子类来处理 Intent ,但它没有按预期工作:没有调用
当使用 JobIntentService 时,我在使用 targetSDK 26 的 Android 8 上遇到了 SecurityException 崩溃。 这是来自 JobIntentServic
我目前正在从 Service 类扩展我的自定义服务实现。作为 Android-O 迁移的一部分,我想使用 JobIntentService。 目前我所有的逻辑都在服务的 onStartCommand
我有一个小部件。完成 SettingsActivity 从 Internet 加载数据并将其显示在 ListView 中。这适用于奥利奥之前和奥利奥设备。 但是以下两种行为不是由任何 Activity
我正在研究 Geofencing应用。 JobIntentService处理 GeofenceTransitions 的子类永远不会收到 Intent 。我每隔一分钟接收一次位置更新,然后创建一个新的
我是一名优秀的程序员,十分优秀!