【问题标题】:Get number from dial in Android?从Android拨号中获取号码?
【发布时间】:2013-02-12 09:17:45
【问题描述】:

我正在开发一个应用程序,我必须使用我的 PHP 服务器从我的应用程序进行调用。

我的情况是,每当用户按下 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>

请建议我,在切换到活动之前如何在拨号器上拨打号码

【问题讨论】:

  • @njzk2 :正如我上面所写,我正在使用该代码,它让我可以选择应用程序或电话进行呼叫。 approch 的问题是,我没有在我的应用程序中获得拨打的号码。如果您现在可以提供帮助,请告诉我。我也在尝试使用 BroadcastReceiver,但它不会给我一个选择用户的选项。

标签: android


【解决方案1】:

您需要使用 NEW_OUTGOING_CALL 意图过滤器创建一个新的 BroadcastReceiver。此接收器拦截设备上对 CALL_PRIVILEGED 或 CALL 操作的每次调用,无论目标应用程序是什么。

可以在 Intent.EXTRA_PHONE_NUMBER 中接收者的 Intent Extra 中找到目的地号码。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-12-14
    • 1970-01-01
    • 2012-06-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-03-26
    • 1970-01-01
    相关资源
    最近更新 更多