来电的 BroadcastReceiver?

BroadcastReceiver for incoming calls?

我想要 BroadcastReceiver 来电。 我在 Whosebug 上搜索过这个并阅读了答案,但是当 Android 设备开始响铃时它不会记录。这是我的代码 -

 public class Mybrd extends BroadcastReceiver {

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

 Log.i("LOG", "LOG ME");

 }
 } 

清单:

  <receiver android:name=".Mybrd">

 <intent-filter>

 <action android:name="android.intent.action.PHONE_STATE" />

 <action android:name="android.intent.action.NEW_OUTGOING_CALL" />

 </intent-filter> 

</receiver>

检查清单中的 registerreceiver 是否正确 file.Please 如果接收器不在根包中,请使用完全限定的包名称注册接收器。

public void onReceive(Context context, Intent intent) {
String phoneState =intent.getStringExtra(TelephonyManager.EXTRA_STATE);
if (phoneState.equals(TelephonyManager.EXTRA_STATE_RINGING)) {
 Log.i("LOG", "LOG ME");}}

尝试使用上面的代码。添加权限

<uses-permission android:name="android.permission.READ_PHONE_STATE"/>