- 博客(28)
- 资源 (1)
- 收藏
- 关注
转载 Android帧缓冲区(Frame Buffer)硬件抽象层(HAL)模块Gralloc的实现原理分析
前面在介绍Android系统的开机画面时提到,Android设备的显示屏被抽象为一个帧缓冲区,而Android系统中的SurfaceFlinger服务就是通过向这个帧缓冲区写入内容来绘制应用程序的用户界面的。Android系统在硬件抽象层中提供了一个Gralloc模块,封装了对帧缓冲区的所有访问操作。本文将详细分析Gralloc模块的实现,为后续分析SurfaceFlinger服务的实现打下基础。
2013-01-23 17:15:26
646
转载 Android系统的开机画面显示过程分析
好几个月都没有更新过博客了,从今天开始,老罗将尝试对Android系统的UI实现作一个系统的分析,也算是落实之前所作出的承诺。提到Android系统的UI,我们最先接触到的便是系统在启动过程中所出现的画面了。Android系统在启动的过程中,最多可以出现三个画面,每一个画面都用来描述一个不同的启动阶段。本文将详细分析这三个开机画面的显示过程,以便可以开启我们对Android系统UI实现的分析之路。
2013-01-23 16:51:39
568
转载 Android系统的开机画面显示过程分析
Android系统的开机画面显示过程分析 好几个月都没有更新过博客了,从今天开始,老罗将尝试对Android系统的UI实现作一个系统的分析,也算是落实之前所作出的承诺。提到Android系统的UI,我们最先接触到的便是系统在启动过程中所出现的画面了。Android系统在启动的过程中,最多可以出现三个画面,每一个画面都用来描述一个不同的启动阶段。本文将详细分析这三个开机画面
2012-10-17 21:09:06
456
转载 Android系统的开机画面显示过程分析
Android系统的开机画面显示过程分析 好几个月都没有更新过博客了,从今天开始,老罗将尝试对Android系统的UI实现作一个系统的分析,也算是落实之前所作出的承诺。提到Android系统的UI,我们最先接触到的便是系统在启动过程中所出现的画面了。Android系统在启动的过程中,最多可以出现三个画面,每一个画面都用来描述一个不同的启动阶段。本文将详细分析这
2012-10-17 19:14:55
446
转载 Android系统的开机画面显示过程分析
Android系统的开机画面显示过程分析 好几个月都没有更新过博客了,从今天开始,老罗将尝试对Android系统的UI实现作一个系统的分析,也算是落实之前所作出的承诺。提到Android系统的UI,我们最先接触到的便是系统在启动过程中所出现的画面了。Android系统在启动的过程中,最多可以出现三个画面,每一个画面都用来描述一个不同的启动阶段。本文将详细分析这
2012-10-17 18:46:51
358
转载 android简易双屏支持
最近断断续续做了一些杂七杂八的android事情,都是一些不太容易的事情。简单的写了以下,android双屏的简易支持。纲领性的一些东西吧。简单双屏的支持。和下面这种不一样哦http://www.xici.net/main.asp?url=/u13971417/d101558450.htm这种看起来完全是假的双屏,android完全运行在自己的屏幕上面,和主屏幕没有
2012-09-18 12:02:29
1204
转载 Android2.3异步双屏修改记录之android CS架构
本文出处:http://www.cnblogs.com/xl19862005作者:Xandy android之CS架构在此之前,有必要理清一下下表1中所列出的一些概念。ISurface定义了基础的Surface接口,供GUI系统客户端(应用)和Server端(surfaceflinger)交互BpSur
2012-09-18 11:59:35
696
转载 android双屏显示的一些修改与尝试
文章出处:http://www.cnblogs.com/xl19862005作者:Xandy用的是android2.3的代码这些天来一直在看android display相关的代码和资料并作了一些尝试,现在将这些天来的工作记录如下,有错误的地方希望广大同行指正,谢谢!经过阅读代码和查到的相关一些资料,对android双屏的支持总体
2012-09-18 11:56:47
1322
原创 关于Android双屏显示
双屏显示的一款产品的介绍:http://www.kyocera.com.cn/prdct/telecom/consumer/ksp8000/ksp8000.htmlSDK和开发文档:http://www.kyocera.com.cn/prdct/telecom/consumer/ksp8000/developers/sdk-tools/index.html
2012-09-18 11:53:33
1400
转载 Linux下pc/sc接口的实现
<br />[转]Linux下pc/sc接口的实现 <br />运行环境:内核版本:2.6.23.1-42.fc8OS:fedora8、redhat9平台:PC<br />实现步骤:<br />1、安装libusb(版本0.1.12)。默认生成在/usr/local/lib目录下。<br /><br /><br />2、安装pcsc-lite,它是独立于设备的API,基于pc/sc规范,可以通过这些接口访问智能卡。在此用的版本为pcsc-lite-1.4.99,安装步骤./configure(配置编
2011-04-21 11:12:00
2525
转载 向android中添加busybox
<br />1、下载busybox源码<br />2、make menuconfig<br />3、make CROSS_COMPILE=arm-linux-<br />4、将busybox拷贝到android目录platform/prebuilt/android-arm/busybox/<br />5、在platform/prebuilt/android-arm/busybox/目录新建编辑Android.mk,内容如下:<br />LOCAL_PATH := $(call my-dir)<br />in
2010-10-25 16:08:00
1014
原创 Android 镜像打包
<br />1.system.img<br />解包:<br />直接mount就可以看到<br />mount -o loop system.img /mnt/system<br />打包:<br />mkyaffs2image ./system ./system.img<br /> <br /><br />2.ramdisk.img<br />解包:<br />cd ./root && { zcat ../ramdisk.img |cpio -iv; cd -; }<br />打包:<br />cd
2010-10-25 16:06:00
971
转载 在android的状态栏(statusbar)中增加menu,home和back快捷键的方法
<br />需要说明的是:刚入手android没几天,对系统还不算很熟悉,这篇文章是基于前一篇转帖做的。只是觉得他的方法有些麻烦,而且改出来的效果也不是我想要的。<br />由于完全改了status bar,建议先做几张png图片,加到 <br />Frameworks/base/core/res/res/drawable<br />下。最好做一张背景图,替换 statusbar_background.png<br />另外我又加了几张icon,分别是home menu和back的正常和按下状态。<br /
2010-10-25 15:15:00
760
原创 minicom:交叉编译、移植到arm
<br />步骤:<br />1、下载minicom-2.1.tar.gz 解压<br />2、下载ncurses-5.7.tar.gz 解压<br />3、配置ncurses<br />./configure /<br />CC=arm-none-linux-gnueabi-gcc /<br />--prefix=/home/lijx/minicom/ncurses-5.7/install /<br />--host=arm-linux /<br />CPPFLAGS=-I/opt/gcc-4.1.2-g
2010-10-25 15:10:00
5808
1
转载 android启动过程和build过程
<br />首先下载下android源码并编译,网上的资料特别多,可以参考一下这个网站http://blog.youkuaiyun.com/liaoshengjiong/archive/2009/03/04/3957749.aspx<br />按照网站上的步骤,将android内核编译成功,如果不出意外的话,在out/target/product/generic目录下会生成三个文件,分别是ramdisk.img、sytem.img、userdata.img。这三个文件到底有什么用呢?下面开始分析一下。<br />首先在
2010-10-25 15:01:00
905
转载 ADROID 2.1 架构解析 11 系统时间
11 系统时间11.1 时间操作文件:frameworks/base/core/java/android/os/SystemClock.javanative public static boolean setCurrentTimeMillis(long millis);转向如下文件文件:frameworks/base/core/jni/android_os_SystemClock.cppstatic jboolean android_os_SystemClock_setCurrentTimeMillis(J
2010-10-25 14:58:00
551
转载 ADROID 2.1 架构解析 10 声音
<br />10 声音<br />10.1 音频管理<br />文件:frameworks/base/media/java/android/media/AudioManager.java<br />10.1.1 音量控制<br />/** @hide Default volume index values for audio streams */<br /> public static final int[] DEFAULT_STREAM_VOLUME = new int[] {<br />
2010-10-25 14:57:00
882
转载 ADROID 2.1 架构解析 9 SD/USB
<br />9 SD/USB<br />9.1 主流程<br />文件:system/core/vold/Vold.c<br />int main(int argc, char **argv)<br />{<br /> ...<br />mkdir("/dev/block/vold", 0755);<br /> ...<br /> /*<br /> * Bootstrap <br /> */<br /> <br /> bootstrap = 1;<
2010-10-25 14:56:00
749
转载 ADROID 2.1 架构解析 8 触摸屏
<br />8 触摸屏<br />8.1 分类输入事件 <br />文件:frameworks/base/libs/ui/EventHub.cpp<br />int EventHub::open_device(const char *deviceName)<br />{<br /> ...<br /> uint8_t key_bitmask[(KEY_MAX+1)/8];<br /> memset(key_bitmask, 0, sizeof(key_bitmask));<br
2010-10-25 14:54:00
591
转载 ADROID 2.1 架构解析 7 键盘
<br />7 键盘<br />系统在KeyInputQueue服务里创建了一个线程,在这个线程里不断读取输入事件,然后对这个事件进行处理。<br />7.1 按键输入队列服务<br />按键输入事件有多种方式,如:键盘敲击、触摸屏触击、鼠标点击及多点触摸,主要是按下和放开的事件。<br />7.1.1 输入事件的数据结构<br />文件:frameworks/base/core/java/android/view/RawInputEvent.java<br />public class RawInputE
2010-10-25 14:53:00
646
转载 ADROID 2.1 架构解析 6 闹钟
<br />6 闹钟<br />6.1 设置定时时间<br />文件:packages/apps/alarmclock/src/com/android/alarmclock/Alarms.java<br />private static void enableAlert(Context context, final Alarm alarm,<br /> final long atTimeInMillis) {<br /> AlarmManager am = (AlarmM
2010-10-25 14:52:00
461
转载 ADROID 2.1 架构解析 5 电池
<br />5 电池<br />电池涉及的功能有:BatteryStatus、BatteryHealth、BatteryPresent、BatteryLevel、PlugType、BatteryVoltage、BatteryTemperature、BatteryTechnology等,它是种从下而上的表现方式,即底层电池变化后通过uevent事件向上传递电池的当前状态。<br />5.1 硬件调用<br />文件:frameworks/base/services/jni/com_android_server
2010-10-25 14:51:00
518
转载 ADROID 2.1 架构解析 4 静音与振动
<br />4 静音与振动<br />4.1 设置静音和振动<br />静音和振动都属于来电后的动作.所以在设置静音和振动时都只是设置一些标识,并往数据库写入相应标识.<br />文件:packages/apps/settings/src/com/android/settings/SoundAndDisplaySettings.java<br />private CheckBoxPreference mSilent;<br />private CheckBoxPreference mVibrate;<br
2010-10-25 14:50:00
583
转载 ADROID 2.1 架构解析 3 亮度设置
<br />3 亮度设置<br />3.1 应用设计<br />3.1.1 设置进度条范围<br />背光设置是在:设置->声音和显示->亮度,通过进度条来设置的。<br />文件:packages/apps/Settings/src/com/android/settings/BrightnessPreference.java<br />private static final int MINIMUM_BACKLIGHT = android.os.Power.BRIGHTNESS_DIM + 10;<br
2010-10-25 14:49:00
531
转载 ADROID 2.1 架构解析 2 使用google应用
2 使用google应用为了使android支持google应用,如日历、gtalk、gmail、youtube、market等应用,需向android里导入如下文件:PRODUCT_PACKAGES += / ContactsProvider / GoogleContactsSyncAdapter / GoogleSubscribedFeedsProvider / com.google.android.gtalkservice / com.google.android.dat
2010-10-25 14:47:00
519
转载 ADROID 2.1 架构解析 1 语言定制
1 语言定制1.1 ICU4C1.1.1 ICU4C简介ICU4C(ICU for C,http://site.icu-project.org/)是ICU在C/C++平台下的版本, ICU(International Component for Unicode)是基于"IBM公共许可证"的,与开源组织合作研究的, 用于支持软件国际化的开源项目。ICU4C提供了C/C++平台强大的国际化开发能力,软件开发者几乎可以使用ICU4C解决任何国际化的问题,根据各地的风俗和语言习惯,实现对数字、货币、时间、日期、和消
2010-10-25 14:45:00
415
原创 6410添加2片mDDR RAM的修改记录
我的系统需要用到2片mDDR的RAM,型号为K4X1G323PD,32Mx32 Mobile DDR SDRAM。看DATASHEET,6410的RAM控制器可以控制2片RAM,CHIP0物理地址为0X50000000,CHIP1物理地址为0X60000000.两片RAM的容量为0X08000000.在物理上地址不连续。在网上找到修改RAM容量和内存扩展的一些资料,做了下参考
2010-01-26 16:16:00
1076
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人