Android 升级targetSdk无法启动服务
闲着没事,直接升级了targetSdk到35,发现无法启动服务特此记录一下。
先上解决办法:
1.onResume之后调用启动服务(表现为onCreate函数不调用)
2.注册广播registerReceiver(mIntentReceiver, filter, Context.RECEIVER_NOT_EXPORTED);
当然不同的需要Context.RECEIVER_EXPORTED
(表现为执行不完onCreate,
==============以下是记录下过程=============
偶然app提示sdk版本过低,直接升级到35。
解决文件权限后,发现音乐服务启动不了。
我暂时只有两个手机一个安卓11(30),一个安卓15(35)。
经过一系列改动,30版本的能启动,35的不能。
targetSdk一个一个的改,发现30才行.....
先找了这个升级助手(Launch Android SDK Upgrade Assistant
我这里直接写我的结果
31 应该是启动前台服务 | Background work | Android Developers
不允许后台启动,也就是必须onResume之后调用,onCreate应该是不行的。
直接到33都可以了。
34 注册广播(假装)报错了(除了编辑器是黄色的几乎没有提示) registerReceiver(mIntentReceiver, filter, Context.RECEIVER_NOT_EXPORTED);
广播概览 | Background work | Android Developers