
Android系统开发
文章平均质量分 72
hccheng
学习老师的网址http://blog.youkuaiyun.com/Innost
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Http协议学习(一)
引言 HTTP是一个属于应用层的面向对象的协议,由于其简捷、快速的方式,适用于分布式超媒体信息系统。它于1990年提出,经过几年的使用与发展,得到不断地完善和扩展。目前在WWW中使用的是HTTP/1.0的第六版,HTTP/1.1的规范化工作正在进行之中,而且HTTP-NG(Next Generation of转载 2014-04-01 19:12:40 · 1005 阅读 · 0 评论 -
Android RTC 自下往上浅析
1.首先搞清楚RTC在kernel内的作用: linux系统有两个时钟:一个是由主板电池驱动的“Real Time Clock”也叫做RTC或者叫CMOS时钟,硬件时钟。当操作系统关机的时候,用这个来记录时间,但是对于运行的系统是不用这个时间的。另一个时间是 “System clock”也叫内核时钟或者软件时钟,是由软件根据时间中断来进行计数的,内核时钟在系统关机的情况下是不存在的,所以,当操转载 2012-07-30 16:23:42 · 24128 阅读 · 2 评论 -
Android Camera HAL浅析
1、Camera成像原理介绍Camera工作流程图Camera的成像原理可以简单概括如下:景物(SCENE)通过镜头(LENS)生成的光学图像投射到图像传感器(Sensor)表面上,然后转为电信号,经过A/D(模数转换)转换后变为数字图像信号,再送到数字信号处理芯片(DSP)中加工处理,再通过IO接口传输到CPU中处理,通过D转载 2012-07-24 15:52:30 · 58015 阅读 · 2 评论 -
Android属性之build.prop生成过程分析
田海立2011-11-26 本文简要分析一下build.prop是如何生成的。Android的build.prop文件是在Android编译时刻收集的各种property(LCD density/语言/编译时间, etc.),编译完成之后,文件生成在out/target/product//system/目录下。在Android运行时刻可以通过property_get()[c转载 2012-07-17 15:27:08 · 2546 阅读 · 0 评论 -
android ui的几个概念:px,dip(dp),sp,dpi,分辨率等
1.px (pixels)像素 – 是像素,就是屏幕上实际的像素点单位。 dip或dp (device independent pixels)设备独立像素, 与设备屏幕有关。 sp (scaled pixels — best for text size):类似dp, 主要处理字体的大小。 dpi(dot per inch):屏幕像素密度,每英寸多少像素density:densi转载 2012-06-21 14:19:17 · 29759 阅读 · 1 评论 -
snd_kcontrol_new名称中的SOURCE字段
转自:http://blog.youkuaiyun.com/sepnic/article/details/6324901前些日子写了一篇snd_kcontrol探究,该文主要从内核源码出发简单讲述一下kcontrol接口的始末。这几天因为要在Android里面添加一些音频控制接口,配合alsa_amixer scontents分析,对此有了更深的体会,记录于此。因为这方面的资料实在太少,很转载 2011-12-22 19:03:34 · 1319 阅读 · 0 评论 -
ALSA之PCM分析
CODEC :音频芯片的控制,比如静音、打开(关闭)ADC(DAC)、设置ADC(DAC)的增益、耳机模式的检测等操作。I2S :数字音频接口,用于CPU和Codec之间的数字音频流raw data的传输。每当有playback或record操作时,snd_soc_dai_ops.prepare()会被调用,启动I2S总线。PCM :我不知道为什么会取这个模块名,它其实是定义DMA原创 2011-12-22 16:38:27 · 12057 阅读 · 4 评论 -
音频采样概念
转自:http://blog.youkuaiyun.com/sepnic/article/details/6277133数码音频系统是通过将声波波形转换成一连串的二进制数据来再现原始声音的,实现这个步骤使用的设备是模/数转换器(A/D)它以每秒上万次的速率对声波进行采样,每一次采样都记录下了原始模拟声波在某一时刻的状态,称之为样本。将一串的样本连接起来,就可以描述一段声波了,把每一秒钟所采样的数目转载 2011-12-22 16:14:36 · 1266 阅读 · 0 评论 -
Android audio之alsa移植
本文主要是简略的介绍下移植的过程1.Alsa主要包括3个文件夹 haraware/alsa_sound 硬件抽象层部分external\alsa-lib 主要是提供一些音频库external\alsa-utils 工具部分,配合调试之类的,可以不用2.获取源码的方式:首先,cd到Android源码树根目录下:cd /home/***/gin:原创 2011-12-21 16:24:14 · 9931 阅读 · 0 评论 -
stagefright与opencore对比
原文地址:http://blog.chinaunix.net/u2/61880/showart_2339481.html1引言Android froyo版本多媒体引擎做了变动,新添加了stagefright框架,并且默认情况android选择stagefright,弃用之前的opencore,仅仅对opencore中的omx-component部分做了引用。Stagefrigh转载 2011-11-29 09:46:56 · 795 阅读 · 0 评论 -
2011中国移动互联网发展痛点调查
十月份的《程序员》移动板块特别策划主题用“移动大航海时代”来形容当前移动创业浪潮,十倍以上的市场规模预期,首批前驱者创富案例在前,国内的移动船队已是浩浩荡荡,但值得注意的是,移动蓝海不仅有宝藏和财富,也有迷雾与暗礁。2011中国移动开发者大会筹备期间,优快云和3G门户联合针对国内移动互联网当前遇到的问题做了一番调查,了解普通用户和开发者对移动互联网发展的切肤痛点,分篇罗列如下:用户篇(数转载 2011-11-28 23:17:12 · 2215 阅读 · 0 评论 -
StageFright框架流程解读
1、 StageFright介绍 Android froyo版本多媒体引擎做了变动,新添加了stagefright框架,并且默认情况android选择stagefright,并没有完全抛弃 opencore,主要是做了一个OMX层,仅仅是对 opencore的omx-component部分做了引用。stagefright是在MediaPlayerService这一层加入的,和 op转载 2011-11-28 20:19:51 · 660 阅读 · 0 评论 -
arm-eabi-4.4.0 tools
1.arm-eabi-addr2line (直接根据*。so崩溃的地址找到函数的行)../toolchain/arm-eabi-4.4.0/bin/arm-eabi-addr2line -f -e out/target/product/m801/symbols/system/lib/libstagefright.so 0005e524(崩溃的地址)2.arm-eabi-objdum原创 2011-11-28 10:59:54 · 2722 阅读 · 0 评论 -
音量加减键修改为默认控制媒体音量
默认是控制Ringer volume。frameworks/base/core/res/res/values/strings.xml: Ringer volume Ringer volume Media volumeframeworks/base/core/java/android/view/VolumePanel.java: priv转载 2012-08-14 17:37:05 · 11453 阅读 · 7 评论 -
Windows平台下ADB的安装与使用
Android SDK(如觉SDK文件过大,也可以只准备G1的USB for Windows驱动和ADB工具包)WinRARG1(HTC Dream)数据线*********************************************设置手机点击“设置(Settings)”-->“应用程序(Applications)”-->“开发(Developme转载 2011-12-02 11:30:53 · 19579 阅读 · 0 评论 -
RK29 Camare移植--内核部分
1。首先在初始化进程的加载:static struct platform_device *devices[] __initdata = {#ifdef CONFIG_VIDEO_RK29 &rk29_device_camera, /* ddl@rock-chips.com : camera support */ #if (CONFIG_SENSOR_IIC_ADD转载 2012-07-26 17:13:53 · 4321 阅读 · 2 评论 -
Android4.0系统详解
刚刚发布的Android 4.0系统可以称得上是Android手机系统自诞生以来最大的一次改变,平板和手机系统的融合带来的是界面上颠覆性的变化,源自安卓3.0的系统界面变得酷了很多,操作方式也更加简便,下面就来看看Android 4.0的更多特性吧:一、界面变化和现在我们熟悉的Android 2.x系统相比,全新的4.0系统界面发送了颠覆性的变化,类似杂志的界面看起来和之前相比酷得转载 2011-12-20 20:48:45 · 2219 阅读 · 0 评论 -
RK29 adb 安装指导
使用adb主要一下步骤:1,软件需要Jdk、android sdk、rk2818 usb驱动2, 安装jdk,并且配置环境变量JAVA_HOME为jdk安装路径C:\Program Files\Java\jdk1.6.0_02\bin3,插入usb,更新为rk2818 usb驱动(android_usb_windows_for_rk2818/android_usb.inf原创 2011-12-02 15:46:46 · 2034 阅读 · 1 评论 -
Android wakelock 自上而下浅析
Wake Lock是一种锁的机制, 只要有人拿着这个锁,系统就无法进入休眠,可以被用户态程序和内核获得. 这个锁可以是有超时的或者是没有超时的,超时的锁会在时间过去以后自动解锁. 如果没有锁了或者超时了, 内核就会启动休眠的那套机制来进入休眠.PowerManager.WakeLock 有加锁和解锁两种状态,加锁的方式有两种,一种是永久的锁住,这样的锁除非显式的放开,是不会解锁的,所以这种锁用转载 2012-07-31 16:42:51 · 3144 阅读 · 0 评论 -
Android Alarm自上而下 调试浅析
1.为了创建一个新的Alarm,使用set方法并指定一个Alarm类型、触发时间和在Alarm触发时要调用的Intent。如果你设定的Alarm发生在过去,那么,它将立即触发。这里有4种Alarm类型。你的选择将决定你在set方法中传递的时间值代表什么,是特定的时间或者是时间流逝:❑ RTC_WAKEUP在指定的时刻(设置Alarm的时候),唤醒设备来触发Intent。转载 2012-07-31 10:57:15 · 9772 阅读 · 1 评论 -
JAVA 环境配置
第一种方法:(自动配置)你可以直接下载MyEclipse6.0或者以上版本(6.0以下的据说不行)来用,这个不用安装环境(自动设置了环境变量)。直接安装就可以使用了,希望对你有用。 第二种方法(手动配置):windows xp下配置JDK环境变量: 1.安装JDK,安装过程中可以自定义安装目录等信息,例如我们选择安装目录为C:\Program Files\Java\jdk1.转载 2012-06-27 15:14:27 · 795 阅读 · 0 评论 -
Android adb 使用
Android Debug Bridge概述 adb的全称为Android Debug Bridge,就是起到调试桥的作用。通过adb我们可以在Eclipse中方面通过DDMS来调试Android程序,说白了就是debug工具。adb的工作方式比较特殊,采用监听Socket TCP 5554等端口的方式让IDE和Qemu通讯,默认情况下adb会daemon相关的网络端口,所以当我们运原创 2012-02-25 16:49:53 · 1946 阅读 · 0 评论 -
硬件支持:alsa-utils工具包的使用
一.alsa-utils介绍ALSA是kernel中的一个声音驱动程序.它包括alsa核心和其他声卡的驱动.alsa-utils是alsa的一个工具包,里面包含有声卡测试和音频编辑的工具.二.alsa-utils的安装1.RPM包方式Turbolinux 10.5,11版本已经包含有alsa-utils的rpm包,你可以直接安装:转载 2012-02-13 10:56:52 · 3766 阅读 · 0 评论 -
DAPM之三:audio paths与asound.conf
转自:http://blog.youkuaiyun.com/sepnic/article/details/6384249其实asound.conf真跟dapm没多大关系,之所以把它也纳入dapm系列之一,是为了考虑到知识的连贯性。在DAPM之二:AUDIO PATHS与dapm kcontrol>提到:通过配置好asound.conf,上层则可打开asound.conf中定义的虚拟设备,而自动选择相应转载 2011-12-22 20:18:24 · 1203 阅读 · 0 评论 -
DAPM之一:概述
DAPM--Dynamic Audio Power Management,对应结构体是snd_soc_dapm_widget和snd_soc_dapm_route,对应的操作函数是snd_soc_dapm_new_controls()、snd_soc_dapm_add_routes()和snd_soc_dapm_new_widgets()。在我看来,DAPM是音频驱动初接触者的噩梦。从何处来,到何转载 2011-12-22 19:48:57 · 1160 阅读 · 0 评论 -
AudioPolicyService 和 AudioPolicyManager
引言AudioPolicyService是Android音频系统的两大服务之一,另一个服务是AudioFlinger,这两大服务都在系统启动时有 MediaSever加载,加载的代码位于:frameworks/base/media/mediaserver /main_mediaserver.cpp。AudioFlinger主要负责管理音频数据处理以及和硬件抽象层相关的工作。本文主要介绍 Aud转载 2011-12-07 11:38:15 · 958 阅读 · 0 评论 -
Android深入浅出之Audio第三部分Audio Policy[1]一
大神的网站:http://blog.youkuaiyun.com/innost/article/details/6158960 AudioFlinger(AF总感觉代码里边有好多东西没说清楚,心里发毛。就看了看AF的流程,我们敢说自己深入了解了Android系统吗?AudioPolicyService(APS)是个什么东西?为什么要有它的存在?下层的Audio HAL层又是怎么结合到Android中来转载 2011-12-07 10:48:26 · 847 阅读 · 0 评论 -
snd_kcontrol探究
转自: http://blog.youkuaiyun.com/sepnic/article/details/6150723control控制接口控制接口对于许多开关(switch)和调节器(slider)应用广泛,它能被用户空间存取,从而读写CODEC相关寄存器。control的主要用于mixer。它用snd_kcontrol_new结构体描述。转载 2011-12-22 16:02:14 · 1537 阅读 · 0 评论