【Android — 机制】
文章平均质量分 91
南丶烟
这个作者很懒,什么都没留下…
展开
-
Android—— 4.2 Vold挂载管理_VolumeManager (三)
VolumeManager就是整个Android 磁盘挂载Vold机制的核心调度,上下连接的中转站!我从Vold main代码的顺序结构来一次分析,上一篇Android—— 4.2 Vold挂载管理_CommandListener (二) 中分析了与framework层交互的CommandListener的功能作用。这里分析VolumeManager在整个体系中所扮演的角色和职能!原创 2014-08-15 14:51:10 · 5607 阅读 · 0 评论 -
Android—— ubuntu下【CTS】测试TV真机
最近接触到CTS,据传不懂CTS就不算一个合格的android开发人员,我之前一直没见周边谁用过,作为一个产品开发的android人员,我还是太年轻~原创 2014-10-31 18:55:24 · 4237 阅读 · 0 评论 -
Android——4.2 - 3G移植之路之 APN (五)
APN(Access Point Name),也就是 接入点 ,移动设备使用数据流量上网必须配置的一个参数,代表以何种方式来连接服务台开启数据流量功能.一般有访问WAP或者connect 因特网,国内的运营商2G,3G标识如下:移动公司:2G:GSM、3G:TD-SCDMA联通公司:2G:GSM、3G:WCDMA电信公司:2G:CDMA、3G:CDMA2000关于具体某个运营商的几G网络 的APN 是什么具体可参考/device/sample/etc/apns-full-conf.xml原创 2014-11-19 15:50:18 · 5321 阅读 · 0 评论 -
Android—— 4.2 Vold挂载管理_mmcblk内置-双sdcard (八)
不同平台的mmc分区方案和烧写emmc方式不一样,总之划分一块区域用来当sdcard挂载,并且记住block序号,android的分区类型在linux下制作一般都是ext4格式。可在BoardCondif.mk中添加宏控制:BOARD_MMCBLK_AS_SDCARD := 13#jscese open mmcblk0p13 as sdcard to mount 140724#原创 2014-10-14 11:21:13 · 6903 阅读 · 8 评论 -
Android—— 4.2 Vold挂载管理_Kernel_USB_Uevent (七)
在前文Android—— 4.2 Vold挂载管理_NetlinkManager (四)中有解析到Vold 是从kernel中获取uevent事件,来获取device信息,其中是通过一个Netlink的套接字,目前整个Vold机制也分析完了, 上篇 Android—— 4.2 Vold挂载管理_MountService (六) 分析了机制中最上层的,这里分析一下最下层的kernel uevent事件的发送,以USB设备为例!原创 2014-09-02 18:12:17 · 3678 阅读 · 0 评论 -
Android——bootchart
bootchart:android原生自带的开机性能查看机制。通过收集android开机过程中的各种log数据,最终可以图表的形式展现各个进程在开机过程中的性能。(博客不能断…)编译bootchartbootchart 源码位于:\system\core\init\bootchart.c 属于init 查看对应Android.mk,其中有这么一段:ifeq ($(strip $(INIT_BOO原创 2015-06-12 13:41:05 · 3053 阅读 · 0 评论 -
Android——coredump 配置
kernel支持:由linux支持,进程崩溃时记录存储堆栈空间,寄存器等相关内容,保留致命现场数据,便于分析查找根源。 编译项:Symbol: COREDUMP [=y] Type : booleanPrompt: Enable core dump support Location:(1) -> Userspace binary formats Defined at fs原创 2015-07-16 08:52:09 · 6845 阅读 · 0 评论 -
Android——coredump解析
coredump文件生成前文Android——coredump 配置 记录了android平台上的环境配置,生成方式 正常即为process触发那几种signal 手动coredump状态:连接gdb -gcore pid 终端发送signal终止process: kill -s signal pid 自然发送能产生coredump的signal ,前文有记录,但是有时一次还杀不掉proce原创 2015-07-22 17:13:21 · 11187 阅读 · 1 评论 -
Android——APK 在32bit/64bit平台 动态库问题
目前64bit android系统也慢慢的多了,看到也有apk声称支持64bit system,然后就往里面打包搞了个arm64-v8a 目录,放了个64bit的so,但是apk代码里面却不按规范去load so ,导致一系列 file not found 异常~apk lib目录:先看下apk中的lib打包的目录: 依次代表不同类型的cpuPMS安装路径:pms ins原创 2015-08-04 18:46:15 · 13686 阅读 · 4 评论 -
Android——内存管理-lowmemorykiller 机制
前段时间碰到一个apk多个process依次开跑,跑到最后一个process的时候,第一个process给kill掉了,虽然第一个process中含有broadcast receive,被kill掉的原因是由于触发到了lowmemorykiller,这样一来apk最后的结果就异常了~ 尝试再三 规避掉了这个问题,记录一下~撰写不易,转载需注明出处:http://blog.csdn.net/jsce原创 2015-08-07 10:48:36 · 16943 阅读 · 1 评论 -
Android——NativeActivity - C/C++ Apk开发
从接触android到现在应该差不多有3年的时间了,杂七杂八,从上到下或多或少都有所接触,虽然对Apk的开发涉猎少,但最近才知道NativeActivity这么个东西,不禁感叹android体系兼容的强大,路漫漫其修远兮~概念android基本的四大组件之一Activity,android开发的第一个hello world 创建的就是这个继承了Activity类的类,拥有对应的生命周期原创 2016-03-30 10:47:27 · 9881 阅读 · 1 评论 -
Android——RIL 机制源码分析
Android 电话系统框架介绍在android系统中rild运行在AP上,AP上的应用通过rild发送AT指令给BP,BP接收到信息后又通过rild传送给AP。AP与BP之间有两种通信方式:1.Solicited Response:Ap向Bp发送请求,Bp给Ap发送回复,该类型的AT指令及其回调函数以数组的形式存放在Ril_commands.h文件中: {数组中的索引号,请转载 2014-10-13 16:15:55 · 12224 阅读 · 1 评论 -
Android——sqlite3 基本命令操作
sqlite3 为android所使用的轻量级数据库,小巧方便,用于管理android系统中的各种db文件,在ubuntu中可以安装 sqliteman 来查看android系统中的db文件,Framework中的接口位置:/frameworks/base/core/java/android/database/sqlite/SQLiteDatabase.java原创 2014-10-12 16:00:03 · 10766 阅读 · 0 评论 -
Android——build.prop 解析
一.概念 在Android设备shell终端可以看到/system目录下的build.prop文件,Android的build.prop文件是在Android编译时刻收集的各种property(LCD density/语言/编译时间, etc.),编译完成之后,文件生成在out/target/product//system/目录下。在Android运行时刻可以通过prope原创 2014-01-23 11:37:35 · 13765 阅读 · 1 评论 -
Android—— 4.2 Vold挂载管理_MountService (六)
整个Vold机制应该算system层,与framwork层的交互在Android—— 4.2 Vold挂载管理_CommandListener (二)中有提到过,是通过一个"vold"的socket进行通信的,这里分析一下framework中负责与Vold通信的:MountService原创 2014-09-01 16:04:09 · 4706 阅读 · 0 评论 -
Android—— 4.2 Vold挂载管理_NetlinkManager (四)
在前文Android—— 4.2 Vold挂载管理_主体构建main (一)中有结构图表示,Vold是kernel与用户层的一个交互管理模块,Android—— 4.2 Vold挂载管理_VolumeManager (三) 简单介绍了核心VolumeManager的构建,这篇分析从kernel进程沟通到VolumeManager进程的关键:NetlinkManager原创 2014-08-16 09:34:59 · 4488 阅读 · 0 评论 -
Android—— 4.2 Vold挂载管理_CommandListener (二)
在前一篇博客中介绍了个大体结构 Android—— 4.2 Vold挂载管理_主体构建 (一) ,按照代码的顺序结构来依次分析,这里来看看CommandListener这个类做了什么。一:CommandListener构造在/system/vold/main.cpp的main函数中构建实例:原创 2014-08-11 16:10:13 · 5367 阅读 · 1 评论 -
Android——开机动画
android系统的开机动画可分为三个部分,kernel启动,init进程启动,android系统服务启动。这三个开机动画都是在一个叫做 帧缓冲区(frame buffer)的硬件设备上进行渲染绘制的。一.kernel启动动画:kernel的启动画面在一般的android系统里面都是没有出现的,在kernel的config里面有这么两项:# CONFIG_FRAMEBU原创 2014-03-14 16:27:04 · 3013 阅读 · 0 评论 -
Android—— 4.2 Vold挂载管理_主体构建main (一)
这段时间为了把mmc的一个block当成sdcard内置,学习了下android的vold磁盘挂载模块,记录一下(android 4.2.2)。一:Vold的编译及启动vold的源码位置在android根目录 /system/vold文件下,先看这下面的android.mk:原创 2014-08-06 20:07:02 · 6141 阅读 · 0 评论 -
Android——SystemProperties的应用
一.序 前文分析了build.prop这个系统属性文件的生成http://blog.csdn.net/jscese/article/details/18699155,每个属性都有一个名称和值,他们都是字符串格式。属性被大量使用在Android系统中,用来记录系统设置或进程之间的信息交换。属性是在整个系统中全局可见的。每个进程可以get/set属性,这里主要记录在java层或者c++层如果使用,以及整个system_property运作流程。原创 2014-01-24 10:23:25 · 9560 阅读 · 4 评论 -
Android——智能指针
众多周知,指针在C/C++是一个很重要的手段,但是也是最让人麻烦的东西,容易出现空指针,或者内存泄漏,无非是new了一个对象,没有对应的delete,长时间运行导致系统崩溃!在android系统中其实也有这个指针这个概念,只不过被用另外的一种安全机制弥补以上的麻烦。原创 2014-06-12 16:46:55 · 3045 阅读 · 6 评论 -
Android—— 4.2 Vold挂载管理_DirectVolume/Volume (五)
在前文Android—— 4.2 Vold挂载管理_VolumeManager (三) 中解析了VolumeManager是怎么样抽取Volume实例以及DirectVolume与Volume之间的关系,在上篇Android—— 4.2 Vold挂载管理_NetlinkManager (四)中从kernel开始调用到handleBlockEvent,这里解析一下Vold挂载的真正操作,也就是Volume的操作!原创 2014-08-25 17:43:23 · 4713 阅读 · 3 评论 -
Andorid——ubuntu下的 NDK / JNI
之前一直有接触源码里面的JNI体系,知道个大概,只管调进了哪个C/C++的接口,现在记录学习下。 NDK - Native Development Kit ,类似SDK性质,可以看作为一个编译工具的集合,在android开发中常用于将C/C++代码打包编译成android 应用程序能够加载使用的模块,像动态静态库 .a ,.so.原创 2014-09-29 17:41:49 · 2865 阅读 · 0 评论 -
Android 6.0 Libc库中的弱引用使用
关于强弱符号,强弱引用可查看关于C语言中的强符号、弱符号、强引用和弱引用 ,这里记录一下目前更新到Android 6.0 在libc库中遇到的弱引用失效问题。Libc库编译可查看android 源码下的\bionic\libc\Android.mk# Don't re-export new/delete and friends, even if the compiler rea原创 2016-05-18 15:48:04 · 2369 阅读 · 1 评论