为什么服务可能会在android中停止的原因

时间:2018-07-05 18:58:41

标签: android service android-service bootcompleted

如果我有一个没有任何活动的应用程序,则只有一个BOOT_COMPLETED广播接收器和最简单的服务。接收方将仅启动该服务,该服务将仅运行以下代码:

public class ScreenStateService extends Service {

    @Override
    public IBinder onBind(Intent arg0) {
        // TODO Auto-generated method stub
        return null;
    }

    @Override
    public int onStartCommand(Intent intent, int flags, int startId) {
        return START_STICKY;
    }

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

}

据我了解,该服务将一直运行到时间结束或出现以下情况之一:

  1. 内存不足:系统内存不足,因此决定停止服务。
  2. ANR
  3. 用户手动停止应用程序或将其禁用。

在1和2中,在内存不再不足或处理了错误之后,系统将再次启动服务。如果是3,则不会再次启动。

问题是:以上权利吗?还有其他情况会导致外部源停止服务吗?请指定是否可以自动重新启动。

0 个答案:

没有答案