Разрешение GET_ACCOUNTS и API Google

Я использую Gmail API для отправки писем из приложения Android.
Читая о GET_ACCOUNTS разрешение заставило меня думать, что это больше не нужно, но, очевидно, я был неправ.

Я лично использую Android 8, и все работает нормально без заявленного разрешения, однако, запуск Android 7 вызывает исключение из библиотеки Google GMS Auth: (я знаю, исключение не выглядит связанным, это проблема с разрешениями)

java.lang.IllegalArgumentException: the name must not be empty: null
    at android.accounts.Account.<init>(Account.java:48)
    at com.google.android.gms.auth.zzd.getToken(Unknown Source)
    at com.google.android.gms.auth.GoogleAuthUtil.getToken(Unknown Source)
    at com.google.api.client.googleapis.extensions.android.gms.auth.GoogleAccountCredential.getToken(GoogleAccountCredential.java:267)
    at com.google.api.client.googleapis.extensions.android.gms.auth.GoogleAccountCredential$RequestHandler.intercept(GoogleAccountCredential.java:292)
    at com.google.api.client.http.HttpRequest.execute(HttpRequest.java:868)
    at com.google.api.client.googleapis.media.MediaHttpUploader.executeCurrentRequestWithoutGZip(MediaHttpUploader.java:545)
    at com.google.api.client.googleapis.media.MediaHttpUploader.executeCurrentRequest(MediaHttpUploader.java:562)
    at com.google.api.client.googleapis.media.MediaHttpUploader.executeUploadInitiation(MediaHttpUploader.java:519)
    at com.google.api.client.googleapis.media.MediaHttpUploader.resumableUpload(MediaHttpUploader.java:384)
    at com.google.api.client.googleapis.media.MediaHttpUploader.upload(MediaHttpUploader.java:336)
    at com.google.api.client.googleapis.services.AbstractGoogleClientRequest.executeUnparsed(AbstractGoogleClientRequest.java:427)
    at com.google.api.client.googleapis.services.AbstractGoogleClientRequest.executeUnparsed(AbstractGoogleClientRequest.java:352)
    at com.google.api.client.googleapis.services.AbstractGoogleClientRequest.execute(AbstractGoogleClientRequest.java:469)

Думаю, мне все еще нужно объявить об этом и попросить пользователя предоставить его на Android 7, но в каких других версиях SDK?
Похоже, что Android 8 не нуждается в разрешении, но как насчет Android 6 и ниже?
Я просмотрел все документы Google API, но ничего не нашел...

0 ответов

Другие вопросы по тегам