android
linxi_hnh
这个作者很懒,什么都没留下…
展开
-
[转]android 修改ramdisk.img和init.rc && android启动后设置/data权限为770
有时候希望在启动后做点事情,比如在sdcard上建立目录,修改/data的访问权限等,这些都可以放在init.rc中去完成,那么如何来完成呢,最近由于工作的需要,在这方面进行了一些研究,特写于此,供大家参考。 通过下面的例子来讲述,实现一个功能:在android系统启动后,修改/data的访问权限为770.共4步:1、解压ramdisk.img 2、用c语言完成要实现的功转载 2012-09-30 14:57:46 · 472 阅读 · 0 评论 -
android timed gpio (linux 3.0.0) 受时钟控制的gpio
1 路径: drivers/staging/android/timed_gpio.c drivers/staging/android/timed_output.c drivers/staging/android/timed_output.h drivers/staging/android/timed_gpio.h2 代码分析:原创 2012-10-06 16:43:32 · 1316 阅读 · 0 评论 -
android switch (linux3.0.0)
1 路径: drivers/switch/switch_class.c drivers/switch/switch_gpio.c include/linux/switch.h2 代码分析:113 int switch_dev_register(struct switch_dev *sdev)114 {115 int ret;116原创 2012-10-06 16:07:08 · 745 阅读 · 0 评论 -
android logger 简要分析 (kernel 3.0.0)
1 路径: drivers/staging/android/logger.c drivers/staging/android/logger.h2 创建的设备节点(在drivers/staging/android/logger.h定义): dev/log_events /* system/hardware events */ d原创 2012-10-06 12:11:26 · 480 阅读 · 0 评论 -
Android筆記.
有好一段時間,都在ARM basedRTOS通訊產品中開發,很難有機會回到Embedded Linux的領域,而Linux上所擁有的豐富資源,更是凡事都要親力親為的RTOS環境所不能比擬的. 最近,有機會參與移植Android到新的晶片計畫,也藉此機會,把Android的基礎工程做一個Review. 在平台正式取得前,我們可以透過QEMU的環境模擬出Google定義的goldfis转载 2012-10-05 18:21:23 · 1416 阅读 · 0 评论 -
android pmem 和ashmem 介绍及实例分析 Android PMem 和Ashmem 介绍
pmem: drivers/misc/pmem.c1、Ashmem(匿名共享内存驱动:Anonymous Shared Memory)它基于mmap系统调用,不同进程可以将同一段物理内存映射到各自的虚拟地址控制,从而实现共享A、(mmap:是一种共享内存的系统。假如:A进程的内存空间范围0X0000~0XFFFF,B进程的内存空间范围0X0000~0转载 2012-10-05 17:06:52 · 516 阅读 · 0 评论 -
Android内核详解之Low memory killer
Android在内存管理上与linux有些小的区别。其中一个就是引入了Low memory killer .1,引入原因 Android是一个多任务系统,也就是说可以同时运行多个程序,这个大家应该很熟悉。一般来说,启动运行一个程序是有一定的时间开销的,因此为了加快运行速度,当你退出一个程序时,Android并不会立即杀掉它,这样下次再运行该程序时,可以很快的启动。随着系统中保留的程序越转载 2012-10-05 18:15:29 · 467 阅读 · 0 评论 -
Android Low memory killer by 永远的伊苏
Android中,进程的生命周期都是由系统控制的,即使用户关掉了程序,进程依然是存在于内存之中。这样设计的目的是为了下次能快速启动。当然,随着系统运行时间的增长,内存会越来越少。Android Kernel 会定时执行一次检查,杀死一些进程,释放掉内存。 那么,如何来判断,那些进程是需要杀死的呢?答案就是我们的标题:Low memory killer机制。 An转载 2012-10-05 18:19:21 · 2214 阅读 · 0 评论 -
Android HAL实例解析
一、本文源自刘洪涛,实际上源自台湾的Jollen的mokoid工程代码。二、HAL介绍现有HAL架构由Patrick Brady (Google) 在2008 Google I/O演讲中提出的,如下图。Android的HAL是为了保护一些硬件提供商的知识产权而提出的,是为了避开linux的GPL束缚。思路是把控制硬件的动作都放到了Android HAL中,转载 2012-10-05 18:16:36 · 576 阅读 · 0 评论 -
android apk
要求在产品中预装大量的第三方app,apk文件有600M多,加上相关资源文件,共计4G。如何把如此多的文件在安装时内置到系统成了问题。解决方法有三: 1 在update.zip中实现复制。写updater-script 通过使用script 复制。见我的另一篇自定义updater-script的文章。 缺点:script脚本需要自己写,不能随make生成。转载 2012-10-10 14:39:19 · 580 阅读 · 0 评论 -
重新签名Android pre-install APK
题外话: 最近在研究Android APK的自动化测试方法,期间遇到了APK签名问题, 尤其是Android系统pre-install的应用,它们的签名方式比较特殊,后面会说到,于是在Eclipse里写好的测试代码就会由于权限问题,无法测试这些应用。折腾了好几天,头疼。好在最后还是搞定了,于是乎就想在这里分享一下我的一点经验,有感兴趣的、或者有类似问题的朋友们,希望能够给你们一点帮助。转载 2012-10-10 11:12:58 · 1342 阅读 · 0 评论 -
Apicheck机制
Apicheck机制Apicheck的本质是比较当前生成的api.xml(和frameworks/api/下面的文件相同)。 其执行的命令如下:out/host/linux-x86/bin/apicheck -hide 2 -hide 3 -hide 4 -hide 5 -hide 6 -hide 24 -hide 25 -error 7 -error 8 -e转载 2013-01-16 21:15:20 · 834 阅读 · 0 评论 -
android 认识
有好一段時間,都在ARM based RTOS通訊產品中開發,很難有機會回到Embedded Linux的領域,而Linux上所擁有的豐富資源,更是凡事都要親力親為的RTOS環境所不能比擬的.最近,有機會參與移植Android到新的晶片計畫,也藉此機會,把Android的基礎工程做一個Review.在平台正式取得前,我們可以透過QEMU的環境模擬出Google定義的goldfish转载 2013-01-16 21:12:27 · 753 阅读 · 0 评论 -
android cmd aapt
来自:http://mmmyddd.freeshell.net/blog.cgi/Computer/Android/aapt-decompress-apkAAPT 工具介绍下面是取自"http://www.androidcn.net/wiki/index.php/Reference/aapt"的介绍aapt stands for Android Asset Packaging To转载 2013-01-16 21:09:38 · 746 阅读 · 0 评论 -
android logo:内核、android开机动画
http://blog.csdn.net/xubin341719/article/details/8267282#comments关键词:android 开机logo 开机动画 initlogo.rle bootanimation desc.txt平台信息:内核:linux2.6/linux3.0系统:android/android平台:S5PV310(sa转载 2013-01-23 20:22:09 · 443 阅读 · 0 评论 -
android 电池(一):锂电池基本原理篇
android 电池(一):锂电池基本原理篇http://blog.csdn.net/xubin341719/article/details/8497830关键词:android 电池关机充电 androidboot.mode charger平台信息:内核:linux2.6/linux3.0系统:android/android4.0转载 2013-01-23 20:18:40 · 754 阅读 · 0 评论 -
android 电池(二):android关机充电流程、充电画面显示
http://blog.csdn.net/xubin341719/article/details/8498580 android 电池(二):android关机充电流程、充电画面显示分类: S5PXX(三星)2013-01-13 18:50 577人阅读 评论(3) 收藏 举报关键词:android 电池关机充电 andr转载 2013-01-23 20:17:11 · 983 阅读 · 0 评论 -
android 量产软件改动信息(持续更新)
http://blog.csdn.net/xubin341719/article/details/8449352关键词:android 4.0默认语言蓝牙名称 MTP名称默认时区关于平板电脑 内核版本号平台信息:内核:linux2.6/linux3.0系统:android/android4.0 平台:S5PV310(samsungexynos4210)转载 2013-01-23 20:24:06 · 487 阅读 · 0 评论 -
linux 里编译windows下的fastboot和adb
理论上,只要下一个windows版本的SDK,里面就自带了fastboot和adb工具。但我最近确实遇到了一个需要在linux下编译出windows版本的adb的问题,废话不多说,步骤如下:1. 执行:apt-get install mingw32 安装了linux-windows交叉编译环境mingwin2. 执行:. build/envse转载 2012-10-20 11:52:23 · 643 阅读 · 0 评论 -
android对linux内核的增强 ----alarm(硬件时钟)
1 作用 : 它提供了一个定时器,用于把设备从睡眠状态唤醒,同时也提供了一个在设备睡眠时仍然会运行时的基准时钟。2 源码:drivers/rtc/alarm.c3 设备名称:"/dev/alarm"4 代码介绍: 22 enum android_alarm_type { 23 /* return code bit numbers or s转载 2012-10-01 16:48:01 · 833 阅读 · 0 评论 -
android linux 系统总结4
====================================================================3. 制作交叉工具链3.1 什么是工具链3.2 获取交叉工具链的几种途径3.3 android工具链与gnu工具链的比较 每一个软件,在编译的过程中,都要经过一系列的处理,才能从源代码变成可执行的目标代码。这一系列处理包括:预编译,高级语言转载 2012-09-30 15:47:34 · 576 阅读 · 0 评论 -
android linux 基础知识总结 1
===================================================linux ,Android基础知识总结1. Android编译系统分析2. 文件系统分析3. 制作交叉工具链4. 软件编译常识5. 设置模块流程分析6. linux系统启动流程分析7. linux下svn使用指南8. LFS 相关9. linux 内核的初步理解======转载 2012-09-30 15:44:03 · 441 阅读 · 0 评论 -
android native property属性
前几天在分析Camera的时候,有一段这样的代码 property_get("service.camera.hw", value,"base");从字面猜测这是获取属性值,但是怎么去获取?属性值又在哪设置的?决定等把Camera HAL理完了之后,把这个也分析一下。今天就粗略的看了并总结如下。 属性(property)是一对键/值(key/value)组合,键和值都是字符串类型。A转载 2012-09-30 15:25:25 · 649 阅读 · 0 评论 -
android make file 参数解释及模板(即 android.mk内容解释)
1. LOCAL_MODULE_TAGS解释:控制此模块在什么情况下编译,一般为下面写法: LOCAL_MODULE_TAGS:= optional可选择的几个值:user:指该模块只在user版本下才编译 eng: 指该模块只在eng版本下才编译 tests: 指该模块只在tests版本下才编译 optional:指该模块在所有版本转载 2012-09-30 15:19:45 · 670 阅读 · 0 评论 -
Android Building System
最近研究了下Android的编译系统,下面结合编译我们自己的产品mobot来对整个编译系统进行必要的介绍,方便大家今后对默认编译的修改。先列出几个觉得重要的Make文件:build/buildspec.mkbuild/envsetup.shbuild/core/main.mkbuild/core/envsetup.mkbuild/config转载 2012-09-30 15:11:41 · 444 阅读 · 0 评论 -
ADROID 2.2 语言定制
本文是主要对android定制多语言的问题进行深入研究后,总结了其定制的机制和其具体实现方法。如果想深入了解其定制的机制,可阅读本文第一部分,如 果只想了解如何定制,请参考第二部分。 第一部分 多语言定制的机制 1、ICU4C简介 ICU4C(ICU for C, http://site.icu-project.org/ ) 是ICU在C/C++平台下的版本,转载 2012-09-30 15:08:22 · 359 阅读 · 0 评论 -
android init.rc语法标准
Android 初始化语言由四大类声明组成: 行为类(Actions), 命 令类(Commands) ,服务类(Services),选项类(Options). * 初始化语言以行为单位,由以空格间隔的语言符号组成。C 风格的反斜杠转义符可以用来插入空白到语言符号。双引号也可以用来防止文本被空格分成多个语言 符号。当反斜杠在行末时,作为折行符。 * 以# 开 始( 前面允许有空转载 2012-09-30 15:06:23 · 421 阅读 · 0 评论 -
Android ramdisk.img system.img userdata.img 介绍与使用
android 源码编译后得到system.img,ramdisk.img,userdata.img映像文件。其中, ramdisk.img是emulator的 文件系统,system.img包括了主要的包、库等文件,userdata.img包括了一些用户数据,emulator负责加载这3个映像文件后,会 把system.img和userdata.img分别加载到 ramdisk文件系统中的sys转载 2012-09-30 15:04:09 · 452 阅读 · 0 评论 -
Android:快速修改ramdisk.img脚本
有时候要修改Android的ramdisk.img,如果每次都将那些命令都敲一遍,那确实有点烦,那有没有快速简单的方法呢?有,就是将这些命令放在一起,创建了一个简单的脚本:这个脚本很简单,直接将脚本放到放有ramdisk.img的目录下,运行就行了,运行时,输入1,会将ramdisk.img解压出来,输入2会将修改后的ramdisk重新打包成ramdisk.img。root@转载 2012-09-30 15:01:22 · 394 阅读 · 0 评论 -
android linux 基础知识总结2
二 ubuntu下烧录内核和文件系统1. 硬件: 手机一台usb转串口线一根usb转网卡线一根2. 软件环境1> tftp 服务器执行脚本: setup_tftpd.sh 安装和配置tftp服务器,我们默认以 /tftpboot 为 tftp服务器的根目录,需要下载的文件都放在该目录下。2> 获取待烧录的镜像文件svn list svn://192.168.2.148/转载 2012-09-30 15:45:34 · 1044 阅读 · 0 评论 -
android linux 系统总结3
2. 文件系统分析2.1 文件系统概述2.2 ext2 ,ext3 文件系统2.3 jffs,jffs2 文件系统2.4 yafss,yaffs2 文件系统2.5 虚拟文件系统(sysfs,proc,tsmpfs等)2.6 一些必要重要的系统文件 ( /etc/fstab ,inittab,init.rc等)2.7 制作文件系统 2.1 文件系统概述 文件系统(File转载 2012-09-30 15:46:47 · 1113 阅读 · 0 评论 -
android 系统 makefile文件(Android.mk)组织结构(main.mk)
下面是main.mk文件包含关系,本文档主要说明的就是这些文件里到底做了什么。(这个文件被根目录下的makefile文件包含) 一. main.mk 1.检查版本号,设置环境变量(BUILD_SYSTEM)和缺省的目标。$(MAKE_VERSION) >= 3.81,BUILD_SYSTEM= build/core转载 2012-09-30 15:21:41 · 718 阅读 · 0 评论 -
Android Makefile中 如何识别 TARGET_PRODUCT
今天有时间小看一下Android 的Makefile, 终于稍有明白Android 编译系统是如何通过环境变量 TARGET_PRODUCT 来决定编译定制product.首先, 编译Android 代码 通常情况下使用:# make showcommands这实际上等价于下面的完整命令 (具体参见 build/core/envsetup.mk )# TARGET_转载 2012-09-30 15:10:17 · 800 阅读 · 0 评论 -
Android.mk介绍
摘自:http://blog.chinaunix.net/u3/99423/showart_2206760.html在一个Android.mk中可以生成多个可执行程序、动态库和静态库。1,编译应用程序的模板: #Test Exe LOCAL_PATH := $(call my-dir) #include $(CLEAR_VARS)转载 2012-09-30 16:26:24 · 317 阅读 · 0 评论 -
android 系统定制的小技巧(网络收集)
1开机图片: android-logo-mask.png android-logo-shine.png 这两个图片一个在上一个在下 ./out/target/common/obj/JAVA_LIBRARIES/android_stubs_current_intermediates/classes/assets/images/android-logo-shine.转载 2012-09-30 16:23:26 · 664 阅读 · 0 评论 -
Android平台上使用属性系统(property system)
在使用Android的属性系统(property system)时遇到了一些问题,结合此次经历,对属性系统的使用做以简单介绍。 一、Property系统简介属性系统是android的一个重要特性。它作为一个服务运行,管理系统配置和状态。所有这些配置和状态都是属性。每个属性是一个键值对(key/value pair),其类型都是字符串。从功能上看,属性与windows系统的注册表非常转载 2012-09-30 16:03:06 · 1132 阅读 · 0 评论 -
android init.rc语法
1.init时设置设备权限init可执行文件是Android系统运行的第一个用户空间的程序,它以守护进程的方式运行2. init.rc中的内容在Android中使用启动脚本init.rc,init启动脚本路径:system/core/rootdir/init.rc可以在系统的初始化过程中进行一些简单的初始化操作,init.rc脚本被直接安装到目标系统的根文件系统中,被ini转载 2012-09-30 15:51:21 · 816 阅读 · 0 评论 -
android linux 系统总结5
5. 设置模块流程分析rild 流程分析5.1 设置 pin 状态,pin认证5.1.1 设置pin状态5.1.2 修改sim卡pin5.1.3 pin认证流程5.2 网络设置5.3 屏幕背光设置5.4 获取,显示电池状态================EditPinPreference.java (packages\apps\settings\src\com\android转载 2012-09-30 15:49:04 · 1595 阅读 · 0 评论 -
adb 更新内核
adb push uImage /sdcard/adb shellmount -o remount /cp /sdcard/uImage ./同理可以修改system,data,cache,misc,sdcard,recovery分区的数据。原创 2013-01-18 11:22:37 · 735 阅读 · 0 评论