人。我正在尝试为Android构建一个voip应用程序。我想利用内置的Android手机拨号器。你们能给我一些参考吗?我一直在谷歌搜索没有运气。感谢
答案 0 :(得分:8)
您需要做的是在要拨打电话的Intent
上设置Activity
过滤器。您可以在 AndroidManifest.xml 文件中执行此操作。修改您的活动定义以包含此意图过滤器:
<intent-filter>
<action android:name="android.intent.action.CALL" />
<category android:name="android.intent.category.DEFAULT" />
<data android:scheme="tel" />
</intent-filter>
注意:有一些替代方法可以调用人(可以在我链接的源代码的 AndroidManifest.xml 中看到,但这是主要的
添加此项将为用户提供在拨打电话时使用您的应用的选项,如果用户愿意,可以将其设置为默认应用。
然后,您可以通过在活动的onCreate()
方法中添加类似此代码的内容来获取电话号码:
final Intent i = getIntent();
final Uri phoneUri = i.getData();
phoneUri 现在包含 tel:00000000000 ,您可以轻松获取Uri object
中的数字如果您将来遇到问题,请查看android source。如果你想看一下,我从phone app source获得了这些代码。
答案 1 :(得分:0)
这应该使用新的特殊权限打开拨号程序:
Intent i = new Intent(Intent.ACTION_DIAL, Uri.parse("tel:0000000000"));
startActivity(i);
这应该打开已插入所需电话号码的拨号器。