Ответ 1
Добавьте это в свой файл gradle.properties
android.useAndroidX=true
android.enableJetifier=true
У меня возникли проблемы со следующей ошибкой → ошибка: тип программы уже существует: androidx.versionedparcelable.CustomVersionedParcelable
Когда я нажимаю в Build ошибки, он показывает мне это:
AGPBI: {"kind":"error","text":"Program type already present: androidx.versionedparcelable.CustomVersionedParcelable","sources":[{}],"tool":"D8"}
:app:transformDexArchiveWithExternalLibsDexMergerForDebug FAILED
FAILURE: Build failed with an exception.
Я не понимаю, в чем причина этой проблемы, потому что я использую библиотеку Parcelable, но никогда не вызывала у меня такого рода ошибки.
Это файл проекта моего проекта.
apply plugin: 'com.android.application'
android {
compileSdkVersion 28
defaultConfig {
applicationId "com.example.package.name"
minSdkVersion 22
targetSdkVersion 28
versionCode 1
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation 'com.android.support:appcompat-v7:28.0.0'
implementation 'com.android.support.constraint:constraint-layout:1.1.3'
testImplementation 'junit:junit:4.12'
androidTestImplementation 'com.android.support.test:runner:1.0.2'
androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'
// Lottie
implementation 'com.airbnb.android:lottie:2.8.0'
//Gson
implementation 'com.google.code.gson:gson:2.8.5'
implementation 'com.squareup.retrofit2:converter-gson:2.4.0'
//Dagger 2
implementation 'com.google.dagger:dagger:2.18'
implementation "com.google.dagger:dagger-android-support:2.18"
annotationProcessor 'com.google.dagger:dagger-compiler:2.18'
//Asyncjob
implementation 'com.arasthel:asyncjob-library:1.0.3'
//Butterknife
implementation 'com.jakewharton:butterknife:9.0.0-rc1'
annotationProcessor 'com.jakewharton:butterknife-compiler:9.0.0-rc1'
}
Это моя панель сборки в Android Studio
ОБНОВЛЕНИЕ (12-1-2018)
Я думаю, что нашел ответ на эту проблему. Я прочитал, что все библиотеки поддержки будут мигрировать в библиотеку androidx.
Итак, я прочитал в документации для разработчиков Android и объяснил, как перенести все android.support.
библиотеки для androidx.
Вам нужно только зайти в Android Studio и сделать Refactor >> Migrate to AndroidX из строки меню.
Это ссылка для получения дополнительной информации -> Документация для разработчиков Android (Migrate to Androidx).
Добавьте это в свой файл gradle.properties
android.useAndroidX=true
android.enableJetifier=true
Только это решение работает для меня после долгого времени поиска.
Меню Android Studio → Build → Rebuild Project.
Источник Здесь.
Проблема:
Error: Program type already present:
androidx.versionedparcelable.CustomVersionedParcelable
Решение: Добавьте это в свой файл gradle.properties вверху.
android.useAndroidX=true
android.enableJetifier=true
Ваш проект будет мигрировать на Android без ошибок во время сборки