Я, вероятно, не могу найти ВСЕ темы с этой проблемой, но я могу попытаться помочь в нескольких или около того.
ПЕРВИЧНЫЙ ОТВЕТ
ЕСЛИ выиспользую ProGuard так же, как и я. ProGuard может вызвать эту ошибку во время запроса. Я исправил это с помощью следующего:
# Fix OAuth Drive API failure for release builds
-keep class * extends com.google.api.client.json.GenericJson { *; }
-keep class com.google.api.services.drive.** { *; }
-keepclassmembers class * { @com.google.api.client.util.Key <fields>; }
ВТОРОЙ ОТВЕТ
Обратите внимание, что вам НЕ необходимо использовать ключи / токены при использовании Driveостальные API с Android, как вы можете найти из других решений (это может не повредить, но может). Здесь это не соответствует тому, о чем люди говорят в другом месте (здесь они не знают, о чем говорят).
См. Мои заметки здесь для получения дополнительной информации: Google Диск через OAuth-релизверсия получает dailyLimitExceededUnreg
Если у вас возникла проблема с отладочной сборкой , то вы сделали все неправильно. Мои записи должны помочь вам в правильном направлении.
Если вам понадобится дополнительная помощь, я мог бы помочь из-за того, как это чокнуто.
ПРИМЕР ПОЛУЧЕНИЯ ФАЙЛА ИЗ ПРИВОДА СNEW API USE
Просто посмотрите по следующей ссылке
public Task<Pair<String, String>> readFile(String fileId)
https://github.com/gsuitedevs/android-samples/blob/master/drive/deprecation/app/src/main/java/com/google/android/gms/drive/sample/driveapimigration/DriveServiceHelper.java
Идентификатор исходит из результата запроса, где идентификатор является частью этогоинформация запроса, прикрепленная к тому, что возвращается из запроса Drive. Идентификатор - это идентификатор файла, который вы хотите получить. Передайте это в readFile, и оно вернет вам содержимое файла, которое вы можете сохранить локально в java.io.File, например fileOutputStream.write (contents.getBytes ());содержимое которого состоит из пары. Тогда у вас будет, надеюсь, (потому что иногда у нас больше работы) идентичный java.io.File.
Вы можете увидеть базовый запрос, если он вам нужен и в примере ссылки, но в нем отсутствуют некоторыеважная информация, потому что, в зависимости от того, что вы делаете, вам может понадобиться проверить, не были ли они повреждены, получить размер файла, изменить время, md5, установить порядок и т. д. Вам может понадобиться просмотреть https://developers.google.com/drive/api/v2/reference/files/list и https://developers.google.com/drive/api/v3/reference/files и т. д., чтобыпонять это. Если файлов будет достаточно, то будет требоваться постраничная пересылка.
Я знаю, что использовать Drive from code немного чокнуто (ну, во всяком случае, мне в любом случае, lol), так что держитесь там =)