Android服务经常重启..为什么?

时间:2017-06-28 16:15:00

标签: android service

我做了一个简单的例子来测试一个不可杀戮的服务。我试图在被操作系统杀死后立即重启。

一切都运作良好。但是,我发现该服务有时会被操作系统频繁杀死,并在6.0以上的操作系统中重新启动。有时,在启动服务后30秒内调用onStartCommand。我不知道为什么。

6.0以下的操作系统运行良好。

我的代码很简单。

public class DataCollectorService extends Service {

public static BroadcastReceiver broadcastReceiver;
private Intent intent_data_processor;
private PendingIntent sender_data_processor;
private AlarmManager alarmMgr;
private  LocalBroadcastManager a_manager;
private String TAG = "DataCollectorService";

private DatabaseReference mFirebaseDatabaseReference;
private final IMyAidlInterface.Stub mBinder = new IMyAidlInterface.Stub() {

    public void basicTypes(int anInt, long aLong, boolean aBoolean,
                           float aFloat, double aDouble, String aString) {
        // Does nothing
    }
};

public DataCollectorService(Context applicationContext) {
    super();
    Log.i("HERE", "here I am!");
}

public DataCollectorService() {
}

@Override
public void onCreate() {
    super.onCreate();


}

@Override
public void onDestroy() {
    super.onDestroy();

    release();
}

@Override
protected void finalize() throws Throwable {
    super.finalize();

}

@Override
public int onStartCommand(Intent intent, int flags, int startId) {
    super.onStartCommand(intent, flags, startId);


    Log.e("TAG", "START");
    Log.e("TAG", "DataCollectorService onStartCommand");


    return START_STICKY;
}

@Override
public IBinder onBind(Intent arg0) {

    return mBinder;
}

@Override
public boolean onUnbind(Intent arg0) {

    return true;
}

@Override
public void onRebind(Intent arg0) {

}

然后我还在Manifest中设置了以下服务。 机器人:启用=“真” 机器人:导出= “假”

在启动后的几秒钟内重启服务的原因是什么?

0 个答案:

没有答案