Почему я не могу заменить Android Google Drive Api на REST API Java?
У меня есть следующая зависимость от Android Google Drive API. Поскольку этот API будет закрыт, я должен переместить его в JAVA REST API.
implementation 'com.google.android.gms:play-services-auth:16.0.1'
implementation 'com.google.android.gms:play-services-drive:16.0.0'
Но я не могу этого сделать, потому что каждый раз, когда я добавляю новую зависимость, я получаю ошибку.
compile 'com.google.api-client:google-api-client:1.23.0'
compile 'com.google.oauth-client:google-oauth-client-jetty:1.23.0'
compile 'com.google.apis:google-api-services-drive:v3-rev110-1.23.0'
1 ответ
Мне пришлось добавить следующие строки в gradle.properties.
android.enableD8=false
android.enableD8.desugaring=false
С этим билдом работает, но Android Studio предупреждает меня не делать этого.
The option 'android.enableD8' is deprecated and should not be used anymore.
The option setting 'android.enableD8.desugaring=false' is experimental and unsupported.
РЕДАКТИРОВАТЬ: я следовал этому руководству, и он работает без отключения D8.
packagingOptions {
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'
}
dependencies {
....
implementation 'com.google.android.gms:play-services-auth:16.0.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'
}
}