Я пытаюсь обновить свое приложение с устаревшего API-интерфейса Android Drive до API Drive REST, следуя примеру приложения .
При попытке создать подписанный выпуск APK, я получаюэта проблема:
httpclient определяет классы, которые конфликтуют с классами, теперь предоставляемыми Android.Решения включают в себя поиск более новых версий или альтернативных библиотек, у которых нет такой же проблемы (например, для httpclient вместо этого используйте HttpUrlConnection или okhttp), или переупаковка библиотеки с использованием чего-то вроде jarjar.
Вот моизависимости gradle:
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation 'com.android.support:appcompat-v7:27.1.1'
implementation 'com.google.android.gms:play-services-auth:16.0.1'
implementation 'com.android.support:design:27.1.1'
implementation 'com.android.support:customtabs:27.1.1'
implementation 'com.google.http-client:google-http-client-gson:1.26.0'
implementation('com.google.api-client:google-api-client-android:1.26.0') {
exclude group: 'org.apache.httpcomponents'
}
implementation('com.google.apis:google-api-services-drive:v3-rev136-1.25.0') {
exclude group: 'org.apache.httpcomponents'
}
}
Я предполагаю, что проблема вызвана:
implementation 'com.google.http-client:google-http-client-gson:1.26.0'
Я пробовал решения, опубликованные здесь и здесь, но они не работают.
Как и этот комментарий говорит:
Я не могу получить релиз apk, если исключить httpclient
Какие еще есть решения?