我已经在SO上查看了几个类似的问题,在参考了无数的教程之后尝试了所有可能的调整和更改,以及SO中的答案,但我的接收器没有在PHONE_STATE更改时被调用。
这是我的AndroidManifest.xml
文件。
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
.....
<receiver android:name=".CustomReceivers.MissedCallReceiver" android:enabled="true">
<intent-filter>
<action android:name="android.intent.action.PHONE_STATE"/>
</intent-filter>
</receiver>
.....
这是我的BroadcastReceiver。
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.widget.Toast;
public class MissedCallReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
Toast.makeText(context, "Activated", Toast.LENGTH_SHORT).show();
}}
绝对没有任何错误显示在任何地方。当应用程序处于活动状态时,我尝试从另一台设备调用,但似乎没有任何变化。