Java Android-每次我运行我的应用程序时,服务都会自动启动,尽管我停止了它
我有一个服务,只有在应用程序未运行时才能运行。我在用户关闭应用程序时启动它,在用户打开应用程序时停止它。 当我安装应用程序时,如果我关闭应用程序,服务会立即启动,这没关系。当我打开应用程序时,服务停止(我可以从调用的服务中看到onDestroy方法),但会立即自动重新启动,无需任何指示 在我的AndroidManifest.xml中,我有:Java Android-每次我运行我的应用程序时,服务都会自动启动,尽管我停止了它,java,android,mobile,service,Java,Android,Mobile,Service,我有一个服务,只有在应用程序未运行时才能运行。我在用户关闭应用程序时启动它,在用户打开应用程序时停止它。 当我安装应用程序时,如果我关闭应用程序,服务会立即启动,这没关系。当我打开应用程序时,服务停止(我可以从调用的服务中看到onDestroy方法),但会立即自动重新启动,无需任何指示 在我的AndroidManifest.xml中,我有: <receiver android:name=".BootReceiver" android:exported="false"> <in
<receiver android:name=".BootReceiver" android:exported="false">
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED" />
<category android:name="android.intent.category.HOME" />
</intent-filter>
</receiver>
<service android:enabled="true" android:name=".MyService" />
诚恳地说,如果我停止服务,我无法理解为什么服务会自动启动。每次打开应用程序时,都会在创建时运行。即使我在启动应用程序时停止服务?如果服务被终止,start\u STICKY将尝试以空意图重新创建服务。是的,但使用start\u NOT\u STICKY我也有同样的问题。
public class MyService extends Service {
Thread _thisThread=null;
@Override
public IBinder onBind(Intent intent) {
return null;
}
@Override
public void onCreate() {
//code to execute when the service is first created
}
@Override
public void onDestroy() {
//code to execute when the service is shutting down
Log.v("App","MyService - OnDestroy method called");
}
@Override
public int onStartCommand(Intent intent, int flags, int startId) {
Log.v("App","MyService - onStartCommand");
//return Service.START_NOT_STICKY;
return Service.START_STICKY;
}