
android移动开发
文章平均质量分 71
zhudaozhuan
这个作者很懒,什么都没留下…
展开
-
Android SystemProperties系统属性分析
Android 的系统属性包括两部分:文件保存的持久属性和每次开机导入的cache属性。前者主要保存在下面几个文件中:bionic/libc/include/sys/_system_properties.h1 #define PROP_SERVICE_NAME "property_service"2 #define PROP_PATH_RAMDISK_DEFAULT转载 2013-11-27 10:57:10 · 945 阅读 · 0 评论 -
Android 的 init.rc 文件简介
init.rc由许多的Action和Service组成。每一个语句占据一行,并且各个关键字被空格分开.由 # (前面允许有空格)开始的行都是注释行(comment)一个actions 或 services 的开始隐含声明了一个新的段,所有commands 或 options 属于最近的声明。在第一个段之前的 commands 或 options 都会被忽略每一个action转载 2013-11-28 20:56:09 · 786 阅读 · 0 评论 -
Camera HAL overview
Copy From :http://source.android.com/devices/camera/camera.htmlAndroid's camera HAL connects the higher level camera framework APIs in android.hardware to your underlying camera driver and原创 2014-01-01 19:18:36 · 1553 阅读 · 0 评论 -
Supporting Different Screens
Android categorizes device screens using two general properties: size and density. You should expect that your app will be installed on devices with screens that range in both size and density. As suc原创 2014-01-17 21:55:00 · 742 阅读 · 0 评论 -
V4L2驱动程序架构
1 V4L2简介video4linux2(V4L2)是Linux内核中关于视频设备的内核驱动,它为Linux中视频设备访问提供了通用接口,在Linux系统中,V4L2驱动的Video设备节点路径通常/dev/video/中的videoXV4L2驱动对用户空间提供字符设备,主设备号为81,对于视频设备,其次设备号为0-63。除此之外,次设备号为64-127的Radio设备,次设备转载 2014-11-14 10:46:04 · 893 阅读 · 0 评论 -
Camera HAL层代码分析1
Camera HAL层的基类是CameraHardwareInterface,主要定义在CameraHardwareInterface.h原创 2014-11-13 21:12:14 · 5927 阅读 · 0 评论 -
一篇不错的v4l2入门文档
原帖地址: http://www.isongzi.com/2009/02/23/v4l2/ 前言:目前正在忙于ARM平台的Linux应用程序的开发(其实是刚刚起步学习啦)。底层的东西不用考虑了,开发板子提供了NAND Bootloader,和Linux 2.6的源码,而且都编译好了。自己编译的bootloader可以用,但是Linux编译后,文件很大,暂且就用人家编译的系统,先专心转载 2014-11-14 10:28:11 · 3251 阅读 · 0 评论 -
android settings源代码分析(1)
1.android settings源码的source code路径为:原创 2014-10-30 14:07:17 · 17138 阅读 · 0 评论 -
android settings源代码分析(3)
本章主要分析google settings里面存储模块的代码。原创 2014-10-30 16:31:30 · 7798 阅读 · 1 评论 -
eclipse+ADT 进行android应用签名打包详解
1.Eclipse工程中右键工程,弹出选项中选择 android工具-生成签名应用包: 2.选择需要打包的android项目工程: 3.如果已有私钥文件,选择私钥文件输入密码,如果没有参见第6和7步创建私钥文件:4.输入私钥别名和密码:5.选择APK存储的位置,并完成设置 开始生成: 6.没有私钥文件的情况,创建私钥文件:7.输入私钥文件所需信息转载 2013-11-13 09:37:45 · 915 阅读 · 0 评论 -
Android 4.0.3 CTS 测试
http://blog.youkuaiyun.com/zxm317122667/article/details/8508013 Android-CTS 4.0.3测试基本配置1. Download CTSCTS的获取方式有两种:1.1.由Google提供1.1.1.打开浏览器输入连接: http://source.android.com/compatibility/downloads.转载 2013-11-12 22:09:39 · 6579 阅读 · 0 评论 -
SAX解析xml文件
今天去书城看书,突然看到android网络编程方面,看到各种解析xml的方式,选择了一种比较高效的方式,写了一个demo测试。SAX这种方式以前有看过,但是一直没有使用过,感觉不写demo,自己永远不会使用。工程结构如下: 需要解析的xml文件放在assets目录下,也可以放在其他目录。 person.xml内容如下:原创 2012-04-14 22:28:38 · 953 阅读 · 0 评论 -
为App签名(为apk签名)
写博客是一种快乐,前提是你有所写,与人分享,是另一种快乐,前提是你有舞台展示,博客园就是这样的舞台。这篇文章是android开发人员的必备知识,是我特别为大家整理和总结的,不求完美,但是有用。1.签名的意义 为了保证每个应用程序开发商合法ID,防止部分开放商可能通过使用相同的Package Name来混淆替换已经安装的程序,我们需要对我们发布的APK文件进行唯一签名,保证我们每次发布转载 2013-10-28 20:30:06 · 787 阅读 · 0 评论 -
android应用升级
软件都会升级,android app应用也是一样,对于android app升级心得,总结如下。 1.data/app下的app升级 对于data/app下的app升级,比较简单,直接下载高版本的app安装即可,没有什么好说的。 2.system/app下的app升级 因为system目录是read only,因此无法直接替换system/ap原创 2013-10-30 22:53:10 · 3706 阅读 · 0 评论 -
Android 4.2 JellyBean apk 签名方法
http://blog.youkuaiyun.com/virus026/article/details/8979021 通过阅读signapk源码,我们可以理清签名APK包的整个过程。1、 生成MANIFEST.MF文件:程序遍历apk包中的所有文件(entry),对非文件夹非签名文件的文件,逐个生成SHA1的数字签名信息,再用Base64进行编码。具体代码见这个方法:转载 2013-11-19 12:49:59 · 5963 阅读 · 0 评论 -
Android Wi-Fi Display(Miracast)介绍
[+]Android Wi-Fi DisplayMiracast介绍一背景知识介绍二 Android 42 Miracast功能实现介绍SurfaceFlinger对Miracast的支持Framework对Miracast的支持Android中Miracast动态工作流程介绍三总结Android Wi-Fi Display(Miracast)介绍2转载 2013-11-21 22:39:54 · 3159 阅读 · 0 评论 -
Android NFC 开发实例
http://blog.youkuaiyun.com/pku_android/article/details/7430788作者:裘德超使用硬件:Google Nexus S,北京大学学生卡。(ps:笔者本想使用公交一卡通进行测试,发现手机不能正确识别)手机操作系统:Android ICS 4.04。开发时,笔者从Google Play Store上下载了NFC TagInfo软件转载 2013-11-08 21:34:01 · 1626 阅读 · 0 评论 -
git reset简介
本文编辑整理自:http://guibin.iteye.com/blog/1014369http://hi.baidu.com/tiger_tnt/blog/item/a0464ffa6a8115d9b58f314d.htmlhttp://web.mit.edu/~mkgray/project/silk/root/afs/sipb/project/git/git-doc/git-reset转载 2013-11-09 11:02:40 · 1006 阅读 · 0 评论 -
android settings源代码分析(2)
android settings源代码分析(1)通过前一篇文章原创 2014-10-30 15:10:46 · 7915 阅读 · 0 评论 -
Android 编程下的 TraceView 简介及其案例实战
http://www.cnblogs.com/sunzn/p/3192231.html转载 2014-11-17 21:13:49 · 1015 阅读 · 0 评论 -
SELinux app权限配置
SELinux(或SEAndroid)将app划分为主要三种类型(根据user不同,也有其他的domain类型):1)untrusted_app 第三方app,没有android平台签名,没有system权限2)platform_app 有android平台签名,没有system权限3)system_app 有android平台签名和system权限从上面划分,权原创 2016-03-23 17:49:33 · 24921 阅读 · 2 评论 -
android 6.0 SystemUI源码分析(5)-PowerUI介绍
PowerUI在SystemUI里的实现比较简单,PowerUI主要处理和Power相关的事件,比如省电模式切换,电池电量变化和开关屏事件等。PowerUI的启动流程与SystemBars,Recents一样,因为他们都是SystemUI的子类,具体可以看前面的介绍。 public void start() { mPowerManager = (PowerManage原创 2016-03-12 19:38:11 · 3632 阅读 · 1 评论 -
SELinux配置property
property是android常用的一个TOOL(可以理解为TOOL),使用起来非常方便,不管是Java层还是c++层,都可以使用property。1.非SEAndroid property限定android 5.X之前,例如kikat4.4 :system\core\init\property_service.c property_perms[] = { { "原创 2016-03-23 21:23:40 · 7879 阅读 · 0 评论 -
android 6.0 SystemUI源码分析(6)-StorageNotification介绍
StorageNotification继承于SystemUI,主要处理Storage事件,比如Storage插拔等。在StorageNotfication的start函数,会去注册StorageEventListener。 @Override public void start() { mNotificationManager = mContext.getSyste原创 2016-03-13 12:17:04 · 5933 阅读 · 2 评论 -
查看tcp/udp端口占用命令
在CTS测试中有一项是测试端口被占用,可以通过如下cmd查看端口占用情况:root@muskmelon:/ # busybox netstat -atnpActive Internet connections (servers and established)Proto Recv-Q Send-Q Local Address Foreign Address原创 2016-04-25 14:28:14 · 9612 阅读 · 1 评论 -
[android6.0]添加System Jar记录
昨天模拟客户一个问题,尝试在系统jar中依赖静态jar,然后被apk去call系统jar,是否会出现启动apk,系统jar再次做dex2oat行文。如下是我做系统jar的步骤:1 新建java工程A,写一个简单的java工具类,这个java工程作为系统jar可以被apk直接去call2 新建java工程B,写一个简单的java工具类,这个Java工程java code会expo原创 2016-06-30 11:53:56 · 5366 阅读 · 0 评论 -
JACK编译器配置
Android M开始,google默认使用JACK编译器,对于JACK编译器的编译流程下面这篇文章写的很详细:http://taobaofed.org/blog/2016/05/05/new-compiler-for-android/这里主要谈一下JACK编译器的配置。1 JACK编译器三种模式JACK编译器有三种模式:LOCAL_JACK_ENABLED:=$(DE原创 2016-07-06 20:36:41 · 12730 阅读 · 2 评论 -
AudioFlinger学习笔记1
1 AudioFlinger启动流程在init.rc中会定义mediaserver进程:service media /system/bin/mediaserver class main user media group audio camera inet net_bt net_bt_admin net_bw_acct drmrpc mediadrm iop原创 2016-08-13 16:15:11 · 4769 阅读 · 0 评论 -
android TIF HAL层代码分析
上一篇文章有分析TIF事件传递流程,TvIputHal会call到JNI,JNI将event给到Java层,但是JNI层又是怎么拿到event事件的呢?分析TIF HAL层,需要掌握:1.HAL层主要结构体的含义2.HAL层主要代码实现3.Native层或JNI层load hal模块的流程4.hal,native和jni调用关系1.HAL层主要结构体的含义TIF HAL原创 2016-03-12 16:04:04 · 4469 阅读 · 0 评论 -
android TIF启动流程
TIF是Tv Input Framework的简称,是Android在5.0后加入的tv框架,为了支持android tv功能。1 TvInputManagerService启动流程TvInputManagerService在TIF框架结构中扮演Java service层的角色,向java api提供接口实现。在SystemServer的Main Thre原创 2016-03-11 12:50:53 · 7345 阅读 · 0 评论 -
Camera HAL层代码分析2
camera open之后,可以调用startPreview函数进行preview,今天主要讲解Camera HAL层startPreview的fo原创 2014-11-21 11:38:41 · 1756 阅读 · 0 评论 -
android笔记整理
android笔记整理------强制设置横屏PackageParser.java private Activity parseActivity(Package owner, Resources res, XmlPullParser parser, AttributeSet attrs, int flags, String[] outError,原创 2015-04-15 15:01:22 · 976 阅读 · 0 评论 -
Selinux在Enforcing mode切到root
Selinux在Enforcing mode时,在终端输入su,可以从shell用户切到root用户。那么在哪里去控制的呢?external\sepolicy\su.te # su is also permissive to permit setenforce. permissive su;就是这句permissive su,才可以让shell通过su切到root。原创 2015-11-03 21:16:17 · 2706 阅读 · 0 评论 -
android 5.1 非STR待机流程
android在长按Power键(手机或pad)或按下电源键(电视)会进入待机状态,下面分析一下非STR待机流程。待机分STR和非STR待机。STR待机是为了实现快速开关机,提高开机速度。android自身支持STR,OEM可以根据自身需要进行深度定制。STR待机时,PM芯片仍然供电,其他断电,当STR开机时,从PM芯片唤醒,回复到STR待机前状态,从而提高开机速度。非STR待机即正常原创 2016-03-16 17:25:41 · 5463 阅读 · 0 评论 -
android pm命令实现
android终端提供了一些cmd,开发人员可以通过这些cmd获取信息和执行任务。比较常用的有am,pm,input等,今天讲讲pm命令是如何实现的。pm经常用的是安装apk以及查询系统安装的apk有哪些,确定apk是否有安装成功,比如:pm install /mnt/usb/sda1/xxx.apk ->android 5.0之后必须要写绝对路径,否则会提示url无效p原创 2016-03-19 12:00:43 · 8069 阅读 · 0 评论 -
android 6.0 SystemUI源码分析(1)-SystemUI介绍
1. SystemUI介绍SystemUI是一个系统应用,主要功能有:1)状态栏信息显示,比如电池,wifi信号,3G/4G等icon显示2)通知面板,比如系统消息,第三方应用消息,都是在通知面板显示。3)近期任务栏显示面板。比如长按主页或近期任务快捷键,可以显示近期使用的应用。4)提供截图服务。比如电源+音量加可以截图。5)提供壁纸服务。比如壁纸的显示。6)提供屏保服原创 2016-03-06 23:48:33 · 20082 阅读 · 3 评论 -
android 6.0 SystemUI源码分析(3)-Recent Panel加载显示流程
1.Recent Panel按键处理流程SystemUI有一个很重要的功能就是显示近期使用的app,方便用户点击使用。手机长按HOME键或者点击Navigation Bar的近期任务栏虚拟键可以显示Recent Panel。我这里手头上只有Android TV平台,并且也便于debug,所以讲讲收到Switch按键后,Recent Panel的显示流程。Ke原创 2016-03-07 17:09:31 · 10859 阅读 · 10 评论 -
android 6.0 SystemUI源码分析(2)-SystemUI启动流程
1.SystemUI启动SystemUI是核心系统应用,需要开机启动,启动SystemUI进程,是通过启动SystemUIService来实现的。frameworks\base\services\java\com\android\server\SystemServer.javaSystemServer启动后,会在SystemServer Main Threa原创 2016-03-07 10:38:33 · 8444 阅读 · 1 评论 -
android 6.0 SystemUI源码分析(4)-StatusBar显示流程
1.StatusBar启动StatusBar继承于SystemUI,在SystemUIApplication会启动SysteBar.mServices[i].start();SystemBar.java @Override public void start() { if (DEBUG) Log.d(TAG, "start"); mServi原创 2016-03-08 20:39:59 · 9070 阅读 · 1 评论 -
UML类图几种关系的总结
在UML类图中,常见的有以下几种关系: 泛化(Generalization), 实现(Realization),关联(Association),聚合(Aggregation),组合(Composition),依赖(Dependency) 1. 泛化(Generalization) 【泛化关系】:是一种继承关系,表示一般与特殊的关系,它指定了子类如何特转载 2017-02-03 15:48:20 · 782 阅读 · 0 评论