我的 android 应用程序中有一个后台服务。其中一个线程正在侦听经常运行的最近任务。我的服务覆盖了onCreate()
和onStartCommand()
方法。当我试图打开一些应用程序,如Gallery
,Camera
等等......时,该服务将被停止。onCreate()
它只调用该方法而不是onDestroy()
或onStartCommand()
。我试图在此服务中覆盖 onLowMemory() 但它什么也不记录。通过指定在内部保存的应用程序
android:installLocation="internalOnly"
在清单文件中。
注意:这个问题在Micromax A54 2.3.5
.
为什么后台服务有时会停止?这个问题有什么解决办法吗?
public class MyService extends Service {
public MyService() {
}
@Override
public int onStartCommand(Intent intent, int flags, int startId) {
try {
if(intent != null){
//......
}
} catch (Throwable e) {
}
return START_STICKY;
}
@Override
public void onDestroy() {
super.onDestroy();
}
@Override
public void onCreate() {
super.onCreate();
//......
}
@Override
public IBinder onBind(Intent intent) {
return null;
}
}
并像这样启动服务
Intent intent = new Intent(getApplicationContext(), MyService.class);
getApplicationContext().startService(intent);