我做了一个远程服务,这个服务是由我的activity第一次启动时启动的,之后,activity总是查看服务是否启动以避免再次启动它。
该服务在 onCreate 函数中运行一些方法。该服务始终运行并在启动时启动。
问题(不是大问题,但我想知道为什么)是一旦创建了服务,如果我停止我的活动,就会调用 onTaskRemoved,这是正确的,但是几秒钟后,再次调用 oncreate 方法并启动服务再次。
知道为什么吗?我该如何控制呢?
<service
android:name=".Service"
android:icon="@drawable/ic_launcher"
android:label="@string/service_name"
android:process=":update_process" >
</service>
AndroidManifest.xml
if (!isRunning()) {
Intent service = new Intent(this, UpdateService.class);
startService(service);
} else {
//Just to debug, comment it later
Toast.makeText(this, "Service was running", Toast.LENGTH_SHORT).show();
}
如果服务未运行,则启动该服务的时间