{ "code": -112, "message": "Package is attempting to define a permission that is...

2026年07月23日 01:11 23.08 秒 success

错误信息

{ "code": -112, "message": "Package is attempting to define a permission that is already defined by another installed package", "fullMessage": "INSTALL_FAILED_DUPLICATE_PERMISSION: Package com.android.thememanager attempting to redeclare permission miui.permission.DUMP_CACHED_LOG already owned by com.miui.core", "location": "", "INSTALLING_PKG": "com.android.thememanager", "MANUFACTURER": "XIAOMI", "DEVICE_MODEL": "23043RP34C", "DEVICE_ABIS": "arm64-v8a,armeabi-v7a,armeabi", "OS_VERSION_CODE": 34, "APP_VERSION_NAME": "26.6.0", "VERSION": "APKZ.20260701.01.zh_cn", "SPI_READY": null, "MIUI_READY": false, "SZK_READY": true, "SOLUTION": "szk", "TRICHROME": [ 672308633, 787112833 ], "SPIV": 0, "GPS": 85233230, "GMS": 262662022, "UA": "Mozilla/5.0 (Linux; Android 14; 23043RP34C Build/UKQ1.240624.001; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/150.0.7871.124 Safari/537.36 Apkz/26.6.0" }

AI 解决方案

1. 🌐 错误翻译

原文:Package is attempting to define a permission that is already defined by another installed package
译文:软件包正试图定义一个权限,而该权限已被其他已安装软件包定义

原文:INSTALL_FAILED_DUPLICATE_PERMISSION: Package com.android.thememanager attempting to redeclare permission miui.permission.DUMP_CACHED_LOG already owned by com.miui.core
译文:INSTALL_FAILED_DUPLICATE_PERMISSION:软件包 com.android.thememanager 试图重新声明权限 miui.permission.DUMP_CACHED_LOG,该权限已被 com.miui.core 所有

2. 🎯 原因分析

  • 根本原因:Android系统权限重复定义冲突。应用 com.android.thememanager 在安装时尝试声明 miui.permission.DUMP_CACHED_LOG 权限,但该权限已被系统级应用 com.miui.core 提前声明并占用。

  • 具体位置:问题发生在APK安装阶段,系统检测到权限重复声明,阻止安装。

  • 上下文:在小米设备上,系统级权限由 com.miui.core 等核心应用独占,第三方应用不能重复定义同名权限,否则会导致安装失败。

3. 💡 解决方案

移除重复的权限声明:在 com.android.thememanagerAndroidManifest.xml 文件中删除重复的权限定义。

<!-- 错误示例:在Manifest中声明了重复权限 -->
<permission 
    android:name="miui.permission.DUMP_CACHED_LOG"
    android:protectionLevel="signature"/>

<!-- 正确做法:直接删除上述重复的权限声明节点 -->

如果确实需要使用该权限,应改为申请使用权限而非定义权限,确保与系统权限声明不冲突:

<!-- 正确示例:只申请使用该权限,不重复定义 -->
<uses-permission android:name="miui.permission.DUMP_CACHED_LOG"/>

4. 🛡️ 预防措施

  • 权限定义规范:自定义权限时,先全局检索确认权限名称未被系统或其他已安装应用使用,避免命名重复;优先采用应用专属前缀命名(如 com.yourpackage.xxx)。

  • 系统权限核查:集成系统级权限前,查阅目标设备的官方权限清单,明确系统独占权限,切勿擅自重复定义;使用 adb shell pm list permissions 命令检查系统中已存在的权限定义。

  • 开发阶段检查:借助Android Studio的Manifest检查工具,自动扫描权限冲突,提前发现重复定义问题,避免进入安装阶段才发现报错。