Подсказка для входа в Smart Lock setPhoneNumberIdentifierSupported не работает

Я пытаюсь получить номер телефона пользователя с помощью HintRequest

PendingIntent intent = Auth.CredentialsApi.getHintPickerIntent(
        googleApiClient, new HintRequest.Builder()
                .setPhoneNumberIdentifierSupported(true)
                .setEmailAddressIdentifierSupported(false)
                .build());
        try {
    startIntentSenderForResult(intent.getIntentSender(),
            REQUEST_CODE_RESOLVE_PHONE, null, 0, 0, 0);
} catch (IntentSender.SendIntentException e) {
    e.printStackTrace();
}

Но никаких результатов и Activity.RESULT_CANCELED.

Номер виден в Настройки -> О программе -> Статус -> Статус SIM и может быть получен через TelephonyManager, но я хотел бы получить его без запроса разрешения телефона.


person dunkah0lic    schedule 17.08.2017    source источник
comment
Хм, включена ли функция Smart Lock в Настройки › Google › Smart Lock для паролей для всех учетных записей на устройстве. Это может мешать...   -  person Steven    schedule 18.08.2017
comment
Не работает с ним как включенным, так и выключенным, если он включен, есть диалоговое окно прогресса, а затем обратный вызов onActivityResult, если он выключен, нет диалога, прямо к обратному вызову. На устройстве только одна учетная запись   -  person dunkah0lic    schedule 18.08.2017
comment
И для проверки: похоже, вы можете получить номер телефона из TelephonyManager.getLine1Number(), когда у вас есть соответствующие разрешения? В какой стране/операторе/OEM используется устройство?   -  person Steven    schedule 20.08.2017
comment
Да, могу, аппарат Sony Xperia Z5 (E6653), международная версия, наверное, куплен в России   -  person dunkah0lic    schedule 21.08.2017
comment
Он работает на Galaxy S6 EDGE, это ошибка конкретного устройства?   -  person dunkah0lic    schedule 23.08.2017


Ответы (1)


Оказалось, проблема с сим-картой, не работает с EE sim.

person dunkah0lic    schedule 23.08.2017