簡體   English   中英

Android Gradle Manifest合並失敗

[英]Android Gradle Manifest merger failed

我使用leanback庫為Android TV開發。 我的應用程序將min API聲明為16,但leanback作為最小API為16。因此,文檔說我在我的清單中聲明了這一點:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
          xmlns:tools="http://schemas.android.com/tools"
          package="com.mypackage.package">

    <uses-sdk tools:overrideLibrary="android.support.v17.leanback" />

但是我仍然有錯誤:

錯誤:(6,5)任務':app:processAdhocProdManifest'的執行失敗。

清單合並失敗:uses-sdk:minSdkVersion 16不能小於庫中聲明的版本17 /thepathtotheapp/build/intermediates/exploded-aar/com.android.support/leanback-v17/22.2.0/AndroidManifest.xml建議:使用tools:overrideLibrary =“android.support.v17.leanback”強制使用

在Manifest合並報告中我可以看到:

MERGED from io.fabric.sdk.android:fabric:1.0.2:7:5
    android:targetSdkVersion
        INJECTED from AndroidManifest.xml:0:0
        INJECTED from AndroidManifest.xml:0:0
    android:minSdkVersion
        INJECTED from AndroidManifest.xml:0:0
        INJECTED from AndroidManifest.xml:0:0
    tools:overrideLibrary
        ADDED from AndroidManifest.xml:21:15
    tools:ignore
        ADDED from com.mixpanel.android:mixpanel-android:4.5.4-RC1:14:9
application
ADDED from AndroidManifest.xml:23:5

所以看起來它正在添加工具:overrideLibrary但它仍然失敗。

誰知道如何解決這個問題?

問題來自Mixpanel庫,Mixpanel使用此標記定義其AndroidManifest:

<uses-sdk
        android:minSdkVersion="9"
        android:targetSdkVersion="21"
        tools:ignore="GradleOverrides" />

所以我最終放棄了Mixpanel,我寧願放棄他們而不是10%的用戶。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM