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

Xamarin.Forms中INSTALL_PARSE_FAILED_MANIFEST_MALFORMED安装错误求助

解决INSTALL_PARSE_FAILED_MANIFEST_MALFORMED错误(Android 12 + Firebase推送插件)

问题原因

Android 12(API 31)及更高版本有强制要求:所有包含intent filters的组件(Service、Activity、BroadcastReceiver等)必须显式声明android:exported属性,值设为true或false。你使用的Plugin.FirebasePushNotification插件自动生成的PNFirebaseMessagingService服务带有intent filter,但未添加该属性,导致安装时清单解析失败。

解决方案

在你的AndroidManifest.xml的<application>标签内,显式声明该服务并添加android:exported属性。由于插件可能已通过清单合并注入该服务,需使用tools:node="merge"确保属性正确合并。

修改后的完整清单代码

<manifest xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:versionCode="2" android:versionName="1.0.2" package="com.healholmes" android:installLocation="preferExternal">
    <uses-sdk android:minSdkVersion="24" android:targetSdkVersion="31" />
    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
    <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
    <uses-permission android:name="android.permission.ACCESS_MOCK_LOCATION" />
    <uses-permission android:name="android.permission.INTERNET" />
    <uses-permission android:name="android.permission.RECORD_AUDIO" />
    <uses-permission android:name="android.permission.CAMERA" />
    <uses-permission android:name="android.permission.CALL_PHONE" />
    <uses-permission android:name="android.permission.READ_PHONE_STATE" />
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
    <application tools:replace="android:label" android:label="Heal Holmes" android:icon="@mipmap/icon_ambush">
        <!-- 显式声明Firebase推送服务并添加android:exported属性 -->
        <service
            android:name="crc6494e14b9856016c30.PNFirebaseMessagingService"
            android:exported="true"
            tools:node="merge">
            <intent-filter>
                <action android:name="com.google.firebase.MESSAGING_EVENT" />
            </intent-filter>
        </service>
    </application>
    <queries>
        <intent>
            <action android:name="android.media.action.IMAGE_CAPTURE" />
        </intent>
    </queries>
</manifest>

补充说明

  • android:exported="true":该服务需要接收Firebase的推送事件,外部服务(Firebase)需能访问它,因此设为true。
  • tools:node="merge":确保与插件自动生成的服务声明合并,避免清单冲突。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.13 16:50:23