Android
文章平均质量分 67
yili_xie
曾梦想仗剑走天涯
展开
-
简单说说android的线程封装
简单写一下android对线程的c++封装~~~其实API已经写得很清楚了~~封装的文件:/frameworks/base/include/utils/threads.h这里不讨论具体实现,具体实现是和系统相关联的~~首先Anroid提供了几个与直接创建线程的函数:inline bool createThread(t原创 2009-11-12 17:34:00 · 20585 阅读 · 5 评论 -
JUST FOR NOTE ---- ANDROID NDK
论坛上问到了这个问题,所以顺便查了下,稍微总结一点东西:1、Android提供了NDK用来编译native source到应用的APK里面,Google强调了这个native source应该是运行在应用程序里面的,而不推荐作为native library来运行,所以要作为nativie library来跑就必须按照编译模块的方式放入框架 ;2、NDK的文档详细说明了如何在APK中加入n原创 2009-11-24 11:49:00 · 1656 阅读 · 1 评论 -
Android build system note
1. Android编译系统分析编译脚本及系统变量build/envsetup.sh脚本分析在编译源代码之前通常需要在android源代码顶层目录执行 . ./build/envsetup.sh 目的是为了使用脚本 envsetup.sh 里面定义了一些函数:function help()function get_abs_build_var()function get_转载 2009-11-30 16:56:00 · 23053 阅读 · 6 评论 -
arm-eabi-gcc: error
同事编kernel的时候总是会报下面的错误~~最后发现是交叉编译工具的权限问题,chmod -R 777 * 就可以了arm-eabi-gcc: error trying to exec cc1: execvp: No such file or directory 总结一下:1、确认CROSS-COMPILE的目录在PATH里面2、确认cc1是存在的3、确认交叉编译工具原创 2009-12-03 16:03:00 · 5002 阅读 · 0 评论 -
Cygwin的一点理解
这几天编译QC的source碰到很多问题,因为RVCT2.2是windows版本,所以不得不在windows机器上进行编译,使用cygwind的过程碰到了一些问题,好记性不如烂笔头,总结一下方便以后查阅~~ Cygwin提供了在windows上一个模拟的Linux环境,安装好以后打开Cygwin.bat,发现其实Cygwin是在dos上运行了一个bash: @ec原创 2009-12-23 13:44:00 · 5517 阅读 · 2 评论 -
Android safe mode
作者:YiLi Xie(yili.xie@gmail.com)日期:2010/04/07欢迎转载,请注明出处 Android safe mode • Enter safe mode 1.) Turn phone off ... remove battery .. WAIT for at least two minutes.2.) Power On Phone while Holding原创 2010-03-15 11:38:00 · 6991 阅读 · 1 评论 -
MSM平台上的AMSS
AMSS的source实际上是QC BREW(Binary Runtime Environment ForWireless)平台的的底层部分,去掉了为应用程序提供接口的AEE(application executionenvironment)部分,高通在DualProc芯片上的其他平台基本上都是采用的这样的架构。所以如果要了解这套source的话有必要对BREW作一个基本的了解,不需要原创 2010-01-04 14:51:00 · 19397 阅读 · 5 评论 -
DDMS找不到设备的问题
调试FB想在DDMS上抓图,以确认FB本身是没有问题的~~ 可板子插上电脑了却死活找不到设备,adb devices总是空的,最后adb kill-server ---> adb start-server搞定,也不知道为啥,先记着~~原创 2010-03-16 20:02:00 · 6713 阅读 · 1 评论 -
Qc FB驱动 以及 LCD调试过程
作者:YiLi Xie(yili.xie@gmail.com)日期:2010/04/07欢迎转载,请注明出处 首先说说QC的片子,QC这块片子使用MDP3.0作为图像处理器,下面支持MDDI,LCDC,以及EBI3种显示接口,MDP3.0不支持overlay,因为不管是camera或者视频播放都必须使用surfaceflinger来进行处理。3种接口这里我们使用到的原创 2010-04-07 17:46:00 · 9233 阅读 · 20 评论 -
QC AMSS BUILD
编译ARM9的source有两种方式:在windows(cmd.exe)下编译 ,在linux下编译。因为我们没有linux下的RVCT2.2的licence,所以如果要在linux环境下编译的话必须使用cygwin。下面分别介绍这两种方式下的编译,在linux环境下的编译只稍微讲一下,基本和windows一样的。一、cmd.exe1) tools RVDS (R原创 2010-05-07 09:26:00 · 11540 阅读 · 4 评论 -
Android arm linux kernel启动流程(一)
虽然这里的Arm Linux kernel前面加上了Android,但实际上还是和普遍Arm linux kernel启动的过程一样的,这里只是结合一下Android的Makefile,讲一下bootimage生成的一个过程。这篇文档主要描述bootimage的构造,以及kernel真正执行前的解压过程。 在了解这些之前我们首先需要了解几个名词,这些名词定义在/Documentation/arm/Porting里面,这里首先提到其中的几个,其余几个会在后面kernel的执行过程中讲述:原创 2010-07-06 19:19:00 · 33493 阅读 · 8 评论 -
Splash screen in USBloader
Qc片子的启动是比较九曲十八湾的,从QCPBL,到QCSBL,再到OEMSBL,最后到启动android的USBloader。在这里我的版本是Android1.6 donut,Google在后面的版本中加入了LK,不过对于在bootloader中加入Splashscreen道理都是一样的。开始没有在OEMbootloader添加主要是因为OEMbootloader不方便打log,不好调原创 2010-05-14 16:35:00 · 9152 阅读 · 7 评论 -
Android arm linux kernel启动流程(二)
<br /> 写这个总结的时候咱的心情是沉重的,因为还有好多东西没弄明白。。。感叹自己的知识还是浅薄得很,前途钱途漫漫阿~~不过基本脉络是清楚的,具体的细节只能留在以后有时间再啃了。这里的第二部分启动流程指的是解压后kernel开始执行的一部分代码,这部分代码和ARM体系结构是紧密联系在一起的,所以最好是将ARM ARCHITECTURE REFERENCE MANUL仔细读读,尤其里面关于控制寄存器啊,MMU方面的内容~ <br /> 前面说过解压以后,代码会跳到解压完成以后的vmlin原创 2010-07-14 18:24:00 · 22907 阅读 · 5 评论 -
Android Porting On Real Target
一个韩国人写的Android移植的文章~~http://wiki.kldp.org/wiki.php/AndroidPortingOnRealTarget#s-6.1 另外一个人写的移植到ADF上的文档~~http://marwww.in2p3.fr/~duval/wiki_html_dump/articles/a/n/d/Android.html#Some_readings_b原创 2009-11-25 13:59:00 · 2461 阅读 · 0 评论 -
Android ramdisk.img system.img userdata.img
ramdisk.img is a small partition image that is mounted read-only by the kernel at boot time. It only contains /init and a few config files. It is used to start init which will mount the rest原创 2009-11-25 14:22:00 · 6102 阅读 · 1 评论 -
Just for Note --- Android.policy
For one, we discovered that Android already has two product“policies” in its code. Product policies are operating systemdirections aimed at specific uses. The two policies are for 1) phonesan转载 2009-11-21 16:35:00 · 2133 阅读 · 0 评论 -
Android apk 学习笔记 --- Android apk fundamental
Android apk的组成是很有意思的,我觉得它实际也贯穿了client/service的思想。apk没有入口函数,只是包含一个或者多个component,当执行程序的时候根据manifest配置文件来确定需要初始化哪些component。而conponent的激活是由intent来触发的,intent说穿了就是一个包括了操作和操作数据的actio原创 2009-11-12 17:44:00 · 4011 阅读 · 0 评论 -
定制你自己的桌面--- launcher小觑
定制你自己的桌面--- launcher小觑 launcher也就是我们的Home,可以简单地把它理解为一个简化的linux GUI。作为一个GUI它首先必须完成它最本分的功能,就是它必须能提供对所有应用程序(CATEGORY_LAUNCHER)的映射;不过作为一个GUI,它除了做好本分之外还必须是符合大众审美的美女(wallpaper);另外还必须原创 2009-11-12 17:51:00 · 2738 阅读 · 1 评论 -
Android camera preview and take picture with V4l2
FSLcamera preview with V4l2这部分spec的内容没有全看懂,但是根据FSL的代码能知道这其中的sequence,下面就结合着FSL的代码来描述下videooverlay过程的sequence,如果有什么错误的地方,请大家指正。首先介绍一下videooverlay,vieooverlay不同于videocaptu原创 2009-11-12 17:16:00 · 10073 阅读 · 3 评论 -
智能指针和弱引用
智能指针和弱引用在android中可以广泛看到的template<typenameT> classSp句柄类实际上是android为实现垃圾回收机制的智能指针。智能指针是c++中的一个概念,因为c++本身不具备垃圾回收机制,而且指针也不具备构造函数和析构函数,所以为了实现内存(动态存储区)的安全回收,必须对指针进行一层封装,而这原创 2009-11-12 17:27:00 · 3670 阅读 · 1 评论 -
Android Codec 集成和 video Overlay
Codec集成和video overlay是现在FSL对android多媒体修改的所有东西,codec library以.so的形式放在prebuilt目录下,没有源文件。而video overlay的实现主要是使用了FSL的ipu底层库,将视频数据直接发送到硬件,由硬件进行merge。A、Codec 集成1、codec 集成方法原创 2009-11-12 17:42:00 · 19773 阅读 · 20 评论 -
SKIA结构目录
使用vs编译所有的skia文件,然后会得到大概3500条错误消息。这很可能是某些宏定义不正确,或者某些编译开关没有正确设置,或者某些接口没有实现等。但编译器给出的错误消息往往对解决问题没有帮助,编译器给出的绝大部分错误都是不可能出错的地方,标准的C++语法。于是只能先看一下SKIA的结构。使用svn从http://code.go转载 2009-11-12 17:45:00 · 9513 阅读 · 2 评论 -
Android 应用初始化及窗体事件的分发
Android 应用初始化及窗体事件(按键)的分发 ---AlbertChenAndroid java application运行环境初始化简介:在kernle启动之后, 系统将通过App_main进程来初始化android Runtime JAVA运行环境,zygote是android的第一个进程,所有android的转载 2009-11-12 17:49:00 · 6066 阅读 · 3 评论 -
omx core integration guide
因为相关的omx spec还没有仔细阅读过,所以在这里只是对这个文档进行简单的翻译性阅读,很多概念都要在了解玩omx spec后才清楚。理解omx core integration之前需要理解的文档:1、 openmax integration layer application programming interface specification原创 2009-11-12 16:36:00 · 4887 阅读 · 2 评论 -
Android的垃圾回收机制
android refbase类(sp wp)这两天写v4l2的代码,所以再仔细看了sp和wp的实现过程~~ 个人觉得sp和wp实际上就是android为其c++实现的自动垃圾回收机制,具体到内部实现,sp和wp实际上只是一个实现垃圾回收功能的接口而已,比如说对*,->的重载,是为了其看起来跟真正的指针一样,而真正原创 2009-11-12 17:11:00 · 6527 阅读 · 1 评论 -
Android Mouse实现过程笔记
简单的做点笔记,省得以后忘记了~~1、emulator模拟器实际上是一个基于qemu的arm环境模拟器,其源码在external/qemu里面,编译出来的目录在/host/linux-x86。 export ANDROID_PRODUCT_OUT=~/google_r2/out/target/product/generic export PATH=$PATH:原创 2009-11-12 17:41:00 · 5745 阅读 · 5 评论 -
多媒体测试库建设之音频部分
多媒体测试库建设之音频部分最近要为公司写多媒体式样书,并建立一个多媒体测试库,说实话以前一直做codec,却从没有写过对整个一个产品的式样书,也不知道是否符合标准规范,现在把一些操作过程记录下来,如果有高人觉得不适合或者有误的地方,还请多指点~~先说明一下我压制测试文件选择编码器的标准:如果有官方提供的标准编码器,就使用标准的编码器,如果没原创 2009-11-12 17:53:00 · 2889 阅读 · 0 评论 -
Surface Flinger boot flow in Android system
Surface Flinger boot flow in Android systema executable surfaceflinger in framework/base/cmds/surfaceflinger main() –>转载 2009-11-12 17:41:00 · 26132 阅读 · 0 评论 -
Android Graphic : apk and Skia/OpenGL|ES
Android apk里面的画图分为2D和3D两种:2D是由Skia来实现的,也就是我们在框架图上看到的SGL,SGL也会调用部分opengl的内容来实现简单的3D效果;3D部分是由OpenGL|ES实现的,OpenGL|ES是Opengl的嵌入式版本,我们先了解一下Android apk的几种画图方式,然后再来来看一看这一整套的图形原创 2009-11-12 17:46:00 · 52318 阅读 · 11 评论 -
Android Build System
Android Build SystemStatus: Draft (as of May 18, 2006) Contents<!-- this div expands out to a list of contents based on the H2 and H3 headings.Believe it! -->Objectiv转载 2009-11-18 20:06:00 · 3212 阅读 · 2 评论 -
Android build System
[First written by Steve Guo, please keep the mark if forwarding.]Device/docs/design/build-system.htmlis a good start point to understand Android build system. In thistopic, I will转载 2009-11-18 20:07:00 · 2883 阅读 · 0 评论 -
QC AMSS BUILD SYSTEM
<br /> 总算把AMSS这套Makefile整完了,比起Android来QC这套Makefile还是比较烂的,架构不清晰,很多重复的规则,一个模块要不要加入需要判断三次,模块的路径上判断一次,模块的*.min要判断一次,模块的OBJ文件上还要判断一次,而且基本target都加了强制目标作为依赖,导致很多目标每次编译时都被强制更新,间接导致了每次编译的时间都特别的长。<br /> AMSS把QCSBL/OEMSBL/CFG_DATA/PARTITION/AMSS/FLASH_TOOL用MAK原创 2010-06-08 20:08:00 · 9839 阅读 · 15 评论