Вызовите 911 на Android

Я хочу позвонить номеру экстренной помощи с помощью Android SDK.

Я использую следующий код для вызова номера (911). Этот код отлично работает для всех номеров, кроме 911 (номер экстренной службы). Когда я использую 911, он показывает экран дозвона, который я не хочу. Есть ли какая-либо процедура для вызова 911 без открытия дозвона или мы можем остановить пользователя, чтобы изменить номер на экране набора номера?

Uri callUri = Uri.parse("tel://911");
Intent callIntent = new Intent(Intent.ACTION_DIAL,callUri);
callIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK|Intent.FLAG_ACTIVITY_NO_USER_ACTION);
startActivity(callIntent);

Ответ 1

Приведенный код уже должен работать для этого, но вам нужно разрешение CALL_PHONE и CALL_PRIVILEGED для набора номеров экстренной помощи без отображения набора номера.

Ссылка на Android - разрешение манифеста CALL_PRIVILEGED

Как только это добавлено в манифест, вы сможете использовать тот же код, используя ACTION_CALL, вместо этого, чтобы набрать номер:

Uri callUri = Uri.parse("tel://911");
Intent callIntent = new Intent(Intent.ACTION_CALL,callUri);
callIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK|Intent.FLAG_ACTIVITY_NO_USER_ACTION);
startActivity(callIntent);

Ответ 2

Action_Dial откроет dialpad, Action_Call вызовет напрямую.

Однако цитата из ACTION_CALL:

Примечание: этот намерение не может использоваться для вызовите номера экстренных служб. Приложения может набрать номера экстренных служб, используя ACTION_DIAL, однако.

Ответ 3

Скажите Intent.ACTION_CALL insted Intent.ACTION_DIAL, это вызовет номер, не показывая его на панели набора номера.