在Android 9上的电话:
String incomingNumber = intent.getStringExtra(TelephonyManager.EXTRA_INCOMING_NUMBER);
总是返回null,如何在Android9下修复此问题?它适用于我的旧版本。这几天如何获得来电号码?
您需要首先授予READ_PHONE_STATE
和READ_CALL_LOG
权限,然后准备好两个广播 - 一个没有数字作为documented here:
如果接收应用具有Manifest.permission.READ_CALL_LOG和Manifest.permission.READ_PHONE_STATE权限,则它将接收两次广播;一个EXTRA_INCOMING_NUMBER填充了电话号码,另一个填充了空白。