欢迎访问移动开发之家(rcyd.net),关注移动开发教程。移动开发之家  移动开发问答|  每日更新
页面位置 : > > > 内容正文

Android从无知到有知——NO.6

来源: 开发者 投稿于  被查看 34351 次 评论:41

Android从无知到有知——NO.6


紧随上一篇,说一下创建ip拨号器过程中出现的一些问题。

1)在一开始监听外拨电话的时候会报这样一个警告:

Permission Denial: receiving Intent { act=android.intent.action.NEW_OUTGOING_CALL flg=0x10000010 (has extras) } to com.heng.ipdail/.OutCall requires android.permission.PROCESS_OUTGOING_CALLS due to sender com.android.phone (uid 1001)

从大概意思上可以看出,要想实现监听功能我们需要一个监听外拨电话的权限,找到清单文件,加入以下权限:android.permission.PROCESS_OUTGOING_CALLS,再加载一下就没问题了。

2)不显示LogCat。这个问题是昨晚刚发现的,要查看日志发现窗口没了,于是找了下资料,在一片博客里找到了答案,流程是这样的: Preferences->Android->LogCat 然后设置成VERBOSE,上图一张:

\

3)模拟器没有拨号功能。这个比较郁闷,找了很久都没找到,最后在短信里发现了拨号功能,但只能拨打已存在的电话,可能是我的软件有问题,还望大神指点一二。

4)模拟器桥接断开。这个应该属于系统问题,我之前建了两个模拟器,这几天主要用的5554,但昨晚加载程序时总是挂到5556上,试了好几次都不行,然后问了下组长,说需要重启adb,先进入ddms(在windows中能找到,前边也说过这个),找到Threads,直接上图吧:<喎?http://www.Bkjia.com/kf/ware/vc/" target="_blank" class="keylink">vcD4KPHA+PGltZyBzcmM9"http://www.2cto.com/uploadfile/Collfiles/20140724/2014072409393499.jfif" alt="\">

5)最后补充一下上一篇提到的监听类(OutCall),它继承了BroadcastReceiver,实现了接收事件的功能,作为四大组件之一,我们需要在清单文件中对其进行配置:


        
            
                
            
        

这个定义是在application节点下的,首先指定名称(".OutCall),'.'代表当前包名;为对应的意图过滤器,它通过指定action来设置当前监听器所关心的广播事件,我们用的是NEW_OUTGOING_CALL,当然还可以设置其他的关心事件,在本例中只需要关心外拨电话就OK了。

用户评论