Android
文章平均质量分 65
a3015440
这个作者很懒,什么都没留下…
展开
-
Android事件处理分析
<br />按键事件<br />对于按键事件,调用mDevices->layoutMap->map进行映射。映射实际是由KeyLayoutMap::map完成的,KeyLayoutMap类里读取配置文件qwerty.kl,由配置 文件 qwerty.kl决定键值的映射关系。你可以通过修 改./development/emulator/keymaps/qwerty.kl来改变键值的映射关系。 <br /><br />JNI 函数 <br />在frameworks/base/service转载 2010-06-24 20:09:00 · 1302 阅读 · 2 评论 -
怎样使用eclipse来开发android源码
<br />用eclipse +ADT作为android开发工具,可以说是很方便的,在HelloActivity小程序里我们就感觉到eclipse功能的强大。那么,我们可以用eclipse来开发android源码吗?如果我们直接把android源码里一个工程导入eclipse,一般来说都会出现错误,说许多类库(包)找不到。<br />今天找到关于怎样使用eclipse来开发android源码的官方文档:<br />https://sites.google.com/a/androi转载 2010-06-25 09:52:00 · 622 阅读 · 0 评论 -
浅谈Activity几种不同的启动方式
<br />开发者在设计之初可以决定用户与应用程序的交互方式,其中包括如何选着程序启动入口以及Package中所包含的Activities。众所周知,应用程序是一系列有着特定功能的Activities组成,它们有自己的属性和行为。用户可以在Home中通过启动快捷方式将当前进程引入特定的Activites,或者可以在其它程序进程中启动外部的Activities。有的人会问,了解程序的启动方式有用吗?当然,了解不同的启动方式才能更好的根据需要设计Activities。<br /><br />转载 2010-06-25 09:56:00 · 3493 阅读 · 0 评论 -
AIDL --- Android中的远程接口
<br />在Android中, 每个应用程序都可以有自己的进程. 在写UI应用的时候, 经常要用到Service. 在不同的进程中, 怎样传递对象呢? 显然, Java中不允许跨进程内存共享. 因此传递对象, 只能把对象拆分成操作系统能理解的简单形式, 以达到跨界对象访问的目的.在J2EE中,采用RMI的方式, 可以通过序列化传递对象. 在Android中, 则采用AIDL的方式.理论上AIDL可以传递Bundle,实际上做起来却比较麻烦. <br /><br />AIDL(AndRoid转载 2010-06-25 09:57:00 · 763 阅读 · 0 评论 -
[转]Android事件处理
<br />nit-----------zygote---------system-server-------------------windosmanager ------------------------------------------------------------UEventObserver<br />------------------------------------------------------------ InputDeviceRead<br />-转载 2010-06-25 09:54:00 · 686 阅读 · 0 评论 -
How to get battery info
Eclair中电池电量的读取首先需要Kernel的支持,kernel将所得到的电池信息放到/sys/class/power_supply/Battery 中,由Eclair中frameworks/base/services/jni文件夹下的com_android_server_BatteryService.cpp进行读转载 2010-05-25 19:27:00 · 567 阅读 · 0 评论 -
[转]Android WiFi 电源管理
Android 对WiFi电源管理的代码主要在WifiService.java中。如果应用程序想在屏幕被关掉后继续使用WiFi则可以调用acquireWifiLock来锁住WiFi,该操作会阻止WiFi进入睡眠状态。当应用程序不再使用WiFi时需要调用releaseWifiLock来释放WiFi。之后WiFi可以进入睡眠状态以节省电源。 默认情况下当屏幕被关掉以后转载 2010-05-26 14:54:00 · 523 阅读 · 0 评论 -
浅析kernel启动的第1个用户进程init如何解读init.rc脚本
浅析kernel启动的第1个用户进程init如何解读init.rc脚本首先解读1.on init字段到来,state->context为新申请到的struct action结构体,并将其挂接到action_list尾部,然后初始化处理方法,之后该section内的所有command都将挂接到act->commands链表上,这样也就有了立转载 2010-05-26 19:14:00 · 601 阅读 · 1 评论 -
Talking about Android Process
[First written by Steve Guo, please keep the mark if forwarding.] In this topic you will learn some information about Android processmanagement. First let’s take a look at the launched proce转载 2010-05-26 19:16:00 · 340 阅读 · 0 评论 -
编译Android最新源码(090508)
听说新版本的android 增加了许多特性,浏览器速度更快,在2009年5月7号用repo下载了整个源码,进行编译,中间遇到了一些问题,并解决了。1.下载(以下是大致过程,具体详细方法可参考android官网)mkdir buildcd buildrepo init -u git://android.git.kernel.org/platform/manifest.gitrep转载 2010-05-26 19:46:00 · 314 阅读 · 0 评论 -
两个非常重要的关于android frameworks层的ppt
http://wenku.baidu.com/view/ffada8c30c22590102029da8.htmlhttp://wenku.baidu.com/view/58ebb7f67c1cfad6195fa706.html转载 2010-05-27 13:53:00 · 304 阅读 · 0 评论 -
Android下的多线程
在Android下面也有多线程的概念,在C/C++中,子线程可以是一个函数,一般都是一个带有循环的函数,来处理某些数据,优先线程只是一个复杂的运算过程,所以可能不需要while循环,运算完成,函数结束,线程就销毁。对于那些需要控制的线程,一般我们都是和互斥锁相互关联,从而来控制线程的进度,一般我们创建子线程,一种线程是很常见的,那就是带有消息循环的线程。消息循环是一个很有用转载 2010-05-27 14:32:00 · 263 阅读 · 0 评论 -
[转]Android Power Management
Android Power Management 总体上来说Android的电源管理还是比较简单的, 主要就是通过锁和定时器来切换系统的状态,使系统的功耗降至最低,整个系统的电源管理架构图如下: (注该图来自Steve Guo) 接下转载 2010-05-26 15:00:00 · 405 阅读 · 0 评论 -
[转]Android init 启动过程分析
分析android的启动过程,从内核之上,我们首先应该从文件系统的init开始,因为 init是内核进入文件系统后第一个运行的程序,通常我们可以在linux的命令行中指定内核第一个调用谁,如果没指定那么内核将会到/sbin/,/bin/等目录下查找默认的init,如果没有找到那么就报告出错。下面是曾经用过的几种开发板的命令行参数:S3C2410 启动参数:noinitrdr转载 2010-05-26 18:54:00 · 475 阅读 · 0 评论 -
[转]Simple Guide for Porting Android Kernel
作者:刘旭晖 colorant@163.com 转载请注明出处http://blog.csdn.net/colorant/移植Android的kernel到实际的硬件平台上,很多人很早就做过这件事了,不过相关的文档和经验总结不多,我就写一个吧,也为了自己记录一下大致的流程,以后好继续。1 Android内核Porting相关背景知识1.1转载 2010-05-26 18:56:00 · 294 阅读 · 0 评论 -
[转]定制你自己的桌面--- launcher小觑
launcher也就是我们的Home,可以简单地把它理解为一个简化的linuxGUI。作为一个GUI它首先必须完成它最本分的功能,就是它必须能提供对所有应用程序(CATEGORY_LAUNCHER)的映射;不过作为一个GUI,它除了做好本分之外还必须是符合大众审美的美女(wallpaper);另外还必须具有良好的交互性,没有良好的交互性就像你对一位美女殷勤了半天,她却直接对无视,那结果转载 2010-05-26 18:57:00 · 362 阅读 · 0 评论 -
[转]android 基础知识
===================================================linux ,Android基础知识总结1. Android编译系统分析2. 文件系统分析3. 制作交叉工具链4. 软件编译常识5. 设置模块流程分析6. linux系统启动流程分析7. linux下svn使用指南8. LFS 相关9. linux 内核的初转载 2010-05-27 10:58:00 · 2487 阅读 · 0 评论 -
Android 初始化ini.rc中启动zygote服务
我对这个文件还没仔细研究过,不过一个网友突然问了我一个问题,我也还是大概的知道一些。 android的系统应用中的一个重要的进程就是zygote,所有的java应用程序进程都是由zygote派生出来的,zygote这个进程的作用就是“生儿子”。具体的一个应用如何出来的大家可以看我以前的一篇文章-----Android 应用初始化及窗体事件的分发。 首先要了转载 2010-05-27 11:11:00 · 620 阅读 · 0 评论 -
[转]Android虚拟电源管理驱动
Android系统如果没有电源管理相关的驱动程序,在启动时将会提示如下错误:I/SystemServer( 50): Starting Battery Service.E/BatteryService( 50): Could not open /sys/class/power_supply/ac/onlineE/BatteryService( 50): C转载 2010-05-27 12:54:00 · 1048 阅读 · 0 评论 -
android 无线启动过程分析
开机过程中无线模块的初始化过程: rild 调用参考实现 Reference-ril.c (hardware/ril/reference 开机过程中无线模块的初始化过程:rild 调用参考实现 Reference-ril.c (hardware/ril/reference-ril) 中的函数:const RIL_RadioFunctions *R转载 2010-05-27 17:09:00 · 434 阅读 · 0 评论 -
Android 2.1 源码结构分析(1)
Android 2.1 源码结构分析Rockie Cheng Android 2.1|-- Makefile|-- bionic (bionic C库)|-- bootable (启动引导相关代码)|-- build (存放系统编译规则及generi转载 2010-05-27 17:42:00 · 420 阅读 · 0 评论 -
Android 2.1 源码结构分析(2)已完成
(1)也有更新frameworks 目录 (核心框架——java及C++语言).|-- base (基本内容)| |-- api (?都是xml文件,定义了java的api?)| |-- awt (AWT库)| |-- build (空的)| |-- camera (摄像头服务程序库)| |--转载 2010-05-27 17:43:00 · 332 阅读 · 0 评论 -
Java中线程的高级应用
一、Java多线程互斥及同步控制和通信 多个线程的执行是并发的,也就是在逻辑上“同时”,而不管是否是物理上的“同时”。如果系统只有一个CPU,那么真正的“同时”是不可能的,但是由于CPU的速度非常快,用户感觉不到其中的区别,因此我们也不用关心它,只需要设想各个线程是同时执行即可。多线程和传统的单线程在程序设计上最大的区别在于,由于各个线程的控制流彼此独立,使得各个线程之间的代码是乱序转载 2010-05-27 17:44:00 · 456 阅读 · 0 评论 -
ADROID 2.1 架构解析 亮度设置
3 亮度设置3.1 应用设计3.1.1 设置进度条范围背光设置是在:设置->声音和显示->亮度,通过进度条来设置的。文件:packages/apps/Settings/src/com/android/settings/BrightnessPreference.javaprivat转载 2010-05-27 17:54:00 · 395 阅读 · 0 评论 -
编译Android最新源码(090508)
听说新版本的android 增加了许多特性,浏览器速度更快,在2009年5月7号用repo下载了整个源码,进行编译,中间遇到了一些问题,并解决了。1.下载(以下是大致过程,具体详细方法可参考android官网)mkdir buildcd buildrepo init -u git://android.git.kernel.org/platform/manifest.gi转载 2010-05-27 18:24:00 · 384 阅读 · 0 评论 -
Android Start up
[First written by Steve Guo, please keep the mark if forwarding.].init isthe first process after kernel started. The corresponding source codelies in: d转载 2010-05-27 18:30:00 · 672 阅读 · 0 评论 -
Android WiFi 电源管理
Android对WiFi电源管理的代码主要在WifiService.java中。如果应用程序想在屏幕被关掉后继续使用WiFi则可以调用acquireWifiLock来锁住WiFi,该操作会阻止WiFi进入睡眠状态。当应用程序不再使用WiFi时需要调用releaseWifiLock来释放WiFi。之后WiFi可以进入睡眠状态以节省电源。 默认情况下当屏幕被关掉以后,如果没有应用转载 2010-05-27 18:47:00 · 822 阅读 · 0 评论 -
Talking about Android Process
[First written by Steve Guo, please keep the mark if forwarding.] In this topic you will learn some information about Android processmanagement. First let’s take a look at the launched pro转载 2010-05-27 18:51:00 · 428 阅读 · 0 评论 -
[转]Android 应用初始化及窗体事件(按键)的分发 [此博文包含图片]
Android 应用初始化及窗体事件(按键)的分发 ---AlbertChenAndroid java application运行环境初始化简介:在kernle启动之后, 系统将通过App_main进程来初始化android Runtime JAVA运行环境,zygote是android的第一个进程,所有android的应用都是通过zygotefork出转载 2010-05-26 18:29:00 · 502 阅读 · 0 评论 -
浅析iniit.rc脚本中的service程序不写disabled字段why会自动执行
浅析iniit.rc脚本中的service程序不写disabled字段why会自动执行1.ramdisk的/init.rc中,...on boot//在boot阶段执行 ifup lo hostname localhost ... class_start default //对应KEYWORD(class_start, COMMAND, 1,转载 2010-05-26 19:14:00 · 526 阅读 · 0 评论 -
Android移植: wifi设计原理(源码分析) [嵌入式]
Android移植: wifi设计原理(源码分析) [嵌入式] 初始化在 SystemServer 启动的时候,会生成一个 ConnectivityService 的实例, try { Log.i(TAG, "Starting Connectivity Service.");转载 2010-05-27 11:22:00 · 682 阅读 · 0 评论 -
Git和Repo扫盲——如何取得Android源代码
Git和Repo扫盲——如何取得Android源代码2009年4月29日 William Hua 发表评论 阅读评论http://www.williamhua.com/category/android/ Git 是 Linux Torvalds 为了帮助管理 Linux内核开发而开发的一个开放源码的分布式版本控制软件,它不同于转载 2010-05-27 14:39:00 · 292 阅读 · 0 评论 -
定制android启动界面
本文想要说的是如何定制android设备启动后进入的初始界面,具体说来就是目前android默认起来以后直接进入,现在想给它加一些其他的选项,如图所示:在这里你可以选择home进入android平台自带的默认系统,也可以选择Myhome进入你自己定制的系统。那么如何实现这个启动界面的定制呢,其实很简单:创建一个新的项目Myhome,然后编辑它的manifest.xml文件:转载 2010-05-27 17:09:00 · 286 阅读 · 0 评论 -
Android进程与线程
当某个组件第一次运行的时候,Android启动了一个进程。默认的,所有的组件和程序运行在这个进程和线程中。 也可以安排组件在其他的进程或者线程中运行 进程组件运行的进程由manifest file控制。组件的节点 — , , , 和 — 都包含一个 process 属性。这个属性可以设置组件运行的进程:可以配置组件在一个独立进程运行,或者多个组件在同一个进程运行。甚至可以多个程序转载 2010-05-27 17:44:00 · 516 阅读 · 0 评论 -
Android事件处理分析
按键事件对于按键事件,调用mDevices->layoutMap->map进行映射。映射实际是由KeyLayoutMap::map完成的,KeyLayoutMap类里读取配置文件qwerty.kl,由配置 文件 qwerty.kl决定键值的映射关系。你可以通过修 改./development/emulator/keymaps/qwerty.kl来改变键值的映射关系。 J转载 2010-05-27 17:48:00 · 420 阅读 · 0 评论 -
在Android中监视wifi状态
. Confirm if Wifi is OnUsing isEnabled() in WifiManager.If not, use setEnabled(true) to turn on it.Note:May take some time, suggest to wait 1~3 seconds.2. Scan APUsing scanAP() in Wifi转载 2010-05-27 18:48:00 · 1389 阅读 · 0 评论 -
浅析kernel启动的第1个用户进程init如何解读init.rc脚本
浅析kernel启动的第1个用户进程init如何解读init.rc脚本首先解读1.on init字段到来,state->context为新申请到的struct action结构体,并将其挂接到action_list尾部,然后初始化处理方法,之后该section内的所有command都将挂接到act->commands链表上,这样也就有了立转载 2010-05-27 19:04:00 · 847 阅读 · 0 评论 -
浅析iniit.rc脚本中的service程序不写disabled字段why会自动执行
浅析iniit.rc脚本中的service程序不写disabled字段why会自动执行1.ramdisk的/init.rc中,...on boot//在boot阶段执行 ifup lo hostname localhost ... class_start default //对应KEYWORD(class_start, COMMAND, 1,转载 2010-05-27 19:05:00 · 844 阅读 · 0 评论 -
让我们一起更快捷的使用Eclipse
快捷键应该是节省时间的一个要素 ,所以自己在网上找了下面这些快捷键, 以便让更多的程序员更快捷的使用Eclipse. Ctrl+M 切换窗口的大小 Ctrl+Q 跳到最后一次的编辑处 Ctrl+/ 在代码窗口中是这种//~ 注释。 再按一次就是取消注释Ctrl+Shift+/ 在代码窗口中是这种/*~*/ 注释,在JSP 文件窗口中是 。 Alt+Shif转载 2010-05-27 19:14:00 · 457 阅读 · 0 评论 -
ubuntu9.04上android sdk 1.5 安装与配置
1.下载android sdk下载地址如下:http://dl.google.com/android/android-sdk-windows-1.5_r2.zip http://dl.google.com/android/android-sdk-linux_x86-1.5_r2.zip 2.下载eclipse 3.4.2 按官方文档说,android sdk 可转载 2010-05-27 19:15:00 · 654 阅读 · 0 评论