拨打电话的流程( 二 )


拨打电话的流程

文章插图
1.6 接下来系统会调用函数 。在这个方法中值得关注的是这个方法 。
void ( ) {
if () {
().(..D);
} else {
().(..D);
}该方法决定了 , 当挂完电话以后是否进入锁屏界面 。在G6中遇到一个问题就是 当对方打电话结束后 , 总是进入屏幕锁的状态 , 只要在()函数中调用(true)就可以实现挂电话不进入锁屏界面
1.7 最后就是调用()函数 , 这个函数逻辑事件比较少 。
1.8 PS:.java一点被调用过一次 , 除非是内存不足或者是关机 , 一般情况都不会调用()函数 , 这样可以提高每次拨打电话的时候界面的加载 。另外还要再关注下该类的函数 , 按钮的处理事件要一步一步跟进 , 这里就不做描述 。
1.9 在来电时候会有个接听电话的UI为.java, 在()函数中会根据电话的状态来确定是否要显示该UI:
if ( = = Phone.State.) {
.ible(true);
} else { .ible(false); }
他的布局文件为.xml
接下来我们关注下.java这个类 , 其中有个重要的控件就是 , 也就是滑动接电话和挂电话的控件 , 他的初始化在函数中实现;滑动的逻辑事件在中实现 。et该方法是滑动后的动画效果 。G6中CPU主频过低 , 附带动画效果会很卡 , 所以我们可以在这个方法中把他的动画效果给去了 。
以上内容是个人认为是一个应用层拨打电话的流程走势 , 与ril相关的以及应用层和ril层间的交互 , 还需要进一步了解和学习 , 也希望能提供和介绍一些相关资料可以学习 。上述文档为手打 , 出现的错别字或者语法问题 , 还敬请原谅 , 大家有什么建议或者意见可以对此文档进行补充和修改 。
【拨打电话的流程】二 来电电话的流程