Android TV 14自定义ROM安装APK报错INSTALL_FAILED_SHARED_USER_INCOMPATIBLE求助
推测正确性确认
你的推测完全正确。这个报错的核心逻辑是:该APK在配置里声明了要共享android.uid.system这个系统级用户ID,而Android的安全机制要求,所有共享同一个UID的应用必须使用完全一致的签名证书来签名。你当前用的自定义Android TV ROM,和这款APK的签名证书不匹配,且你没有对应的私有证书,直接导致安装时的签名校验失败。
可行解决办法
反编译修改APK的UID声明
用APK反编译工具解开APK,找到AndroidManifest.xml里的android:sharedUserId="android.uid.system"行,直接删除或者改成普通的自定义UID(比如com.xxx.app.uid),之后用自己生成的证书重新给APK签名。注意:如果这款APK原本依赖系统级权限或和其他系统应用有绑定交互,修改后可能出现功能失效的情况。ROOT后用框架绕过签名校验
如果你的树莓派Android TV ROM已经获取ROOT权限,可以安装LSPosed框架,再搭配签名校验绕过类模块,这类模块能强制让系统跳过共享UID的签名校验步骤。但要注意,ROOT会带来一定安全风险,也可能影响系统稳定性。寻找适配版本
去APKMirror等渠道查找该APK的通用版本(即没有声明android.uid.system的版本),或者找其他用户针对这款自定义ROM适配修改过的版本。替换ROM签名证书(不推荐,门槛极高)
如果你能拿到该APK的签名证书,可以重新编译自定义ROM,用这个证书给整个ROM签名。但这个操作需要掌握Android源码编译的完整流程,且你没有对应证书的话这条路直接走不通。
内容的提问来源于stack exchange,提问作者Kiran

