android framework
一叶知秋dong
好记性不如烂笔头,记录学习和工作中的一些东东。
展开
-
Android IMS 语音通话 vs 视频通话 vs 视频彩铃
背景以下内容基于Android P code。主要差异视频通话比语音通话主要是多了判断是否为视频通话,及视频的显示和传输。如下:video call 视频界面显示控制界面通过IVideoProvider控制camera的显示并设置TextureView等,Ims service通过IVideoCallback来通知一些media的更新。如下视频通话进程交互判断是...转载 2020-02-14 17:57:55 · 2924 阅读 · 0 评论 -
Android视频通话应用设计
背景以下内容基于Android N code。本文会从应用框架、进程交互、流程几个方面,讲解Android手机中视频通话的应用层设计。应用框架设计Android电话模块是一个典型的分层结构设计,视频电话在语音通话结构的基础上增加了一些类,但仍遵循原本的分层结构,如下:分层结构可以看到,相较于语音通话,视频通话主要增加了以下内容:在Application层的Telec...转载 2020-02-14 17:56:28 · 1362 阅读 · 0 评论 -
Android 会议电话应用设计
背景以下内容基于Android P code。 并以三方通话为例。合并通话IMS先看下合并通话后Call、Connection的变化:合并通话后Call Connection的变更1. 合并通话后把新的ImsCallSession给了原来的foreground的ImsCall,原来的两个ImsCallSession都断开了。合并通话后ImsCallSession...转载 2020-02-14 17:53:58 · 1204 阅读 · 0 评论 -
Android通话应用设计
目录Android通话应用设计 1一、 背景 1二、 应用框架设计 1三、 常驻进程开机唤醒 21. Phone进程 22. TelecomServer进程 3四、 应用间进程交互 61. 进程交互方式 62. Binder交互过程 6五、 通话流程 71. 拨号流程 82. 电话状态更新流程 93. 用户挂断电话流程 104. 来电流程 1...转载 2020-02-14 17:50:41 · 1349 阅读 · 1 评论 -
Android IMS 通话应用设计
背景以下内容基于Android P code。应用框架设计Android电话模块是一个典型的分层结构设计,如下:分层结构IMS在CS通话的基础上增加了telephony/ims net/ims vendor/ims 和ims相关的media模块。其中:telephony/ims:主要包括了对外接口ImsPhone,通话管理中心ImsPhoneCallTracker,...转载 2020-02-14 17:32:05 · 2527 阅读 · 0 评论 -
Android 7.0 IMS框架详解
本文主要讲解IP Multimedia Subsystem (IMS)在Android 7.0上由谷歌Android实现的部分内容。从APP侧一直到Telephony Framework,是不区分CS流程还是PS流程的。到了Telephony Framework模块,会依据IMS相关的状态信息(Registration Status,Service Status等)和用户设置信息(Volte E...转载 2019-11-27 20:53:36 · 1559 阅读 · 0 评论 -
Android连接性能差问题分析
有那么一个应用,同样的服务器端,同样的Wi-Fi网络下,Android连接速度总是慢过iphone一个数量级。起先怀疑跟Android的硬件有关,无奈的是通过3G甚至于2G EDGE无线连接,速度均超过Wi-Fi。然后这个责任就一把归结到了“Android不如iPhone”,“Android七拼八凑”之类无休止的平台沙文主义之上了。 接手这个问题之后,起先也是渺无头绪。先...转载 2019-10-29 16:18:34 · 297 阅读 · 0 评论 -
Wifi模块—源码分析Wifi热点的开启(Android P)
一 前言Android使用一个修改版wpa_supplicant作为daemon来控制WIFI,它是一个安全中间件,代码位于external/wpa_supplicant,为各种无线网卡提供统一的安全机制。当然在这里只是介绍一下wpa_supplicant和hostapd,研究分析的部分主要还是应用层和java框架层,有时也会涉及Native层。wpa_supplicant...转载 2019-10-14 11:37:43 · 4485 阅读 · 1 评论 -
Android wifi打开流程(Android O)
一.AndroidOwifi架构:由于AndroidO的Treble化,AndroidO上Wifi架构变动也比较大,尤其是JNI层、Hal层、HIDL层。下图是AndroidOTrebleHIDL大致结构:下图是AndroidOwifi架构:下图是Android Wlan架构(from android官网)二.函数调用流程:1.在wifis...转载 2019-09-29 11:54:42 · 449 阅读 · 0 评论 -
android 内容提供组件机制
内容提供组件提供了一个进程安全访问另一个进程数据的方法和接口,该接口对数据进行了封装,使客户端可以以一致的接口跨进程访问各种数据。 如下是ContentProvider的系统类图: 图中左边部分是客户端部分,右边部分是处于另外进程的ContentProvider组件和内容提供的服务部分。整个系统转载 2016-12-13 11:19:51 · 416 阅读 · 0 评论 -
sipdroid目录结构和其他说明
1. sipdroid\src\org\zoolu中是sip协议栈的实现2. sipdroid\src\org\sipdroid中是软电话的实现3. sipdroid\src\com中是stun相关的实现4. sipdroid默认使用的编码格式为G711-A率。5. 直接用ant debug的方法编译出的转载 2012-05-30 11:33:32 · 1706 阅读 · 0 评论 -
java的RIL框架处理modem网络状态改变事件的流程
###############################################################################################PhoneApp收到一个RIL_UNSOL_RESPONSE_NETWORK_STATE_CHANGED网络状态变化事件。发送message到注册的handler上。GsmServiceStateTra转载 2013-05-25 10:40:43 · 2196 阅读 · 0 评论 -
ANDROID 系统网络连接和管理机制
一 网络连接功能介绍 ANDROID 系统网络连接和管理服务由四个系统服务ConnectivityService、NetworkPolicyManagerService、NetworkManagementService、NetworkStatsService共同配合完成网络连接和管理功能,四个服务只有ConnectivityService、NetworkPolicyManag转载 2013-05-30 08:31:44 · 1997 阅读 · 0 评论 -
Andoid Audio 架构分析
一个音频系统大概包括音频的管理、声音播放、声音录音和声音音效几个部分,这几个部分分工协作来完成音频的功能,·音频管理:负责音量调节、音频设备选择、响铃模式选择等;·声音播放:负责一个音频流的创建、参数设置、播放、暂停、释放;·声音录音:负责一个录音音轨的创建、管理;·声音音效:负责控制声音的效果。Android 系统对audio的实现是比较复杂的,但实现的方法还是对音频系统原创 2013-06-03 21:57:49 · 4041 阅读 · 0 评论 -
Android Vold架构
1. 总体架构2. 流程概览2.1 开启Vold2.2 引导Uevent2.3 处理事件 Vold - Volume Daemon存储类的守护进程,作为Android的一个本地服务,负责处理诸如SD、USB等存储类设备的插拔等事件。1. 总体架构Vold服务由volumeManager统一管控,它将具体任务分别分派给netlinkManager, command转载 2013-06-03 19:04:34 · 1265 阅读 · 0 评论 -
Android WiFi--系统架构
1. 系统架构 Android WiFi系统引入了wpa_supplicant,它的整个WiFi系统以wpa_supplicant为核心来定义上层用户接口和下层驱动接口。整个WiFi系统架构如下图所示: 一切尽在上图中,下面将对每部分进行详细分析。1.1 WifiService 由SystemServer启动的时候生成的Connecttivity转载 2015-02-04 09:07:23 · 951 阅读 · 0 评论 -
Android Gps 系统分析
目录(?)[+]GPS架构GPS分析1头文件2硬件适配层2 JNI适配层3 Java Framework31接口和类简介32使用Gps编程接口33接口和类分析3参考文章1 GPS架构2 GPS分析2.1 头文件头文件定义在:hardware/libhardware/include/hardwar转载 2015-03-24 19:45:46 · 998 阅读 · 0 评论 -
Android窗口系统机制之KEYGUARD机制
Android的KEYGUARD相关类提供了屏幕锁屏等相关功能,虽然功能简单,但是相关的逻辑还是挺复杂的,要处理屏幕处于不同状态的情况,要监控各种事件(时间,电池,Sim状态,电话状态),因此GOOGLE还是对屏幕功能进行了细致的设计,架构上采用了中介模式、MVC模式等设计模式。系统类图如下: PhoneWindowManager、PowerManager、转载 2016-12-13 11:17:06 · 1010 阅读 · 0 评论 -
android socket 编程
一、需要注意的地方:1.需要添加网络权限:;2.android4.0平台默认不允许在主线程中进行网络访问,所以要新建thread来运行socket读写的程序; 二、tcp socket 通讯示例package test.dxp.sockets;import java.io.BufferedReader;import java.io.IOException;impor原创 2012-05-29 16:46:04 · 2270 阅读 · 0 评论