无法在Android P设备上接收PHONE_STATE广播

时间:2018-07-27 13:30:31

标签: android phone-state-listener

这适用于所有Android P之前的所有版本以及Android P模拟器,不适用于装有Android P的设备(已在Xiomi Android P Preview1,诺基亚7 plus DP3和Pixel 2 DP4上进行了测试),为什么会有这个想法?

我在清单中声明了接收者:

<receiver android:name="com.myap.PhoneCallReceiver">
            <intent-filter android:priority="2147483647">
                <action android:name="android.intent.action.PHONE_STATE"/>
            </intent-filter>
        </receiver>-

我也有权限:

<uses-permission android:name="android.permission.READ_CALL_LOG"/>
<uses-permission android:name="android.permission.ANSWER_PHONE_CALLS" />
<uses-permission android:name="android.permission.READ_CONTACTS"/>

在我的PhoneCallReceiver类中,从来没有在那些设备上调用onReceive,但是在带有Android P和Android P之前版本设备的仿真器中使用。

1 个答案:

答案 0 :(得分:0)

问题在于,尽管电话正在振铃并实际上正在接听电话,但使用其他设备直接呼叫该设备,但用于“伪造”该设备的呼叫的应用程序并未触发广播。