当我关闭应用程序时,android服务停止并再次创建
我正在开发一个应用程序,我已经在其中实现了该服务。但是当我退出应用程序时,服务停止(但从未调用过当我关闭应用程序时,android服务停止并再次创建,android,service,oncreate,Android,Service,Oncreate,我正在开发一个应用程序,我已经在其中实现了该服务。但是当我退出应用程序时,服务停止(但从未调用过onDestroy()),然后再次启动(OnCreate()调用) 实际上,我不想在创建服务后停止它,不管应用程序的状态如何。 由于再次调用服务onCreate(),该服务将丢失先前处理的数据。我已尝试START\u STICKY,但没有成功 那么,我如何保持我的服务运行 这是我的服务代码 public class ddservice extends Service{ public void onC
onDestroy()
),然后再次启动(OnCreate()
调用)
实际上,我不想在创建服务后停止它,不管应用程序的状态如何。
由于再次调用服务onCreate()
,该服务将丢失先前处理的数据。我已尝试START\u STICKY
,但没有成功
那么,我如何保持我的服务运行
这是我的服务代码
public class ddservice extends Service{
public void onCreate() {
super.onCreate();
Log.e("dservice", "onCreate");
/*here i am processing some important data in
background thread*/
}
@Override
public void onDestroy() {
super.onDestroy();
Log.e("ddservice", "onDestroy");
}
@Override
public void onStart(Intent intent, int startid) {
super.onStart(intent, startid);
Log.e("ddservice", "onStart");
}
public int onStartCommand(Intent intent, int flags, int startId) {
super.onStartCommand(intent, flags, startId);
Log.e("ddservice", "onStartCommand");
return START_STICKY;
}
@Override
public IBinder onBind(Intent intent) {
return null;
}
}//service class ends here
我从mainActivity开始这项服务
startService(new Intent(this, ddservice.class));
您应该以前台
服务的形式启动服务。启动前台(int,Notification)
您可以添加用于启动服务的代码吗?@Tapirboy:请查看编辑后的问题。嗯。。可能有关联吗?已通过重新启动ADB解决,而模拟器或重新启动ADB不起作用。@Tapirboy:感谢您的Web链接,在单独的进程中运行服务解决了我的问题。我实现了该服务。startForeground(int,Notification)但导致了相同的问题。我将代码放在onStart()中<代码>onStart自API级别5以来已弃用,不再调用。你应该把它放在onCreate中,我把它放在onCreate()中,但问题是一样的。