android 15升级适配无法安装运行,并且提示应用未安装

最近升级项目到android15,一开始遇到这个报错,以为是广播的问题,因为当时在Log中发现这个的报错

  • One of RECEIVER_EXPORTED or RECEIVER_NOT_EXPORTED should be

这条报错的解决方案依据 google开发者android14 关于这条的 原文:

  • Apps and services that target Android 14 and use context-registered receivers are required to specify a flag to indicate whether or not the receiver should be exported to all other apps on the device: either RECEIVER_EXPORTED or RECEIVER_NOT_EXPORTED, respectively. This requirement helps protect apps from security vulnerabilities by leveraging the features for these receivers introduced in Android 13.

但是之前升级不在主分支上,那个分支解决后切换主分支后安装run 日志模块中又报这个日志

-Exception occurred while executing 'start':

java.lang.SecurityException: Permission Denial: starting Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10000000 cmp=com.asus.rogforum/com.zhiyicx.thinksnsplus.modules.guide.GuideActivity } from null (pid=15320, uid=2000) not exported from uid 10219

at com.android.server.wm.ActivityTaskSupervisor.checkStartAnyActivityPermission(ActivityTaskSupervisor.java:1270)

at com.android.server.wm.ActivityStarter.executeRequest(ActivityStarter.java:1266)

at com.android.server.wm.ActivityStarter.execute(ActivityStarter.java:901)

at com.android.server.wm.ActivityTaskManagerService.startActivityAsUser(ActivityTaskManagerService.java:1401)

at com.android.server.wm.ActivityTaskManagerService.startActivityAsUser(ActivityTaskManagerService.java:1346)

at com.android.server.am.ActivityManagerService.startActivityAsUserWithFeature(ActivityManagerService.java:3532)

at com.android.server.am.ActivityManagerShellCommand.runStartActivity(ActivityManagerShellCommand.java:800)

at com.android.server.am.ActivityManagerShellCommand.onCommand(ActivityManagerShellCommand.java:246)

at com.android.modules.utils.BasicShellCommandHandler.exec(BasicShellCommandHandler.java:97)

at android.os.ShellCommand.exec(ShellCommand.java:38)

at com.android.server.am.ActivityManagerService.onShellCommand(ActivityManagerService.java:10971)

at android.os.Binder.shellCommand(Binder.java:1230)

at android.os.Binder.onTransact(Binder.java:1043)

at android.app.IActivityManager$Stub.onTransact(IActivityManager.java:5785)

at com.android.server.am.ActivityManagerService.onTransact(ActivityManagerService.java:2962)

at android.os.Binder.execTransactInternal(Binder.java:1505)

at android.os.Binder.execTransact(Binder.java:1444)

然后我找到主界面偶然看到exported 为false,改为true后尝试运行了一下,纳尼,竟然成功安装了,以后还是得仔细看日志啊,里面关键信息 not exported from 是 要敲脑袋得

相关推荐
牛奔1 小时前
Go 如何避免频繁抢占?
开发语言·后端·golang
寻星探路5 小时前
【深度长文】万字攻克网络原理:从 HTTP 报文解构到 HTTPS 终极加密逻辑
java·开发语言·网络·python·http·ai·https
工程师老罗6 小时前
如何在Android工程中配置NDK版本
android
lly2024067 小时前
Bootstrap 警告框
开发语言
2601_949146537 小时前
C语言语音通知接口接入教程:如何使用C语言直接调用语音预警API
c语言·开发语言
曹牧7 小时前
Spring Boot:如何测试Java Controller中的POST请求?
java·开发语言
KYGALYX7 小时前
服务异步通信
开发语言·后端·微服务·ruby
zmzb01037 小时前
C++课后习题训练记录Day98
开发语言·c++
ValhallaCoder8 小时前
hot100-二叉树I
数据结构·python·算法·二叉树
猫头虎8 小时前
如何排查并解决项目启动时报错Error encountered while processing: java.io.IOException: closed 的问题
java·开发语言·jvm·spring boot·python·开源·maven