Запрос на изменение набора номера по умолчанию не показывает системное диалоговое окно на некоторых устройствах - PullRequest
0 голосов
/ 15 января 2019

Наше приложение должно стать приложением для набора номера по умолчанию (также известным как «обработчик телефона по умолчанию», «приложение вызова по умолчанию»), чтобы оно могло совершать звонки в соответствии с новой политикой разрешений Android .

Мы используем следующее намерение, чтобы показать системное диалоговое окно, чтобы попросить пользователя сделать наше приложение по умолчанию:

Intent intent = new Intent(TelecomManager.ACTION_CHANGE_DEFAULT_DIALER);
intent.putExtra(TelecomManager.EXTRA_CHANGE_DEFAULT_DIALER_PACKAGE_NAME, getPackageName());
startActivityForResult(intent, RC_DEFAULT_PHONE);  

Это хорошо работает на всех наших тестовых устройствах и, по-видимому, для большинства пользователей., но не показывает никакого диалога и сразу возвращает RESULT_CANCELED код результата для некоторых устройств.

При просмотре отчетов кажется, что большинство, если не все отчеты поступают с устройств Huawei (и от бренда Huawei - Honor).

Есть ли у вас идеи, как отобразить диалоговое окно приложения вызова по умолчанию на этих устройствах?
Любое другое намерение, которое мы можем выполнить, чтобы помочь пользователю вручную установить нашиприложение будет вызывать приложение по умолчанию?

1 Ответ

0 голосов
/ 15 января 2019

вернулось некоторое прибегание к гуглу, что устройства чести требуют, чтобы вы изменили приложение для набора номера по умолчанию в настройках, может быть, запуск намерения непосредственно на этой странице настроек?Что касается конкретного аргумента страницы настроек, вам нужно будет проверить устройство чести

startActivityForResult(new Intent(android.provider.Settings.ACTION_SETTINGS), 0);

, затем вы можете обработать результат в вашем приложении (проверив, по умолчанию ли сейчас ваш номеронабиратель), иначе сообщите пользователю об ошибке.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...