我对Android中的IntentService有疑问。我定义了自己的服务如下:
公共类ABC扩展IntentService实现SensorEventListener {
@覆盖 protected void onHandleIntent(Intent intent){}
@覆盖 public void onSensorChanged(SensorEvent event){} }
现在,如果我从其他活动启动服务,则调用onHandleIntent()。文档说它启动了一个工作线程来处理请求。但是,当调用onSensorChanged()方法时,哪个线程将执行onSensorChanged()方法中定义的代码。它是工作线程还是主应用程序线程???
答案 0 :(得分:3)
根据IntentService source code,当IntentServices不再有任何消息(stopSelf
调用)时,它会自行停止。因此,如果您想要长时间运行Service
(我认为这适合您的SensorEventListener
),那么您应该使用常规Service
。