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

相关推荐
2301_7717172110 小时前
解决mysql报错:1406, Data too long for column
android·数据库·mysql
dvjr cloi10 小时前
MySQL Workbench菜单汉化为中文
android·数据库·mysql
随遇丿而安13 小时前
第2周:`EditText` 不只是输入框,它是 Android 输入体验的第一道门
android
我命由我1234513 小时前
Kotlin 开发 - lateinit 关键字
android·java·开发语言·kotlin·android studio·android-studio·android runtime
一起搞IT吧13 小时前
Android性能系列专题理论之十:systrace/perfetto相关指标知识点细节含义总结
android·嵌入式硬件·智能手机·性能优化
小书房18 小时前
Kotlin的by
android·开发语言·kotlin·委托·by
jinanwuhuaguo18 小时前
(第二十八篇)OpenClaw成本与感知的奇点——从“Token封建制”到“全民养虾”的本体论地基
android·人工智能·kotlin·拓扑学·openclaw
xxjj998a19 小时前
Laravel4.x核心特性全解析
android·mysql·laravel
JoshRen19 小时前
2026教程:在Android Termux中集成Gemini 3镜像站实现移动端文档自动处理与摘要生成(附国内免费方案)
android
诸神黄昏EX20 小时前
Android Google KEY
android