既存のAndroid(min sdk version 16)アプリにウェアラブルモジュールを追加しようとしています。アプリ(リリースモード)を実行すると、次のエラーが発生します。
エラー:タスク ':app:processReleaseManifest'の実行に失敗しました。マニフェストのマージに失敗しました:uses-sdk:minSdkVersion 16は、ライブラリで宣言されているバージョン25より小さくすることはできません[Wear App sub-manifest] c:\ works\sampleapp\Android\app\build\generate\manifests\microapk\release\AndroidManifest.xml提案:tools:overrideLibrary = ""を使用して使用を強制する
MinSdkVersionを増やしたくありません。では、アプリのminSdkVersionを変更せずに問題を修正するにはどうすればよいですか?
これが私のgradleファイルです:
電話アプリ
apply plugin: 'com.Android.application'
Android {
signingConfigs {
config {
[...]
}
}
compileSdkVersion 25
buildToolsVersion "25.0.2"
repositories {
jcenter()
maven {
url "https://maven.Java.net/content/groups/public/"
}
}
defaultConfig {
applicationId "com.sample.app"
minSdkVersion 16
targetSdkVersion 25
signingConfig signingConfigs.config
}
buildTypes {
release {
debuggable true
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-Android.txt'), 'proguard-rules.pro'
}
debug {
debuggable true
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-Android.txt'), 'proguard-rules.pro'
}
}
productFlavors {
}
}
dependencies {
compile 'com.Android.support:appcompat-v7:25.2.0'
compile 'com.Android.support:design:25.2.0'
[...]
compile 'com.google.Android.gms:play-services-wearable:10.2.0'
wearApp project(':sample-wear')
}
apply plugin: 'com.google.gms.google-services'
waerable app
apply plugin: 'com.Android.application'
Android {
compileSdkVersion 25
buildToolsVersion "25.0.2"
signingConfigs {
config {
[...]
}
}
defaultConfig {
applicationId "com.sample.app"
minSdkVersion 23
targetSdkVersion 25
versionCode 1
versionName "1.0"
signingConfig signingConfigs.config
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-Android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')
compile 'com.google.Android.support:wearable:2.0.0'
compile 'com.google.Android.gms:play-services-wearable:10.2.0'
provided 'com.google.Android.wearable:wearable:2.0.0'
}
注:エラーはGradle2.3.0でのみ発生します。 Gradle 2.2.3は期待どおりに機能します...
Code.google.comの同様の問題: https://code.google.com/p/Android/issues/detail?id=232834
Ionicプロジェクトの場合
preference name="Android-minSdkVersion" value="19"
Config.xml(プロジェクトディレクトリ)ファイルで、上記のフィールドを必要なバージョンに設定します。
私がそれを機能させる唯一の方法は:
ionic cordova platform rm Android
Ionicプロジェクトのルートにあるconfig.xmlファイルを更新します:from
<preference name="Android-minSdkVersion" value="16" />
に
<preference name="Android-minSdkVersion" value="19" />
OPの状況では、値は19ではなく25であると想定しています(私の場合、エラーでは19でした)。
ionic cordova platform add Android
次に、準備してビルドします。同じエラーが返されることはもうありません。
プラットフォームIONICとCORDOVAを使用して同じ問題に直面しました。次のようにして、この問題を解決しました。
両方のファイルを確認してください。
[folder_your_app]\platforms\Android\app\src\main\AndroidManifest.xml
例:
\Users\[your_user]\.gradle\caches\transforms-1\files-1.1\tbxml-Android.aar\f0d6a971caeb6d952bf6b9b62464f2ab\AndroidManifest.xml
最初のファイルで次の行を確認してください。
uses-sdk Android:minSdkVersion="16" Android:targetSdkVersion="26"
2番目のファイルの次の行と比較します。
Android:minSdkVersion="16"
バージョンを調整してお楽しみください!
'ウェアラブル'モジュールには最小23
sdkがあり、25ではないため、Gradleの問題のようです。
モジュールには「25」のAndroidManifest.xml
が含まれている可能性があるため、そのモジュールのuses-sdk:minSdkVersion
も確認してください。
値がない場合は、Gradle構成値をオーバーライドして値を追加できます。
それが役立つことを願っています。