注意:这不是询问是否要将数据编组到Intent中,然后为这些数据派生IntentService的特定具体实现。
所以我的标准IntentService实现工作正常,但我感兴趣的是如果我可以将更通用的类型(例如网络Runnables,I / O任务Callables等)传递给IntentService并让它运行它的路线。
虽然我知道Java并发包(尤其是ExecutorService)已经可以实现,但我喜欢IntentService的易用性以及相关的框架,这对于高度分离的Android任务非常理想。
答案 0 :(得分:3)
所以我的标准IntentService实现工作正常 但我很感兴趣,如果说我可以传递更通用的类型(例如网络 Runnables,I / O任务Callables等)到IntentService并让它 坚持到底。 p>
你无法通过它。您可以创建一个Factory
,它创建Runnable / Callable的子类,并根据您在intent
中提供的操作,请Factory
构建具体实例,然后拨打instance.run()
或instance.call()
。 E.g。
public void onHandleIntent(Intent intent) {
YourFactory.create(intent.getAction()).run();
}