
android学习
文章平均质量分 85
别说郁闷
手机开发
展开
-
android property
Android System Property一 System Property 代码中大量存在:SystemProperties.set()/SystemProperties.get();通过这两个接口可以对系统的属性进行读取/设置,顾名思义系统属性,肯定对整个系统全局共享。通常程序的执行以进程为单位各自相互独立,如何实现全局共享呢?System Propertie转载 2015-05-19 20:48:16 · 492 阅读 · 0 评论 -
关于f_mass_storage.c的文章(转载)
原文地址:http://blog.youkuaiyun.com/HellDevil/archive/2010/05/18/5604421.aspxhttp://blog.youkuaiyun.com/HellDevil/archive/2010/05/06/5561918.aspxhttp://blog.youkuaiyun.com/HellDevil/archive/2010/01/19/5213888.aspxhtt转载 2011-12-29 16:57:31 · 4999 阅读 · 0 评论 -
分析Android 根文件系统启动过程(init守护进程分析)
在Android系统启动时,内核引导参数上一般都会设置“init=/init”,这样的话,如果内核成功挂载了这个文件系统之后,首先运行的就是这个根目录下的init程序。这个程序所了什么呢? 我们只有RFSC(Readthe Fucking Source code)!!init程序源码在Android官方源码的system/core/init中,main在init.c里。我们的分析就从main开转载 2012-02-02 14:34:37 · 421 阅读 · 0 评论 -
Android boot.img 结构
Android 的boot.img 包括 boot header,kernel, ramdisk首先来看看Makefile是如何产生我们的boot.img的: boot镜像不是普通意义上的文件系统,而是一种特殊的Android定制格式,由bo转载 2011-08-29 11:38:45 · 708 阅读 · 0 评论 -
android ramdisk
1、android文件系统的结构android源码编译后得到system.img,ramdisk.img,userdata.img映像文件。其中,ramdisk.img是emulator的文件系统,system.img包括了主要的包、库等文件,userdata.img包括了一转载 2011-08-08 10:35:01 · 1458 阅读 · 0 评论 -
android镜像制作方法
一:update.zip包的制作 1:新建一个目标,在此目录下准备好需要的文件,如system目录文件、boot.img、recovery.img等. mkdir testupdate cp system/ testupdate/ -tf转载 2011-08-08 14:10:44 · 1250 阅读 · 0 评论 -
关于Android LOG系统
下面是第一篇(转自:http://blog.163.com/binghaitao@126/blog/static/3383532520099309366435/)1:在编译so文件的c或cpp文件之前中加入以下代码,就可以在android中的log显示日志内容 #in转载 2011-07-18 18:14:00 · 575 阅读 · 0 评论 -
android property system
android property systemProperty system is an important feature on android. It runs as a service and manages system configurations and status转载 2011-07-18 17:34:51 · 909 阅读 · 0 评论 -
android 中使用socket使native和framework通信
一般的native和framework的通信是通过jni,但是这一般只是framework调用native,native如果有消息要怎样通知上层呢?android中GSP模块提供一种解决思路,但是实现有些复杂,这里介绍一种使用socket通信的方法可以使native和framew转载 2011-07-18 17:19:11 · 577 阅读 · 0 评论 -
android的logcat详细用法
Android日志系统提供了记录和查看系统调试信息的功能。日志都是从各种软件和一些系统的缓冲区中记录下来的,缓冲区可以通过 logcat 命令来查看和使用.使用logcat命令你可以用 logcat 命令来查看系统日志缓冲区的内容:[adb] logcat [] ... [] .转载 2011-07-21 16:28:43 · 623 阅读 · 0 评论 -
G-sensor(1)
G-sensor(1) 2011-03-18 22:26:57| 分类: Android 学习总结 | 标签:无 |字号 订原创 2011-07-06 18:29:49 · 1005 阅读 · 0 评论 -
Android中G-Sensor相关流程
1.使G-sensor正常工作需要做的事:G-sensor driver文件包括:driver/i2c/chips/lis331dl.cdriver/i2c/chips/sensorioctl.hinclude/linux/lis331dl.h并在/kerne转载 2011-07-06 18:32:41 · 812 阅读 · 0 评论 -
android 和linux的休眠唤醒机制
Android在标准linux基础上对休眠唤醒的实现(三)LinuxAndroidJNIOSGo四、android层源码解析在linux之上经过android的软件堆层层封装,最终在上层的java应用程序中使用。休眠唤醒也是从最上层发出的命令,然后一层一层地将参数解析,往最底层传,最后走上标准linux的休眠唤醒之路。这一部分将会初略分析休眠唤醒机制上linux之上所走的路转载 2011-12-29 11:48:48 · 3841 阅读 · 2 评论 -
编译android源码的make命令解析
摘要: 本文描述了编译android源码时,make命令后面隐藏的玄机,通过一步步的分析,你会发现,实际上不是想象的那么复杂(肯定比编hello world复杂,哈)。正文: 最近编译了一下android 1.6,同时也分析了一下android的build system。build system对我来说实在太大,要想了解这个系统的细节不是一两天可以完成的,于是我就退而求其次,去转载 2012-02-02 18:03:30 · 517 阅读 · 0 评论 -
Android启动过程
当按下Android设备电源键时究竟发生了什么?Android的启动过程是怎么样的?什么是Linux内核?桌面系统linux内核与Android系统linux内核有什么区别?什么是引导装载程序?什么是Zygote?什么是X86以及ARM linux?什么是init.rc?什么是系统服务?当我们想到Android启动过程时,脑海中总是冒出很多疑问。本文将介绍Android的启动过程,希望能帮转载 2014-10-21 09:59:13 · 552 阅读 · 0 评论 -
Android 编译大全
Android 编译大全Android编译大全(一)1. 编译前的准备1.1. 编译环境准备v 先构建一个Ubuntu 9.10虚拟机v 在虚拟机中确认下面的包是否已经安装:n sudo apt-get install build-essentialn sudo apt-get install maken sudo apt-get转载 2012-12-06 09:56:50 · 661 阅读 · 0 评论 -
Android 编译系统 (二)
目录(?)[+] LOCAL_NO_MANIFEST如果你的Package没有Manifest(AndroidManifest.xml),你可以设置LOCAL_NO_MANIFEST:=true.------分隔符,方便下次编辑修改------If your package doesn't have a manifes转载 2012-12-06 10:12:54 · 724 阅读 · 0 评论 -
Android 编译系统 (一)
要是没有一个完整的Android Build System 中文版,所以写了一个也可以以后作为参考。1.Makefile & Android buildsystem在进行讲述Android编译系统之前,应该先了解一下编译时所使用的Makefile,或者说复习下这方面的知识,这样才能更好的了解Android build system的原理。1.1.Makefile1.1.1.Makefi转载 2012-12-06 10:11:19 · 785 阅读 · 0 评论 -
Android源码分析系列-整理篇
作者:gzshun. 原创作品,转载请标明出处!来源:http://blog.youkuaiyun.com/gzshun本系列主要走了一下Android挂载SD卡的流程,从Vold到Framework,再从Framework到UI。也熟悉了谷歌写的C/C++源代码,提高一下自己的类的设计与代码的技巧,很感谢谷歌提供这么一个手机的开源操作系统Android,让鄙人也有机会来了解一下智能终端系统的实现转载 2012-08-29 15:55:50 · 510 阅读 · 0 评论 -
Android 2.3 SD卡挂载流程浅析
http://blog.youkuaiyun.com/yihongyuelan/article/details/6926034转载 2012-08-29 15:57:21 · 1142 阅读 · 0 评论 -
Android电源管理 .
Android电源管理方面网上资料比较多,这里就梳理下Android源码的线索,关注wake_lock和early_suspend。使一个应用程序不进入睡眠,须在上层申请一个wakelock锁,并对该锁进行持有。在acquire()和release()间,进程保持running状态。持有锁acquire()经过framework层PowerManagerService.java到抽象层Po转载 2012-03-29 16:13:53 · 601 阅读 · 0 评论 -
Android的电源管理
总体上来说Android的电源管理还是比较简单的,主要就是通过锁和定时器来切换系统的状态,使系统的功耗降至最低,整个系统的电源管理架构图如下: (注该图来自Steve Guo) 接下来我们从Java应用层面, Android framework层面, Linux内核层面分别进行详细的讨论:应用层的使用:Android提供了现成android.os.PowerMa转载 2012-02-02 15:35:20 · 442 阅读 · 0 评论 -
分析android的usb-gadget
分析android的gadget:gadget部分的UDC和API基本上弄懂了,现在开始研究android上的USB-gadget实现,开始读代码1:首先从init开始。static int __init init(void){ struct android_dev *dev; printk(KERN_INFO "android ini转载 2011-12-29 17:00:57 · 3189 阅读 · 1 评论 -
Linux Kernel and Android 休眠与唤醒
这是在网上看到的,关于linux电源管理说的比较清楚的还真不多。这篇不错,转过来。正好这几天在研究android电源管理机制。简介国际化版本信息对于休眠(suspend)的简单介绍Linux Suspend 的流程相关的文件:准备, 冻结进程让外设进入休眠ResumeAndr转载 2011-12-29 16:39:29 · 711 阅读 · 0 评论 -
Android 的属性系统(翻译)
每个属性都有一个名称和值,他们都是字符串格式。属性被大量使用在Android系统中,用来记录系统设置或进程之间的信息交换。属性是在整个系统中全局可见的。每个进程可以get/set属性。在系统初始化时,Android将分配一个共享内存区来存储的属性。这些是由“init”守护进程完成的,其源代码位于:device/system/init。“init”守护进程将启动一个属性服务。属性服务在“init转载 2012-02-02 15:30:50 · 405 阅读 · 0 评论 -
Android中Log机制详解
<br />Android中Log的输出有如下几种:<br /><br />Log.v(String tag, String msg); //VERBOSE<br />Log.d(String tag, String msg); //DEBUG<br />Log.i(String tag, String msg); //INFO<br />Log.w(String tag, String msg); //WARN<br />Log.e(St转载 2011-05-09 17:34:00 · 561 阅读 · 0 评论 -
MMS实现详细分析
<br />MMS在进行发送前,要对无线模块进行无线网络连接,实现GPRS的拨号上网,无线网络连接成功后,才能利用无线模块基于WAP的方式对MMS进行发送,通过移动交换网络,最终发送到终端用户手机上。本节将对无线模块的拨号上网以及建立PPP连接链路的流程图和所用到的协议,如AT指令集、PPP连接协议以及本课题中捕获的无线网络连接的数据进行分析。<br /> 无线网络连接的流程图分析<br /> 本课题中,无线网络采用的是中国移动GPRS网络,无线模块选用的BENQM2转载 2011-05-10 12:24:00 · 763 阅读 · 0 评论 -
AT COMMAND
I found an emulator log of AT commands issued by Android to 3G module (well, for now it's a virtual device).<br /><br />The log file can be created by following procedure.$ cd /your/android/sdk//tools<br />$ ./emulator &<br />(wait for booting em转载 2011-05-10 11:55:00 · 1822 阅读 · 0 评论 -
Android编译大全(三)--编译之后的代码结构及SDK制作
3. 验证编译之后的模块$export ANDROID_PRODUCT_OUT=<SrcDir>/out/target/product/generic$cd ./out/host/linux-x86/bin$./emulator<br /> <br /> 4. 编译完成之后的代码结构<br />Android编译完成后,将在根目录中生成一个out文件夹,所有生成的内容均放置在这个文件夹中。out文件夹如下所示:<br />out/<br />|-- CaseCheck.txt<br />|-- casech转载 2011-05-20 11:50:00 · 1172 阅读 · 0 评论 -
Android编译大全(二)--编译源码
2. 编译源代码<br />v 执行ls -la /bin/sh命令,如果输出如下:<br />rwxrwxrwx 1 root root 4 2010-02-10 17:14 /bin/sh-> dash<br />请执行$sudo dpkg-reconfiguredash命令修改sh版本,并选择“否”;<br />此处如果不改好的话,编译时会出现错误。<br /> <br />v 执行sourcebuild/envsetup.sh命令<br />v 执行choosecombo命令,出现选择对转载 2011-05-20 11:48:00 · 823 阅读 · 0 评论 -
Android编译大全(一)--环境配置及获取源码
1. 编译前的准备1.1. 编译环境准备<br />v 先构建一个Ubuntu 9.10虚拟机<br />v 在虚拟机中确认下面的包是否已经安装:<br />n sudo apt-get installbuild-essential<br />n sudo apt-get install make<br />n sudo apt-get install gcc<br />n sudo apt-get install g++<br />n sudo apt-get installlibc6-dev<b转载 2011-05-20 11:47:00 · 764 阅读 · 0 评论 -
android编译及环境配置
<br /><br />本文将为大家介绍的是如何设置Android源码的编译环境,包括Linux下的配置。主要基于Android 1.0环境,希望对大家了解Android开发有所帮助。<br />本次编译过程主要参考官方文档(http://source.Android.com/download)和网上相关资料(如http://blog.youkuaiyun.com/liaoshengji ... /03/04/3957749.aspx)<br />编译环境:Ubuntu8.10<br />1、安转载 2011-05-20 11:45:00 · 961 阅读 · 0 评论 -
android编译系统makefile(Android.mk)写法
<br />android编译系统的makefile文件Android.mk写法如下<br />(1)Android.mk文件首先需要指定LOCAL_PATH变量,用于查找源文件。由于一般情况下<br />Android.mk和需要编译的源文件在同一目录下,所以定义成如下形式:<br />LOCAL_PATH:=$(call my-dir)<br />上面的语句的意思是将LOCAL_PATH变量定义成本文件所在目录路径。<br />(2)Android.mk中可以定义多个编译模块,每个编译模块都转载 2011-05-20 09:37:00 · 620 阅读 · 0 评论 -
Android的启动脚本–init.rc
<br />由于工作的需要,今天研究了Android的启动脚本–init.rc。<br />在 Android中使用启动脚本init.rc可以在系统的初始化过程中进行一些简单的初始化操作。这个脚本被直接安装到目标系统的根文件系统中,被 init可执行程序解析。 init.rc是在init启动后被执行的启动脚本。<br />我们可以通过修改init.rc脚本来修改启动过程。但是,一般情况下,我们不直接修改init.rc,而是在文件init.%PRODUCT%.rc文件中添加或修改我们需要的额外的初始化转载 2011-05-18 11:52:00 · 1465 阅读 · 0 评论 -
android recovery模式
Android Recovery模式<br />AndroidRecovery模式<br />(muddogxp 原创,转载请注明)<br /> Recovery简介<br />Android利用Recovery模式,进行恢复出厂设置,OTA升级,patch升级及firmware升级。<br />升级一般通过运行升级包中的META-INF/com/google/android/update-script脚本来执行自定义升级,脚本中是一组recovery系统能识别的UI转载 2011-05-18 17:35:00 · 911 阅读 · 0 评论 -
ZTE ANDROID RIL驱动
<br /><br /><br /> <br />ZTE Android系统ril驱动<br />使用说明书<br /> <br /> <br /> <br /> <br /> <br /> <br /> <br /> <br /> <br /> <br /> <br /> <br />作者<br />李焰峰 10094119<br />评审<br />左 钊10051139 陈飞雄10088707<br />部门<br />PC软件部二科<br />版本<br />V0.2<br />时间<br />2转载 2011-05-10 12:09:00 · 5830 阅读 · 1 评论 -
android上层应用apk到G-sensor driver的大致流程
<br />android上层应用apk到G-sensor driver的大致流程:<br />Android HAL层,即硬件抽象层,是Google响应厂家“希望不公开源码”的要求推出的新概念<br />1,源代码和目标位置<br />源代码: /hardware/libhardware目录,该目录的目录结构如下:<br />/hardware/libhardware/hardware.c编译成libhardware.so,目标位置为/system/lib目录<br />/hardware/libhard转载 2011-05-09 18:08:00 · 750 阅读 · 0 评论 -
Android系统的移植要做的两个工作
<br />Android系统的移植的主要目的是为了能在特定的硬件上运行Android系统。而在移植的过程中,一个重要的方面就是把握关键要点,减少工作量。从工作的角度,首先要熟悉硬件抽象层的接口,其次要集成和复用已有的驱动程序,主要的工作量在硬件抽象层的实现中。为了更好地理解和调试系统,也应该适当地了解上层对硬件抽象层的调用情况。<br />移植方面主要的工作有两个部分:Linux驱动 Android系统硬件抽象层 Linux中的驱动工作在内核空间,Android系统硬件抽象层工作在用户空转载 2011-05-11 10:02:00 · 598 阅读 · 0 评论 -
短信编码
android ril CDMA EVDO SMS移植<br />话说ril这东西,whans也是刚刚开始接触,当初谁也没想到目前会从事这个事。不过从事什么都差不多,至少还算是技术活。<br />下面就对RIL 中SMS 的移植做个小结吧,如果有什么不到位的地方,望不吝赐教,谢谢!<br />先提供一些官方的文档手册,作为了解。<br />如何获取android 某个分支一份拷贝,你最好为其准备5G的空间:<br />http://source.android.com/downloa转载 2011-05-10 11:52:00 · 1162 阅读 · 0 评论 -
Android编译大全(四)--编译详细分解
6. 编译详细分解6.1. build系统简介6.1.1.build系统文件结构<br />./build<br />|-- CleanSpec.mk<br />|-- buildspec.mk.default<br />|-- core<br />| |--Makefile<br />| |--apicheck_msg_current.txt<br />| |--apicheck_msg_last.txt<br />| |--armelf.x<br />|转载 2011-05-20 11:52:00 · 1144 阅读 · 0 评论