在android中监听呼出电话(电话拦截、修改呼出电话)

来源:未知 责任编辑:智问网络 发表时间:2013-10-22 19:21 点击:

在android中向外拨打电话时系统会发出一个有序广播,虽然该广播最终会被拔号器里的广播接收者所接收并实现电话拔打,但我们可以在广播传递给拔号广播接收者之前先得到该广播,然后清除传递给拔号广播接收者的电话号码,在拔号广播接收者接收到该广播时,由于电话号码为null,因此取消电话拔打。

具体实现:

1.定义广播接收者接收 android.intent.action.NEW_OUTGOING_CALL

<receiver android:name=".OutgoingCallReceiver">

    <intent-filter android:priority="1">

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

    </intent-filter>

</receiver>

2.添加权限<uses-permission  android:name="android.permission.PROCESS_OUTGOING_CALLS"/>

3.实现代码

public class OutgoingCallReceiver extends BroadcastReceiver {

     public void onReceive(Context context, Intent intent) {

           setResultData(null); //清除电话,广播被传给系统的接收者后,因为电话为null,取消电话拔打

      

          // 同样如果你想修改外拔的电话号码,可以这样做

          // String phone = getResultData();//得到外拔电话

          // setResultData(“12593”+ phone);//在电话前面加上12593

     }

}

    发表评论
    请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
    用户名: 验证码:点击我更换图片
    最新评论 更多>>

    推荐热点

    • Android 完全退出程序
    • 原创:Android应用开发-Andorid歌词秀,含源码
    • android 屏幕保护
    • Android手机软件汉化教程---第四课 dex文件汉化
    • 众多Android 开源项目推荐,给力工作给力学习
    • Android Audio代码分析4
    • Android得到已安装的应用程序信息!
    • Android开发者指南(29) —— USB Host and Accessory
    • Android成长的幕后推手:工程师鲁宾
    网站首页 - 友情链接 - 网站地图 - TAG标签 - RSS订阅 - 内容搜索
    Copyright © 2008-2015 计算机技术学习交流网. 版权所有

    豫ICP备11007008号-1