美文网首页
Android启动Service系统适配演进

Android启动Service系统适配演进

作者: lllllittlep | 来源:发表于2020-02-27 10:54 被阅读0次

    Android8.0

    后台服务限制:处于空闲状态时,应用可以使用的后台服务存在限制。 这些限制不适用于前台服务,因为前台服务更容易引起用户注意。

    这个限制是:

    Google在Android 8.0之后对于处于后台的App启动Service进行了严格的限制,不再允许后台App启动后台Service,如果使用会直接抛出异常

    所以在启动服务得时候应

    Intent intentService = new Intent(this, MyService.class);

    if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.O) {

        startForegroundService(intentService);

    } else {

        startService(intentService);

    }

    Android9.0

    因为适配Andorid8.0启动服务使用了前台服务

    9.0 要求创建一个前台服务需要请求 FOREGROUND_SERVICE 权限,否则系统会引发 SecurityException。

    解决方法就是AndroidManifest.xml中添加FOREGROUND_SERVICE权限:

    <uses-permissionandroid:name="android.permission.FOREGROUND_SERVICE"/>

    参考文章:

    https://weilu.blog.csdn.net/article/details/80965631

    https://weilu.blog.csdn.net/article/details/98336225

    相关文章

      网友评论

          本文标题:Android启动Service系统适配演进

          本文链接:https://www.haomeiwen.com/subject/bxcthhtx.html