扩展 IntentService 的类可以调用 startService() 重新启动吗?
public class testService extends IntentService{
public testService (String name){
super(name);
}
onHandleIntent(Intent intent){
startService(testService.class); //CAN YOU DO THIS?
}
扩展 IntentService 的类可以调用 startService() 重新启动吗?
public class testService extends IntentService{
public testService (String name){
super(name);
}
onHandleIntent(Intent intent){
startService(testService.class); //CAN YOU DO THIS?
}
我认为答案是“是”。
启动服务完全取决于您拥有的上下文类型(http://www.doubleencore.com/2013/06/context/)
IntentService 和常规 Service 之间的唯一区别是,它在完成后会自动杀死自己,并且还会生成一个后台线程,以便您可以进行长时间的操作(如网络)。
答案是肯定的。我对 longpoll 操作使用相同的模式。不会有任何堆栈溢出,因为从系统的角度来看,它不是递归。虽然最好在一段时间后使用 AlarmManager 重新启动服务以节省电力。