Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/326.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 安卓服务赢得';t在安卓8.1上重启_Java_Android_Android Service - Fatal编程技术网

Java 安卓服务赢得';t在安卓8.1上重启

Java 安卓服务赢得';t在安卓8.1上重启,java,android,android-service,Java,Android,Android Service,我有一个扩展服务类的类。我从MainActivity启动服务,但在android 8.1上关闭应用程序后,服务不会重新启动 在我的服务类中,我有以下代码: @Override public int onStartCommand(Intent intent, int flags, int startId) { //some code return Service.START_STICKY; } 我的服务是这样开始的: MyService myService = new mySe

我有一个扩展服务类的类。我从MainActivity启动服务,但在android 8.1上关闭应用程序后,服务不会重新启动

在我的服务类中,我有以下代码:

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

//some code

    return Service.START_STICKY;
}
我的服务是这样开始的:

  MyService myService = new myService();

    final Intent seriviceIntent = new Intent(this, myService.getClass());

    if (!isMyServiceRunning(myService.getClass())) {

        new Thread(new Runnable() {
            @Override
            public void run() {
                this.startService(seriviceIntent);
            }
        }).start();

    }
    else {

        Log.e("service_log", "service is already running");
    }
我的清单文件中也有这个条目

在安卓7上运行良好,但在安卓8.1上不起作用


我已经尝试在没有线程或ui线程的情况下启动此服务,但两者都不起作用

从Oreo开始对服务有一些限制,因此您可能希望查看此指南以将服务迁移到Oreo:

看看这个博客: