
android
文章平均质量分 81
lail3344
linux fans, enthusiastic about linux&android technical
展开
-
android性能测试工具之dumpsys
补记: MAT(memory analyzer tool )是google 推荐的进行内存使用量分析的工具. 功能全面而强大!!!首先看一下dumpsys有哪些功能:dumpsys 用来给出手机中所有应用程序的信息,并且也会给出现在手机的状态。dumpsys [Option] meminfo 显示内存信息原创 2011-10-19 10:19:07 · 8929 阅读 · 0 评论 -
如何分析Android的内存使用量
UPDATED: 根据google I/O 2011的一个section中关于dalvik讲解中,提到了MAT(memory analyze too),可以用它来分析android app的内存使用。goolge也用到它来进行java的相关内存分析。原文地址:http://elinux.org/Android_Memory_Usage#procrank向大家推荐elinux.o转载 2011-10-19 15:30:00 · 4485 阅读 · 0 评论 -
玩转pandaboard之u-boot的编译及代码结构
本文以linaro提供的针对pandaboard的u-boot为例(之后用来加载Android),阐述u-boot编译及代码结构。 U-boot是神马简单说来就是嵌入式设备的BIOS, 用来初始化嵌入式设备上的各种硬件资源,并引导linux kernel的加载及启动。详细描述请从http://www.denx.de/wiki/U-Boot上获得你所想要的一切信息。另外, h原创 2012-05-03 12:49:04 · 6235 阅读 · 0 评论 -
玩转pandaboard之rootfs制作及启动
updated(2012/05/02): mainline的u-boot已经包含对pandaboard的支持, 其中x-loader已经被spl所取代. 相关介绍请参照我的另一篇博文<>本篇文章是参考了pandaboard官方wiki, TI的官方文档及linaro的相关image制作的工具总结而来.首先,来做些准备工作, 了解一下pandaboard启动所要用到的各种bo原创 2012-02-08 11:11:28 · 9580 阅读 · 5 评论 -
玩转pandaboard之初体验
刚拿到pandaboard, 照例对于这些开发板, 需要先准备需要用到的开发环境.下面以linaro上对于pandaboard的支持为例, 记录下如何把linaro提供的最新的android系统在板子上跑起来. 环境准备下载所需的资源及代码参照https://wiki.linaro.org/Platform/Android/GetSource编译源代码原创 2012-02-02 11:16:54 · 7200 阅读 · 2 评论 -
如何制作android nexus one的内核
动手自己制作android device的内核! 主要是参考一些别人的经验. 有助于理解android中的image的format. !!!很厚颜的标注为原创!!!经过自己的验证,完全可行. 有问题的朋友,可以互相交流下:)原文地址:http://android-dls.com/wiki/index.php?title=HOWTO:_Unpack%2C_Edit%2C_and_原创 2012-01-11 09:10:47 · 3085 阅读 · 0 评论 -
Android学习之Service命令的妙用
Android系统不光在host上为我们提供了一些好用的命令, 同时device也有一些隐藏着的命令, 通常它是被系统调用,但是由于权限设置的原因, 普通的进程也能通过命令行去使用它们.比如,我之前提到的Android性能测试工具之dumpsys>及Android调试工具之adbs>在device中, 有一个service命令, 可以看到当前所有的service, 同时也可以使用它来往原创 2012-03-28 10:26:10 · 9230 阅读 · 0 评论 -
Android学习之OTA Update
之前需要处理一些应用程序用到的update相关问题, 了解到android build system会利用开源的bsdiff进行一些关于package的更新动作. 这篇文章就分析一下android系统的OTA update.首先,让我们来看看OTA的整体框架Build System Support, 用来创建需要的OTA update image(包括全部更新及部分更新)原创 2012-03-27 15:36:27 · 7174 阅读 · 0 评论 -
Android Dev Tips (持续更新)
Android Dev Tips编译整个android source如何启动emulatorexport ANDROID_PRODUCT_OUT=~/Android/mydroid/out/target/product/generic/./out/host/linux-x86/bin/emulator -kernel ~/Android/mydroid/prebuilt/a原创 2012-05-21 16:01:45 · 3148 阅读 · 0 评论 -
扫盲,什么是graphic core--来自qualcomm的一篇邮件
http://lwn.net/Articles/394665/Qualcomm 2D/3D graphics driverFor about a year and a half, the Qualcomm Linux team has been working to supportthe OpenGL ES 3D core in the Snapdragon processor.转载 2012-05-21 16:14:52 · 4168 阅读 · 0 评论 -
喜迎下一个挑战WebRTC, 博客的内容会更新的慢一些, 当然还是会持续记录下去的:)
Updated(2012-9-24): 最近工作发生变动了,职业生涯会往更上层的技术有所偏移(android framework, html5, javascript等相关技术),希望能有时间保持对嵌入式底层设备相关技术的学习及积累:)以后会继续更新android及web runtime相关的技术学习心得!Updated(2013-03-27): 下个月工作的重心应该会转移到web原创 2012-04-12 10:43:38 · 2095 阅读 · 2 评论 -
Android学习之Alarm driver
Updated: 2013/03/18, 刚有时间浏览了最新的Android builder submit 2013的相关slides,其中有关于最新的android 对kernel的upstream的状态的总结,大家可以看看http://events.linuxfoundation.org/images/stories/slides/abs2013_stultz.pdfAlarm原创 2011-11-21 23:17:38 · 9288 阅读 · 0 评论 -
Android学习之wakelocks
Updated: 2013/03/18, 刚有时间浏览了最新的Android builder submit 2013的相关slides,其中有关于最新的android 对kernel的upstream的状态的总结,大家可以看看http://events.linuxfoundation.org/images/stories/slides/abs2013_stultz.pdfWakel原创 2012-02-22 17:31:49 · 8061 阅读 · 2 评论 -
Android学习之ION memory manager
Updated: 2013/03/18, 刚有时间浏览了最新的Android builder submit 2013的相关slides,其中有关于最新的android 对kernel的upstream的状态的总结,大家可以看看http://events.linuxfoundation.org/images/stories/slides/abs2013_stultz.pdfION,原创 2012-05-21 16:21:23 · 21217 阅读 · 5 评论 -
Android学习之pmem driver
updated (2012/04/12):请注意,多方资料显示PMEM已经逐渐被抛弃,各个OEM厂商相对的都有各自的新的应对措施。请参看:http://lwn.net/Articles/480055/, 说明了总体情况,会由ION memory manager取代(android 4.0中已经引入了)。老的版本中各家厂商分别使用自己的一些实现:Nvidia(NVMAP), TI(CMEM)原创 2012-02-10 16:38:40 · 4554 阅读 · 3 评论 -
Android学习之LAVA验证框架
LAVA全称是Linaro Automated Validation Architecture的缩写, 它是由linaro维护的一个用来进行测试,质量控制和自动化实施的框架.(*1) 着眼于以下部分:automated testing, benchmarking, manual testing, continuous integration, reporting, analysis, d原创 2012-07-16 23:56:20 · 5998 阅读 · 1 评论 -
实现NDK的pre-build实例
实现NDK的pre-build实例项目中要用到既存的老代码,所以就需要用到JNI,这时问题就来了。如何在NDK中让JNI的代码引用static library或shared library?1. 对于static library,问题比较简单,直接上Android.mk。LOCAL_PATH := $(call my-dir)include $(CLEAR_VA原创 2011-10-18 15:27:36 · 2665 阅读 · 2 评论 -
linux下Android开发环境的udev设置
关于adb 连接 devices的问题http://www.google.com/support/forum/p/android/thread?tid=08945730bbd7b22b&hl=en详细解释了udev的原理喝如何设置ruleshi folks. ifound this info to be helpful, although there was转载 2011-10-31 11:49:49 · 2282 阅读 · 0 评论 -
DalVik学习之利器篇--如何使用smali
相关工具:smali是一个开源并且注释清晰的反编译的java工程apktool是基于smali开发的帮助反编译apk的利器dedexer是独立与smali又一个反编译apk的工具而dexdump就是android自带的c语言实现的dump dex文件的工具可供参考的文档:Practice of Android Reverse Engine原创 2011-10-26 11:57:43 · 10902 阅读 · 5 评论 -
浅析android中的权限管理--用户安装的apk的uid,gid是如何分配的
Android的开发者一般分为两类,一类是做framework开发,一类是做第三方APP开发。两者最大的区别就是能够使用到的系统权限不一样。网上也有好多关于如何获得root权限的讨论和文章。我这里就不讨论这些了。主要还是从Android framework的设计出发,从代码中看看Android是如何给各种用户设定不同的uid,如何管理它们的。当用户点击一个APK时或是从market原创 2011-10-21 11:50:59 · 5002 阅读 · 0 评论 -
android性能测试工具之dumpstate
dumpstate类似于dumpsys都是android提供给开发者的帮助了解系统运行状态的利器。从main函数看起:1. 设置执行dumpstate这个命令的进程的一些属性 使它不会占用过多系统资源,即利用setpriority来告知内核它可以原创 2011-10-19 15:30:48 · 13284 阅读 · 0 评论 -
Android基本框架学习之defaultServiceManager
Android基本框架学习之defaultServiceManager这两天看了一下dumpsys和dumpstate,对Android系统中各种系统Service的实现框架不是很明白,以下简单的描述了一下这两天关于Android的系统Service的一些原创 2011-10-12 12:07:53 · 3313 阅读 · 1 评论 -
DalVik学习之LEB128是神马
学习dalvik,首先得从了解dex文件的格式开始,这可以参考相关的一下资料:其实也就是一些告诉你dex文件是由那些头组成,头里面的信息又是指向文件中的哪些块,各个块又是什么意思。说白了设计这个格式的人是介于牛A和牛C之间的人,而我们只需要读懂该格式的人,只要肯下功夫原创 2011-09-18 23:41:33 · 3461 阅读 · 5 评论 -
android init过程
[轉]Android 啟動流程: Init.c 閱讀筆記Android kernel 啟動後會執行Init初始化,代碼在 system/core/init 中。- 創建 /dev、/proc、/sys目錄,創建/dev/pts目錄(偽終端)和/de转载 2011-09-09 17:10:11 · 1118 阅读 · 0 评论 -
从Android代码里摘录出来的好用的调试宏
摘自:mydroid/build/tools/soslim/debug.h#ifdef DEBUG #define FAILIF(cond, msg...) do { \ if (unlikely(cond)) { \ fprintf(s原创 2011-11-03 13:59:14 · 1142 阅读 · 0 评论 -
Android调试工具之adbs
这两天在看Android的编译及制作rootfs工具的相关流程,无意中在mydroid/build/tools/中发现了它——adbs!adbs是一个用python写的命令行工具,利用了adb,addr2line, objdump这三个工具,大家看了这三个工具,可能就能猜到,adbs是用来分析应用程序尤其是与函数库相关的crash问题:)具体的代码就不多看了,无外乎是一些运原创 2011-11-02 17:45:07 · 3710 阅读 · 0 评论 -
Android学习之graphic rendering 那些事
原文地址:https://plus.google.com/105051985738280261832/posts/2FXDCz8x93s这篇文章是从google group中找到的, android的开发组的一员 Dianne Hackborn 对android中的graphic的机制的一个解释及释疑. 作为曾经接触过多媒体及图形图像处理的我(可悲的是为了生活,妥协的不能再从事这个领域的我)还翻译 2012-01-16 16:17:10 · 3248 阅读 · 2 评论 -
Android学习之Build环境初探
这篇文章简单阐述一下Android的发布工具,即如何把各种编译好的库,可执行文件,打包整理成能够烧录进手机中的rootfs。这里略过对android在手机上的文件系统框架的阐述(google或者baidu都能帮助你找到对应的信息),主要看google是如何把生成合适的rootfs的工作整合到它的build体系当中,同时,会顺带看一下CyanogenMod中对应各种机型的build机制。原创 2012-02-27 12:34:04 · 2700 阅读 · 0 评论 -
玩转pandaboard之linaro对于Android的编译上的一些优化
之前看ELC2011的video轮播, 其中有Linaro发表的关于android platform的section, 其中说到了linaro对于android做了一些优化,尤其是编译上的. 这里就总结下其中提到的内容及相关概念.首先,来看一下Linaro对AOSP的具体做了哪些优化:使用O3代替了O2 关闭了默认的-fno-strict-aliasing, 新增-fm原创 2012-02-20 15:42:46 · 3693 阅读 · 0 评论 -
Android学习之开源项目分析--screencast
Update: 最近观看了ELC2011的关于android的一个视频, 里面提到了Android System Test Environment Runtime这么一个可以在PC端控制并执行一些定制的script测试脚本的测试框架, 其中PC与Device之间的UI同步用的就是screencast类似的机制--不停的传递screenshot, 而不是hack fbdev driver来传递实时的原创 2011-12-20 16:43:48 · 3150 阅读 · 1 评论 -
Android学习之Logger driver
Android logger System 由misc的logger driver和相关framework接口组成, 与syslog相比, 它区分了4种不同事件类型, 不同的事件类型有各自的kernel space的循环缓冲来提供, 这样的log更加清晰,对于user space端来说更加友好. 目前logger driver正在寻求被kernel main stream所接受, 不久的将来将会m原创 2012-02-09 09:54:25 · 2619 阅读 · 1 评论 -
关于android的Surface C/S架构
Android2.3异步双屏修改记录之android CS架构转载请注明本文出处:http://www.cnblogs.com/xl19862005作者:Xandy android之CS架构在此之前,有必要理清一下下表1中所列出的一些概念。ISurface定义了基础的Surface接口,供GUI系统客户端(应用)和Server端(surfac转载 2012-02-06 10:39:33 · 2136 阅读 · 0 评论 -
Android学习之Ashmem driver
参照init/Kconfig中对于ASHMEM的说明:它是一由android的提供的新的共享内存分配器, 类似于POSIX的SHM,但是拥有不同的一些行为同时引入了简单的基于文件的API.Dave Sparks对ashmem和pmem的解释:1. ISurface是对应于SurfaceFlinger的远程接口.当你调用类似postBuffer的ISurfac原创 2012-01-05 15:29:03 · 2934 阅读 · 0 评论 -
Android学习之Theme的来龙去脉
Android学习之Theme的一点点事原文地址:http://brainflush.wordpress.com/2009/03/15/understanding-android-themes-and-styles/ Understanding Android Themes And StylesFiled under: Mobile Devices, Softw转载 2012-01-11 09:04:03 · 1756 阅读 · 0 评论 -
Android学习之lowmemorykiller driver
这是android对于linux原生的oom机制的改良,期望其能更有效的处理手持设备的oom. 它通过暴露出两个关键的接口/sys/module/lowmemorykiller/parameters/adjwrite /sys/module/lowmemorykiller/parameters/minfree来控制oom的行为,使得系统在oom的时候,能够按照android的定义,选择原创 2011-12-26 16:28:50 · 2565 阅读 · 0 评论 -
Android学习之扩展android的权限管理
Android学习之扩展android的权限管理以CyanogenMod中关于动态开启/关闭APK的指定权限功能为例来分析CyanogenMod在7.0的时候提供了revoke permission的功能, 可以从设置->CM设置->通用设置->权限管理, 打开这个功能. 从而可以动态的管理应用程序的权限.具体介绍参见http://wiki.cyanogenmod.com/wiki原创 2011-12-26 12:14:03 · 2245 阅读 · 0 评论 -
Android学习之--prelink
最近移植一些既存的c程序到android中,不可避免的需要了解ndk,jni之类的东西,编译体系,toolchain之类的东西。偶尔,发现了Android中的src中有一个叫做“LOCAL_PRELINK_MODULE”的参数,它是Android采用的加快一些系统的函数库加载速度的手段。因为对这个比较感兴趣,就稍微去了解了一下。首先,需要了解一下什么是prelink由Red原创 2011-10-25 18:04:50 · 3349 阅读 · 0 评论 -
android的ant自动化编译环境配置理解
环境: ubuntu 10.10, android sdk 9, ant 1.8.0为什么要用ant来编译? 方便把整个项目与公司其它的项目编译环境整合, ......下面分析了下Android中的Ant编译环境1. Android为了方便原创 2011-09-05 13:12:28 · 2420 阅读 · 0 评论