Получил выпущенное приложение, которое использует Google DriveApi (не REST), и оно работает нормально в течение многих лет.
Начинается разработка следующего релиза, где я хочу использовать REST. Во время разработки я хотел, чтобы приложение использовало оба API. (В конце концов, я, вероятно, перестану использовать DriveApi и буду использовать только REST.) Реализована первая функция с использованием REST. Прекрасно работает перечисление некоторых папок на Google Диске, используя мой основной аккаунт Google.
Однако при попытке использовать исходный DriveApi (не REST) возникает серьезная проблема: com.google.android.gms.common.api.ApiException: 17: Устранение ошибки было отменено пользователем, исходное сообщение об ошибке: INTERNAL_ERROR: ноль
Нет проблем при входе, но проблема возникает, например. для простой функции получения корневой папки Goggle Drive, и я использую правильную область видимости для не REST: Drive.SCOPE_FILE
Если я переустановлю выпущенную версию из магазина приложений (которая не использует REST и никогда не использует), я получаю ту же проблему! У меня есть пара устройств с версией из магазина приложений (не переустанавливается), и приложение отлично работает на них, используя мой основной аккаунт Google!
Затем я создал новую учетную запись Google, и все отлично работает при использовании этой учетной записи. Я могу переустановить из магазина приложений, и все работает просто отлично.
Таким образом, проблема возникает, когда я переустанавливаю приложение и использую свою основную учетную запись Google. Похоже, моя основная учетная запись Google как-то повреждена, когда я использовал REST. Но не для устройств, где я не переустанавливал приложение!
Я могу увидеть их в журнале как раз перед тем, как мое приложение получит исключение, но я вижу похожие журналы, когда все работает нормально:
2018-11-10 07: 56: 11.381 1152-1792 /? W / AppOps: Плохой вызов: указанный пакет com.google.android.gms под uid 10190, но на самом деле это 10020
Есть идеи?