1 添加权限
<uses-permission android:name="android.permission.READ_PHONE_STATE"/>
2 注册BroadcastReceiver
class XXReceiver : BroadcastReceiver() {
override fun onReceive(context: Context?, intent: Intent?) {
try {
if (intent!!.action.equals(TelephonyManager.ACTION_PHONE_STATE_CHANGED)) {
// 处理来电
val state = intent.getStringExtra(TelephonyManager.EXTRA_STATE)
if (state == TelephonyManager.EXTRA_STATE_RINGING) {
//来电话了
}
}
}catch (e:Exception){
}
}
}
3 声明BroadcastReceiver
<receiver android:name=".CallReceiver"
android:exported="true">
<intent-filter>
<action android:name="android.provider.Telephony.SMS_RECEIVED" />
</intent-filter>
</receiver>