私は文字通り真新しいAndroid最新のプロジェクトAndroid Studioで作成しました。私が最初にしたことは、プロジェクトに「レルム」ライブラリを追加することでした。以下をgradleファイルに追加します。
compile 'io.realm:realm-Android:0.80.3'
コンパイルしようとすると、次のエラーが発生します。
Note: C:\....\MainActivity.Java uses or overrides a deprecated API.
オリジン2:C:\ Users\Usmaan.gradle\caches\modules-2\files-2.1\io.realm\realm-Android\0.80.3\7979d05ba7b919c53766bf98e31aaf0e9feb0590\realm-Android-0.80.3.jarエラー:ファイルの重複APK Cのパッケージ化:...\app\build\outputs\apk\app-debug-unaligned.apkアーカイブ内のパス:META-INF/services/javax.annotation.processing.Processor Origin 1:C:\ Users\Usmaan .gradle\caches\modules-2\files-2.1\com.jakewharton\butterknife\6.1.0\63735f48b82bcd24cdd33821342428252eb1ca5a\butterknife-6.1.0.jar build.gradle内のこれらのファイルは無視できます:Android {
packagingOptions {exclude'META-INF/services/javax.annotation.processing.Processor '}エラー:タスク':app:packageDebug 'の実行に失敗しました。APK META-INF/services/javax.annotation.processing.Processorファイル1にコピーされた重複ファイル:C:\ Users\Usmaan.gradle\caches\modules-2\files-2.1\com.jakewharton\butterknife\6.1.0\63735f48b82bcd24cdd33821342428252eb1ca5a\butterknife-6.1.0.jarファイル2:C:\ Users\Usmaan.gradle\caches\modules-2\files-2.1\io.realm\realm-Android\0.80.3\7979d05ba7b919c53766bf98e31aaf0e9feb590 .3.jar}
何か案は?
バターナイフも使っているようですね。以下をbuild.gradleに追加してみましたか?
Android {
...
packagingOptions {
exclude 'META-INF/services/javax.annotation.processing.Processor'
}
}
これをbuild.gradleのAndroid
プラグインに追加すると、次のような問題が修正される傾向があります。
packagingOptions {
// Exclude file to avoid
// Error: Duplicate files during packaging of APK
exclude 'META-INF/DEPENDENCIES'
exclude 'META-INF/LICENSE'
exclude 'META-INF/LICENSE.txt'
exclude 'META-INF/license.txt'
exclude 'META-INF/NOTICE'
exclude 'META-INF/NOTICE.txt'
exclude 'META-INF/notice.txt'
exclude 'META-INF/ASL2.0'
exclude 'META-INF/services/javax.annotation.processing.Processor'
}
}
私の問題はここからでした:
Intent photoPickerIntent = new Intent(Intent.ACTION_PICK, Android.provider.MediaStore.Images.Media.EXTERNAL_CONTENT_URI);
photoPickerIntent.setType("image/*");
Lint
は、type
を設定するとコンストラクターのURI
がクリアされるため、置き換える必要があることを警告していました。私はそれを次のように変更しました:
Intent photoPickerIntent = new Intent(Intent.ACTION_PICK);
photoPickerIntent.setDataAndType(Android.provider.MediaStore.Images.Media.EXTERNAL_CONTENT_URI, "image/*");
そして警告は消えた。
ButterKnife I/Oページで指定されているようにbuild.gradleにこれらを追加します。
Android{
....
packagingOptions {
exclude 'META-INF/services/javax.annotation.processing.Processor'
}
}
lintOptions {
disable 'InvalidPackage'
}