Как использовать инструменты: overrideLibrary в сборке.файл gradle?
Я использую библиотеки leanback, которые требуют Android 17 или более поздней версии. Однако мое приложение поддерживает основным направлением развития операционной системы 16, так я получаю ошибку построения из Gradle в слова
Error:Execution failed for task ':Tasks:processPhoneDebugManifest'.
> Manifest merger failed : uses-sdk:minSdkVersion 16 cannot be smaller than version 17 declared in library /Users/mike/Projects/android-for-dummies-v3/Tasks/build/intermediates/exploded-aar/com.android.support/leanback-v17/21.0.2/AndroidManifest.xml
Suggestion: use tools:overrideLibrary="android.support.v17.leanback" to force usage
когда я смотрю на build tools documentation, Я вижу, как добавить overrideLibrary
маркер для моего манифеста, но проблема в том, что я объявляю свой minSdk в моем файле gradle вместо моего манифеста.
как использовать overrideLibrary
когда основным направлением развития операционной системы объявлена в строй.gradle вместо in AndroidManifest.xml?
6 ответов:
Открыть Android Studio -> Открыть Файл Манифеста
добавить
<uses-sdk tools:overrideLibrary="android.support.v17.leanback"/>
не забудьте включитьxmlns:tools="http://schemas.android.com/tools"
до<application>
tag
неважно, что вы заявляете о своем основным направлением развития операционной системы в строй.градля. Вы должны скопировать
overrideLibrary
в своемAndroidManifest.xml
, так как документально здесь.<manifest ... > <uses-sdk tools:overrideLibrary="com.example.lib1, com.example.lib2"/> ... </manifest>
система автоматически игнорирует sdkVersion, объявленный в AndroidManifest.XML.
Я надеюсь, что это решит вашу проблему.
<manifest xmlns:tools="http://schemas.android.com/tools" ... > <uses-sdk tools:overrideLibrary="nl.innovalor.ocr, nl.innovalor.corelib" />
я столкнулся с проблемой конфликта между различными версиями min sdk. Так что это решение сработало для меня.
как библиотеки требует
minSdkVersion 17
тогда вы можете изменить то же самое вbuild.gradle
(модуль:приложение) файл:defaultConfig { minSdkVersion 17 targetSdkVersion 25 }
и после этого построение проекта не должно вызывать никаких ошибок сборки.
Я только что переоделся
minSdkVersion="7"
наC:\MyApp\platforms\android\CordovaLib\AndroidManifest.xml
и это сработало.действия:
- путь:
C:\MyApp\platforms\android\CordovaLib\AndroidManifest.xml
- значение:
<uses-sdk android:minSdkVersion="7"/>
команда Ran в новой командной строке cmd:
C:\MyApp>phonegap build android --debug [phonegap] executing 'cordova build android --debug'... [phonegap] completed 'cordova build android --debug'