我有一个简单的应用程序,可以阻止某些欺诈/垃圾邮件发送者号码。它还具有阻止私人(隐藏)号码的选项。对于较旧的api,私有数字被标识为“ -1”或“ -2”-某些负值。 当前在Android P上,在给您INCOMING编号之前,会多次调用已读电话状态广播。在给您实际号码之前,INCOMING号为“ null”。并且私有号码也被标识为“空”。现在,我无法区分android p的行为和真实的私人数字。有没有办法在Android P上识别私人号码?
清单
<receiver android:name=".service.receivers.CallBroadcastReceiver">
<intent-filter android:priority="100">
<action android:name="android.intent.action.PHONE_STATE" />
</intent-filter>
</receiver>
接收器。 得到号码
val number = intent.getStringExtra(TelephonyManager.EXTRA_INCOMING_NUMBER) ?: return
我已经向Google解决了这个问题,好像他们不想回答