网址:http://www.2cto.com/kf/201404/290996.html 最近在学习Android 4.4上面的WifiDisplay(Miracast)相关的模块,这里先从WifiDisplay用到的各个Service讲起,然后再从WifiDisplaySettings里面讲解打开wfd的流程.首先看下面的主要几个Service的架构图: 相关Service的启动 图中主要有以下几个模块,DisplayManagerService.MediaRouterService.Wifi…
WiFi无线连接过程中有哪几个主要步骤?[1]在使用WIFI功能时,经常性的操作是打开手机上的WiFi设备,搜索到心目中的热点,输入密码,联网成功,成功上网.这个看似简单的过程,背后却是隐藏着大量的无线通信技术.用几个专业术语来表示这个过程,分别是:扫描(Scanning).认证(Authentication).关联(Association). [2]扫描(Scanning):专业术语中的扫描可以简单粗暴的理解为搜索周边的WiFi热点.我们要加入一个无线网络,就需要找到它的网络名称,即SSID.…
前言 本文主要讲解RegistrantList的原理,以及如何快速分析RegistrantList相关的代码流程.在Telephony模块中,在RIL.Tracker(ServiceStateTracker.CallTracker.DcTracker).Phone(PhoneBase及其子类).UICC框架.CallManager等等中都大量使用到的RegistrantList,可见RegistrantList使用范围之广.如果代码流程中使用了RegistrantList,如何分析下一步代码流程…
接下来的分析先从MMS中四大组件(Activity ,BroadCastReceiver,Service,ContentProvider),也是MMS中最核心的部分入手: 一. Activity  1.ConversationList 对话列表界面,这是进入应用程序的主界面.它有两个配置属性android:configChanges="orientation|keyboardHidden":在Android系统中,当程序所运行的环境(如:屏幕方向.键盘状态.字体等级,等等 )发生变化后…
这一章我们通过MediaPlayerService的注冊来说明怎样在Native层通过binder向ServiceManager注冊一个service,以及client怎样通过binder向ServiceManager获得一个service,并调用这个Service的方法. Native Service的注冊 这里以MediaPlayerService举例来说明怎样在Native层注冊Service,首先来看main_mediaservice.cpp的main方法: int main(int a…
什么是android测试,分为黑盒测试和白盒测试. 黑盒就是测试人员看不到代码的,针对需求而进行的一系列测试动作,看代码所展现出来的效果是否和需求一样,或者有什么意外的情况没有处理等,一般开发交给测试人员,测试人员经过半天或者一天测试后,会返回一个测试的excel表单,里面有一条条的bug单,或者显示和功能不匹配,或者出现闪退等意外没有处理等等,开发人员根据bug单去修复就可以了.这里面蕴含了一个软件需求转换成测试需求,开发人员满足测试需求的关系了.有点类似听到的TDD(test-drive-d…
转自:http://blog.csdn.net/lilian0118/article/details/23168531 这一章中我们来看Wifi Display连接过程的建立,包含P2P的部分和RTSP的部分,首先来大致看一下Wifi Display规范相关的东西. HIDC: Human Interface Device Class  (遵循HID标准的设备类)UIBC: User Input Back Channel  (UIBC分为两种,一种是Generic,包含鼠标.键盘等:另一种是HI…
地址:http://blog.csdn.net/innost/article/details/8474683 Android Wi-Fi Display(Miracast)介绍 2012年11月中旬,Google发布了Android 4.2.虽然它和Android 4.1同属Jelly Bean系列,但却添加了很多新的功能.其中,在显示部分,Android 4.2在Project Butter基础上再接再厉,新增了对Wi-Fi Display功能的支持.由此也导致整个显示架构发生了较大的变化.…
前言 本文主要讲解RILJ工作原理,以便更好地分析代码,分析业务的流程.这里说的RILJ指的是RIL.java (frameworks\opt\telephony\src\java\com\android\internal\telephony) ,RILC指的是Ril.cpp (hardware\ril\libril)1. RILJ的创建 RILJ的继承关系如下: 可以看到RILJ继承自BaseCommands并且实现了CommandsInterface接口,RILJ中有两个子线程RILSend…
本文将结合前面五篇文章所讲解的知识,综合起来,实现一个接口扩展的功能.如果还没有阅读过前面五篇文章的内容,请先阅读:<Android Telephony分析(一) — Phone详解 ><Android Telephony分析(二) — RegistrantList详解 ><Android Telephony分析(三) — RILJ详解 ><Android Telephony分析(四) — TelephonyManager详解 ><Android Te…