gpt4 book ai didi

android - 将手机号码从默认的 android 拨号器发送到我的应用程序

转载 作者:行者123 更新时间:2023-11-29 14:15:01 25 4
gpt4 key购买 nike

我有一个调用 API 进行电话调用的应用程序,当用户从 Android 手机的默认拨号器调用号码时,该号码应复制到第二个应用程序(免费调用 twilio)中,如图所示。

enter image description here

这是我尝试过的方法,但没有成功。

<activity
android:name=".MainActivity"
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>

有人可以帮忙吗? :-)

最佳答案

请使用下面的代码

在 Manifest 文件中像这样注册一个 BroadcastReceiver:

    <!-- DIAL Receiver -->
<receiver
android:exported="true"
android:name="receivers.DialBroadcastReceiver" >
<intent-filter >
<action android:name="android.intent.action.NEW_OUTGOING_CALL" />
</intent-filter>
</receiver>

您需要获得 NEW_OUTGOING_CALL 的许可:

<!-- OUTGOING CALL PERMISSION-->
<uses-permission android:name="android.permission.PROCESS_OUTGOING_CALLS" />

public class DialBroadcastReceiver extends BroadcastReceiver {

@Override
public void onReceive(Context context, Intent intent) {

Log.v("DileBroadCastReceiver","In onReceive()");

if (intent.getAction().equals(Intent.ACTION_NEW_OUTGOING_CALL)) {
String number = intent.getStringExtra(Intent.EXTRA_PHONE_NUMBER);

Log.v("DialBroadcast Receiver","Number is: "+number);

}

}
}

关于android - 将手机号码从默认的 android 拨号器发送到我的应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22375554/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com