Android 8.0 对特定函数做出了以下变更:
针对 Android 8.0 的应用,在不允许其创建后台服务的情况下使用 startService() 函数,则该函数将引发一个 IllegalStateException错误 。
解决办法有两个:
1、将startService()改为startForegroundService()方式启动,并且在server的代码中调用startForegroundService();这样就是把后台服务变成前台服务启动了。
2、在服务的mainfest文件中的application中加一个属性,present=true,这个属性就是让系统承认他是系统服务,于是就可以正常启动后台服务了(需要系统编译)。
在SystemUI中启动后台服务时出现APP in background in null uid
最新推荐文章于 2025-01-17 00:15:00 发布