如何从Android应用中的意图中获取电话号码

时间:2015-01-26 08:53:33

标签: android android-intent

我制作了一个设置为拨号器的应用。我不确定如何从我的应用程序外部获取有人点击的人数(例如,打开拨号器的号码浏览器中的链接)并选择我的应用程序作为拨号程序。

我使用的意图过滤器:

        <intent-filter>
            <action android:name="android.intent.action.VIEW" />
            <action android:name="android.intent.action.DIAL" />
            <category android:name="android.intent.category.DEFAULT" />
            <category android:name="android.intent.category.BROWSABLE" />
            <data android:scheme="tel" />
        </intent-filter>

我曾经使用getIntent方法来获取意图,但我不确定何时应该调用getData以及何时调用getExtras,因为它不是我自己创建的意图在这种特殊情况下,不确定如何从意图中获取数字。

3 个答案:

答案 0 :(得分:0)

使用getData()提取tel:XXXXX表单的URI,这是您的电话号码。

  

输入:如果没有,则启动空拨号器; else getData()是要拨打的电话号码的URI或显式电话号码的tel:URI。

http://developer.android.com/reference/android/content/Intent.html#ACTION_DIAL

答案 1 :(得分:0)

您可以尝试使用记录的函数getNumberFromIntent(更多信息here

希望有所帮助

答案 2 :(得分:-1)

 <TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:autoLink="phone"
android:linksClickable="true"/>

这个方法确实有效