Я зову ниже кода в Android приложение (для аутентификации с помощью Google App Engine, думаю, что бай-зе-по):AccountManager метания UnsupportedOperationException: getAuthTokenLabel
AccountManager accountManager = AccountManager.get(this);
accountManager.getAuthToken(mAccount, "ah",null, false, new GetAuthTokenCallback(), null);
В GetAuthTokenCallback()
брошена эта ошибка:
android.accounts.AuthenticatorException: java.lang.UnsupportedOperationException: getAuthTokenLabel not supported
Процесс аутентификации прекращается.
Странно, что он работает на устройстве Android 5.5.1. Ошибка UnsupportedOperationException возникает только на устройстве 6.0.1.
У меня есть запрос на разрешение времени на выполнение для GET_ACCOUNTS
, который, как мне кажется, мне нужен, но подозреваю, что ошибка возникает из этого и систем разрешений Marshmellow.
@TargetApi(23)
private boolean haveGetAccountPermission() {
Log.i(TAG, "haveGetAccountPermission()");
int hasWriteContactsPermission = ActivityCompat.checkSelfPermission(this,Manifest.permission.GET_ACCOUNTS);
if (hasWriteContactsPermission != PackageManager.PERMISSION_GRANTED) {
ActivityCompat.requestPermissions(this,new String[] {Manifest.permission.GET_ACCOUNTS},
REQUEST_CODE_ASK_PERMISSIONS);
return false;
} else {
return true;
}
}
Любые идеи очень ценятся.