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

集成@viro-community/react-viro时AndroidManifest.xml冲突报错求助

React Native集成@viro-community/react-viro时AndroidManifest冲突解决

问题核心

你遇到的冲突是**com.google.ar.core.min_apk_version**这个meta-data标签的版本值冲突:[:arcore_client]提供的值是211680000,而com.google.ar:core:1.31.0提供的值是220920000。你之前在com.google.ar.core的meta-data标签加tools:replace,但这和冲突的标签不是同一个,所以无效。

解决步骤

  1. 在AndroidManifest.xml的<application>标签内部,添加专门针对冲突标签的meta-data配置:

    <meta-data 
        android:name="com.google.ar.core.min_apk_version" 
        android:value="220920000" 
        tools:replace="android:value"/>
    

    (value可以选你想保留的版本号,比如220920000或211680000,也可以留空让Gradle自动处理)

  2. 修改后的完整AndroidManifest.xml示例(重点看新增的meta-data):

    <manifest xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools">
        <!-- added xmlns or xmlns:tools attribute -->
        <uses-permission android:name="android.permission.INTERNET" />
        <!-- viro -->
        <uses-permission android:name="android.permission.CAMERA" />
        <!-- You may need these if doing any screen recording from within the app -->
        <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
        <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
        <!-- Other camera related features -->
        <uses-feature android:name="android.hardware.camera" />
        <uses-feature android:name="android.hardware.camera.autofocus" android:required="false" tools:replace="required"/>
        <!-- Specifying OpenGL verison or requirements -->
        <uses-feature android:glEsVersion="0x00030000" android:required="false" tools:node="remove" tools:replace="required" />
        <!-- Usage of accelerometer and gyroscope -->
        <uses-feature android:name="android.hardware.sensor.accelerometer" android:required="false" tools:replace="required" />
        <uses-feature android:name="android.hardware.sensor.gyroscope" android:required="false" tools:replace="required" />
        <application
            android:name=".MainApplication"
            android:label="@string/app_name"
            android:icon="@mipmap/ic_launcher"
            android:roundIcon="@mipmap/ic_launcher_round"
            android:allowBackup="false"
            android:theme="@style/AppTheme">
            <!-- added below line for viro -->
            <meta-data android:name="com.google.ar.core" android:value="optional" tools:replace="android:value"/>
            <!-- 新增的冲突解决标签 -->
            <meta-data 
                android:name="com.google.ar.core.min_apk_version" 
                android:value="220920000" 
                tools:replace="android:value"/>
            <activity
                android:name=".MainActivity"
                android:label="@string/app_name"
                android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|screenSize|smallestScreenSize|uiMode"
                android:launchMode="singleTask"
                android:windowSoftInputMode="adjustResize"
                android:exported="true">
                <intent-filter>
                    <action android:name="android.intent.action.MAIN" />
                    <category android:name="android.intent.category.LAUNCHER"/>
                </intent-filter>
            </activity>
        </application>
    </manifest>
    
  3. 清理并重新构建项目:

    cd android
    ./gradlew clean
    ./gradlew assembleDebug
    

补充说明

如果不需要指定具体版本,也可以用tools:node="merge"让Gradle自动合并,或者tools:node="remove"移除其中一个依赖的该标签,但tools:replace是最直接的覆盖方式。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.08 00:17:33