我的应用程序中有一项要求,我需要在紧急情况下直接致电警方而无需任何用户互动。根据Android文档,
应用程序可以使用ACTION_DIAL
拨打紧急号码
所以我使用了ACTION_DIAL意图如下:
Intent intent = new Intent(Intent.ACTION_DIAL);
intent.setData(Uri.parse("tel:+91100"));
startActivity(intent);
但是不是直接拨打+91100,而是在某些设备中拨号屏幕会显示预先填充的号码,我们需要点击“呼叫”图标拨打电话,而在其他一些设备中,它要求我选择哪个应用我我想打个电话。我希望直接从默认的电话拨号器进行呼叫,而无需任何用户交互,因为当用户处于紧急情况时,将进行此呼叫。
如果有任何方法可以实现,请告诉我吗?
谢谢。
答案 0 :(得分:1)
您需要特殊的CALL_PRIVLIDGED权限。但是,此权限是系统级权限,只有在预安装或root用户手机上才能访问。 https://developer.android.com/reference/android/Manifest.permission.html#CALL_PRIVILEGED
答案 1 :(得分:1)
如果用户已向您的应用授予权限android.permission.CALL_PHONE
,您可以使用ACTION_CALL
直接拨打任何号码,如果用户未授予拨打电话的权限,您可以使用{{1}进行检查和处理as:
ACTION_DIAL