Android:如何显示我的设备上安装的拨号器应用程序列表,而不是直接调用默认拨号器

时间:2015-08-17 06:58:01

标签: android android-intent android-dialer

Android:如何显示我的设备上安装的拨号器应用列表,而不是直接调用默认拨号器

Intent intent = new Intent(Intent.ACTION_CALL);
startActivity(intent); 

许可 -

<uses-permission android:name="android.permission.CALL_PHONE" /> 

因此,使用此代码调用deault拨号程序应用程序。我想要Android建议我可以用于调用功能的应用列表的行为。

1 个答案:

答案 0 :(得分:3)

使用ACTION_CALL意图时,您无法显示拨号器列表。

您需要特殊权限,因为ACTION_CALL是受保护的操作,允许您直接拨打电话号码,而无需用户进行互动。

您可以为ACTION_DIAL意图制作Intent选择器,允许您显示具有拨号器的应用列表。您可以使用此代码。

final Intent intent = new Intent();
intent.setAction(Intent.ACTION_DIAL);
intent.setData(Uri.fromParts("tel", "123456", null));
startActivity(Intent.createChooser(intent, ""), REQUEST_CODE));

我希望它有所帮助!