Android杀了我的服务

时间:2016-02-21 02:40:05

标签: android android-service

我有一个Android服务。 代码:

public class MyService extends Service {

 @Override
public void onCreate() {
....
}

@Override
public IBinder onBind(Intent intent) {
    return null;
}


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

    return START_STICKY;
}

在MainActivity中 - 进入OnCreate()我使用以下代码:

startService(new Intent(this, BluetoothLeService.class));

服务工作正常,但是当我打开更多应用程序时,安卓会杀死它。我试过

  • START_STICKY 但是当android的内存不足时,它不起作用。 有一个解决方案吗? Mmh的.. 我已在清单中注册了服务:

        <service android:name=".MyService"
        android:enabled="true"/>
    

...我试图在清单中添加android:process,但是没有效果。 我希望保持我的服务运行。对我来说是最重要的。

当我打开我的应用程序时,我启动服务并杀死(仅限应用程序),但服务正常工作。问题是Android OS终止了我的服务。

(我只使用我的应用程序启动MyService)

抱歉我的英文。拜托,有人帮帮我吗?谢谢!

1 个答案:

答案 0 :(得分:0)

这是一个可以帮助您的服务生存的技巧

@Override
    public void onDestroy() {

        startService(new Intent(MyService.this, MyService.class));

        super.onDestroy();
}