Android-->电话广播的监听
来源:互联网 发布:淘宝债权车能买吗 编辑:程序博客网 时间:2024/04/29 14:30
1:AndroidManifest.xml 注册广播
<!--打电话广播--><uses-permission android:name="android.permission.PROCESS_OUTGOING_CALLS"/><!--监听电话状态--><uses-permission android:name="android.permission.READ_PHONE_STATE"/>
<receiver android:name=".service.PhoneBroadcastReceiver"> <intent-filter android:priority="1000"> //主动打电话时,发送的广播 <action android:name="android.intent.action.NEW_OUTGOING_CALL"/> //电话状态改变时,发送的广播 (振铃,挂断,接通) <action android:name="android.intent.action.PHONE_STATE"/> </intent-filter></receiver>
2:onReceive
@Overridepublic void onReceive(Context context, Intent intent) { log.info("收到电话广播:{}", intent == null ? "null" : intent.getAction()); // 如果是拨打电话 if (intent.getAction().equals(Intent.ACTION_NEW_OUTGOING_CALL)) { //拨打电话会优先,收到此广播. 再收到 android.intent.action.PHONE_STATE 的 TelephonyManager.CALL_STATE_OFFHOOK 状态广播; String phoneNumber = intent.getStringExtra(Intent.EXTRA_PHONE_NUMBER); log.info("call OUT:{}", phoneNumber);//获取拨打的手机号码 } else { // 如果是来电 TelephonyManager tManager = (TelephonyManager) context .getSystemService(Service.TELEPHONY_SERVICE); //电话的状态 switch (tManager.getCallState()) { case TelephonyManager.CALL_STATE_RINGING: //等待接听状态 mIncomingNumber = intent.getStringExtra("incoming_number"); log.info("RINGING :" + mIncomingNumber); break; case TelephonyManager.CALL_STATE_OFFHOOK: //接听状态 break; case TelephonyManager.CALL_STATE_IDLE: //挂断状态 break; } }}
3:附加阅读
如果需要挂断电话参考: (可以模拟耳机线上的接听和挂断广播, 实现相应的功能.)
http://gqdy365.iteye.com/blog/2173057
http://bbs.51cto.com/thread-1078059-1.html
http://blog.csdn.net/sodino/article/details/6181610
0 0
- Android-->电话广播的监听
- Android电话广播监听
- android 短信,电话监听广播
- Android广播接实现电话的监听(电话的状态,拦截)
- android 电话状态的监听
- android电话状态的监听
- android电话状态的监听
- Android 电话状态的监听
- 关于无法使用广播接收器对电话的监听问题
- Android 监听电话的拨打状态
- android 简单实现电话的监听
- android 上层电话状态的监听
- 22 监听打出电话广播代码案例
- Android 电话监听
- Ohone/android 监听电话
- android 之电话监听
- Android-电话监听工具
- android 实现监听电话
- ios10适配
- 在Windows Server 2008上部署SVN代码管理器
- dom4j
- 线段树模板
- Oracle 11gR2干净的清除并重建OCR和表决磁盘的方法
- Android-->电话广播的监听
- MongoDB 更新文档
- dbcp连接数据库简单测试
- 看病难难于上青天
- 很认真地聊一聊程序员的自我修养
- 电话状态
- 存储过程详解
- cryptos
- 如何复制js脚本alert或者系统对话提示框的内容