You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Android Studio4.2.2搭配Android12 SDK出现INSTALL_PARSE_FAILED_MANIFEST_MALFORMED报错如何解决

INSTALL_PARSE_FAILED_MANIFEST_MALFORMED 报错解决方案

报错根因

Android 12(API 31,即S+版本)引入了强制校验规则:所有包含<intent-filter>标签的四大组件(Activity、Service、BroadcastReceiver、ContentProvider),必须显式声明android:exported属性,不允许缺省,否则安装时就会抛出对应报错。

分步解决步骤

  • 优先检查自身声明的组件
    打开项目主AndroidManifest.xml,逐个核对所有携带<intent-filter>的组件,为每个补充android:exported属性:
    • 组件需要对外暴露给其他应用调用(比如桌面启动页、接收系统广播的接收器、支持第三方跳转的页面),设置为android:exported="true"
    • 组件仅应用内部使用,设置为android:exported="false"
      示例正确配置:
<activity
    android:name="com.xx.Activity"
    android:exported="true">
    <intent-filter>
        <action android:name="android.intent.action.MAIN" />
        <category android:name="android.intent.category.LAUNCHER" />
    </intent-filter>
</activity>
  • 排查第三方依赖引入的未适配组件
    多数修改自身Manifest后仍报错的场景,都是依赖的第三方库内部的组件未适配Android 12,没有声明android:exported属性。可通过以下方式定位修复:
  1. 打开项目主AndroidManifest.xml,点击编辑器底部的「Merged Manifest」标签,查看所有依赖库合并后的完整Manifest内容
  2. 找到所有携带<intent-filter>且未声明android:exported的组件,复制其完整类名
  3. 在项目主AndroidManifest.xml中新增同名组件节点,补充android:exported属性,同时添加合并规则标记,示例:
<!-- 根节点先添加tools命名空间 -->
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    package="你的包名">

    <!-- 覆写三方库未适配组件 -->
    <activity
        android:name="com.third.sdk.XXActivity"
        android:exported="false"
        tools:node="merge" />
</manifest>
  • 确认编译配置
    检查Module级build.gradle文件的targetSdkVersion和compileSdkVersion,如果两个值≥31就必须遵守上述规则,若暂时不需要适配Android 12,可将两个值降级到30临时解决问题。
  • 清理缓存重新编译
    修改完成后依次执行Build -> Clean Project、Build -> Rebuild Project,清除旧编译缓存后再打包安装。

内容的提问来源于stack exchange,提问作者mozushixin

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.29 09:27:01