2013-02-12 107 views
0

我正在使用我的PHP服务器从我的应用程序拨打电话。从Android拨号获取号码?

我有一个条件,每当用户按下Android设备的绿色通话按钮和拨号后,我必须给我的用户一个选项,从我的应用程序或普通SIM打电话。我也是这样做的。 现在我想获得拨号前拨号的号码,然后切换到应用

意思是如果用户选择我的应用程序来打电话,那么我必须拨打号码拨打电话。

我正在使用下面的代码来生成弹出来使用我的应用程序调用。该代码在特定活动内的清单中写为Intent过滤器。

<activity 
      android:name="com.tv.longdistcall.PlaceLongDistCall" 
      android:screenOrientation="portrait" 
      android:theme="@android:style/Theme.NoTitleBar" > 
      <intent-filter> 
       <action android:name="android.intent.action.CALL_BUTTON" /> 

       <category android:name="android.intent.category.DEFAULT" /> 
      </intent-filter> 
      <intent-filter> 
       <action android:name="android.intent.action.CALL_PRIVILEGED" /> 

       <category android:name="android.intent.category.DEFAULT" /> 

       <data android:scheme="tel" /> 
      </intent-filter> 
     </activity> 

请给我建议,如何让切换到活动之前拨打的拨号数量。

+0

可以看到这个http://stackoverflow.com/questions/9909153/how-to-get-dialed-mobile-number-in-my-application – user1969053 2013-02-12 09:27:45

+0

@ njzk2:正如我上面写的,我正在使用该代码这是给我一个选择应用程序或电话呼叫的选项。接近的问题是,我没有收到我的应用程序中拨打的号码。 请让我知道,如果你现在可以帮忙。 另外我正在尝试与BroadcastReceiver,但它不会给我一个选择用户的选项。 – 2013-02-12 09:59:06

回答

0

您需要使用NEW_OUTGOING_CALL意向过滤器创建新的BroadcastReceiver。该接收器会拦截设备上CALL_PRIVILEGED或CALL操作的每个调用,而不管目标是哪个应用程序。

目标号码可以在Intent.EXTRA_PHONE_NUMBER中的接收者的意图额外找到。