java - Android Manifest 合并失败

标签 java android android-manifest

我有两个单独工作的 Android 项目(A 和 B)。我创建了一个带有两个按钮的父项目,用于调用每个子项目(我已将子项目作为库包含在内)。最初,我向父项目添加了一个子项目,并且运行良好。但是,在添加第二个子项目时,我收到 Android list 合并错误。每个子应用程序都需要一个 SDK key 才能在启动时注册。这在 list 中定义如下:

子应用程序A:

<application
    android:name=".DemoApplication"
    android:allowBackup="true"
    android:icon="@mipmap/ic_launcher"
    android:label="@string/app_name"
    android:roundIcon="@mipmap/ic_launcher_round"
    android:supportsRtl="true"
    android:theme="@style/AppTheme"
    tools:replace="android:icon">

    <!-- DJI SDK -->
    <uses-library android:name="com.android.future.usb.accessory" />

    <meta-data
        android:name="com.dji.sdk.API_KEY"
        android:value="f70d587986XXXXXXXXXX"/>

子应用程序 B:

<application
    android:name=".DJIDemoApplication"
    android:allowBackup="true"
    android:icon="@mipmap/ic_launcher"
    android:label="@string/app_name"
    android:supportsRtl="true"
    android:theme="@style/AppTheme">

    <!-- DJI SDK -->

    <uses-library android:name="com.android.future.usb.accessory" />

    <meta-data
        android:name="com.dji.sdk.API_KEY"
        android:value="2cde5eaabXXXXXXXXXXXX" /> //TODO: Enter your app key here

android list 给出的错误似乎与元数据部分中的 API_KEY 值有关。我的猜测是,在 list 合并时,它不知道要使用 API_KEY 的哪个值。但是,我需要这两个值来注册应用程序 A 和 B。我尝试将“tools:replace=android:value”添加到其中一个子应用程序,但编译后的应用程序仅运行一个子应用程序。具体错误如下:

Error: Attribute meta-data#com.dji.sdk.API_KEY@value value=(f70d587986XXXXXXXXXX) from AndroidManifest.xml:34:55-95 is also present at AndroidManifest.xml:34:55-95 value=(2cde5eaabXXXXXXXXXXXXX). Suggestion: add 'tools:replace="android:value"' to <meta-data> element at AndroidManifest.xml:34:9-97 to override. app main manifest (this file), line 33

我是 Android 新手,不知道如何解决此问题。任何有关此问题的帮助将不胜感激。

最佳答案

将“tools:replace="android:value"”添加到 AndroidManifest.xml 的元素

这个错误是由

引起的
<meta-data
        android:name="com.dji.sdk.API_KEY"
        android:value="2cde5eaabXXXXXXXXXXXX" />

存在于两个文件中

关于java - Android Manifest 合并失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46595779/

相关文章:

java - ZeroMQ 在 context.term() 调用中阻塞。为什么?如何预防?

Android:自定义相机拍摄的图像太暗

android - 更改 Honeycomb 上激活列表项背景的颜色

android - 从 android play 下载时,我的应用程序不支持华为媒体垫 (hws7300w)

java - JUnit 中的注解列表

java - 如何使用登录:pass@ url in Glide on Android?

java - 你能制作一个不可关闭、不可离开的 Java 应用程序吗?

android - 为什么 WebView 不加载特定的 URL?

android - 无法进行安卓构建

Android 通知 Activity 不会启动