Почему я не могу заменить Android Google Drive Api на REST API Java? - PullRequest
0 голосов
/ 25 января 2019

У меня следующая зависимость от 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'

enter image description here

1 Ответ

0 голосов
/ 28 января 2019

Мне пришлось добавить следующие строки в 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.

EDIT: Я следовал этому руководству, и он работает без отключения 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'
    }
}
...