android监听来电
要在Android设备上监听来电事件,可以使用以下方法:
- 创建一个BroadcastReceiver类,用于接收来电广播:
public class IncomingCallReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
String state = intent.getStringExtra(TelephonyManager.EXTRA_STATE);
if (state.equals(TelephonyManager.EXTRA_STATE_RINGING)) {
// 处理来电事件
String incomingNumber = intent.getStringExtra(TelephonyManager.EXTRA_INCOMING_NUMBER);
// ...
}
}
}
- 在AndroidManifest.xml文件中注册BroadcastReceiver,添加以下代码:
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<application>
<receiver android:name=".IncomingCallReceiver">
<intent-filter>
<action android:name="android.intent.action.PHONE_STATE" />
</intent-filter>
</receiver>
</application>
- 在Android设备上申请读取电话状态的权限,可以在运行时或者在AndroidManifest.xml文件中添加以下代码:
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
- 现在,每当有来电时,IncomingCallReceiver类的onReceive方法就会被调用,您可以在该方法中处理来电事件。
请注意,您需要在AndroidManifest.xml文件中添加必要的权限和注册BroadcastReceiver,以及在设备上授予读取电话状态的权限
原文地址: https://www.cveoy.top/t/topic/iEwG 著作权归作者所有。请勿转载和采集!