Android 8.0 不再允许后台service直接通过startService方式去启动,否则就会引起IllegalStateException8.0要做出如下修改if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {Intent intent = new Intent(getApplicationContext(), TimerService.class);startForegroundService(intent);
} else {Intent intent = new Intent(getApplicationContext(), TimerService.class);startService(intent);
}

在Service的onCreate函数内

public static final String CHANNEL_ID_STRING = "service_01";

NotificationManager notificationManager = (NotificationManager) MyApplication.getInstance().getSystemService(Context.NOTIFICATION_SERVICE); NotificationChannel mChannel = null; if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.O) { mChannel = new NotificationChannel(CHANNEL_ID_STRING,getString(R.string.app_name), NotificationManager.IMPORTANCE_LOW); notificationManager.createNotificationChannel(mChannel); Notification notification = new Notification.Builder(getApplicationContext(), CHANNEL_ID_STRING).build(); startForeground(1, notification);

}

使用这种方法启动的service,在状态栏里面会出现一个xxx正在运行的标志。

奇怪的是,小米的10.0的手机没有这个bug,目前只在华为HuaWei/EMOTION发现这个bug,不晓得什么情况

Android 关于8.0的Service问题(Not allowed to start service Intent)相关推荐

  1. Android系统8.0及以上开启Service必须创建显示“XX应用正在运行”通知问题处理

    背景: Android系统8.0及以上,开启Service必须使用startForegroundService(Intent intent)方法,对应的Service则必须设置startForegro ...

  2. Android 8.0 启动后台service 出错 IllegalStateException: Not allowed to start service Intent

    安卓8.0手机线上报错: java.lang.IllegalStateException:Fatal Exception thrown on Scheduler. 2 io.reactivex.and ...

  3. 【Android】3.0 第3章 百度地图及其应用--预备知识

    分类:C#.Android.VS2015.百度地图应用: 创建日期:2016-02-04 一.概述 这一章先来点有意思的百度地图应用示例,然后再分章详细介绍用C#开发Android App的各种基本技 ...

  4. Android复习10【Service与Thread的区别、Service的生命周期、Service生命周期解析(相关方法详解、启动方式的不同、绑定)、音乐播放器+服务】

    音乐播放器Android代码下载:https://wws.lanzous.com/ifqzihaxvij 目   录 Service与Thread的区别 Service的生命周期 Service生命周 ...

  5. 神经网络API、Kotlin支持,那些你必须了解的Android 8.1预览版和Android Studio 3.0新特性

    曾仅用 55 秒发布会的 Android 8.0 Oreo 在时隔两个月后,Google 于今天在其官方网站上正式发布了 Android 8.1 首个开发者预览版,此次升级涵盖了针对多个功能的提升优化 ...

  6. ym——物联网入口之中的一个Android蓝牙4.0

    转载请注明本文出自Cym的博客(http://blog.csdn.net/cym492224103),谢谢支持! 假设还有同学不知道蓝牙4.0能够做什么请查看Android+蓝牙 4.0 将带来什么? ...

  7. ym——物联网入口之一Android蓝牙4.0

    转载请注明本文出自Cym的博客(http://blog.csdn.net/cym492224103),谢谢支持! 如果还有同学不知道蓝牙4.0可以做什么请查看Android+蓝牙 4.0 将带来什么? ...

  8. Android Retrofit 2.0(三)从源码分析原理

    Retrofit·特点 性能最好,处理最快 使用REST API时非常方便: 传输层默认就使用OkHttp: 支持NIO: 拥有出色的API文档和社区支持 速度上比volley更快: 如果你的应用程序 ...

  9. Android SDK 1.0 Chn.

    from www.androidin.com Android SDK 中文1.0 版本 目录 来源:... 4 SDK 内容... 5 什么是 Android?. 5 特性... 5 Android ...

  10. android蓝牙4.0 BLE低功耗应用

    转自    http://www.cnblogs.com/zdz8207/archive/2012/10/17/bluetooth_ble_android.html 谈谈几个月以来开发android蓝 ...

最新文章

  1. MongoDB命令及SQL语法对比
  2. flume-elasticsearch-sink indexName
  3. C++中set和map的erase用法
  4. ​迷“铺地砖”的数学家
  5. 解决:Error response from daemon: manifest for xxx:latest not found: manifest unknown...
  6. X 射线成像 新型数字技术 —— CMOS 探测器
  7. SpringBoot整合JavaMail---发送邮件
  8. vs2013下载安装
  9. 大一c语言程序考试常考程序题,大一c语言考试试题[1]
  10. Git同时配置github和gitee
  11. Jlink V8 在 Keil MDK5.25 中无法正常烧写、调试程序的故障处理
  12. 对《人工智能的进化》这一人工智能方面科普书籍的学习/摘抄/总结
  13. Markdown中如何实现内容折叠操作
  14. 《炬丰科技-半导体工艺》 硅光电子器件上的单片砷化铟量子点
  15. SpringBoot(45) 实现快递物流查询(阿里云)
  16. 米的换算单位和公式_毫米和米的换算
  17. 求最大公约数与最小公倍数(C语言)
  18. ORACLE RAC停止和启动
  19. 高校制作VR全景费用了解一下?
  20. 《数据库系统概念》第六版官方英文答案

热门文章

  1. EuroGraphics 2023的见闻和思考
  2. 链表插入操作的时间复杂度真的是O(1)吗?
  3. 解决PPT输入、删除卡顿现象(以Office2010为例)
  4. Cocos2d开发系列 一
  5. 用定时器实现一个闹钟
  6. 【论文解读】用于白内障分级/分类的机器学习技术
  7. 美联储加息放缓美元大跌金价飙升
  8. Something about Software Engineering
  9. SpeedReader for Mac(快速阅读器)
  10. 湖北武汉资料员培训资料员的工作内容划分建筑七大员培训