您的位置:首页 > 移动开发 > Android开发

Android 开发总结之获取来电号码

2014-12-18 11:31 435 查看
创建一个广播事件接收者,并在清单文件中注册此文件,过滤意图为android.intent.action.PHONE_STATE
在intellij中因为未提示还以为没有这个,其实是有的,增加权限android.permission.READ_PHONE_STATE
<receiver android:name=".receiver.CallReceiver">

<intent-filter>

<action android:name="android.intent.action.PHONE_STATE"/>

</intent-filter>

</receiver>

[/code]
<uses-permission android:name="android.permission.READ_PHONE_STATE"/>

[/code]
在receiver中确定 intent的action是电话状态改变并且带有的参数 改变后的状态为RINGRING,即电话响起时,获取手机号码

public class CallReceiver extends BroadcastReceiver {

@Override

public void onReceive(Context context, Intent intent) {

if (TelephonyManager.ACTION_PHONE_STATE_CHANGED.equals(intent.getAction()) && "RINGING".equals(intent.getStringExtra(TelephonyManager.EXTRA_STATE))) {

String number = intent.getStringExtra(TelephonyManager.EXTRA_INCOMING_NUMBER);


}

}

}

[/code]此时获取到的number即为来电号码。

来自为知笔记(Wiz)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: