- 博客(138)
- 资源 (6)
- 收藏
- 关注

原创 Android4.0添加java层服务
同前一篇文章类似,此文旨在简单介绍一下如何在 java层添加自己的服务,相关的理论网上已经有很多文章,在此不在详述。Java层服务顾名思义即为从 Java层提供的服务,它与 C++层的服务不同之处在于其服务进程的运行由系统( ServiceManager)统一维护。在文件 frameworks /base /services /java /com /android /server /Syste
2012-08-15 16:04:33
1172

原创 Android4.0添加底层核心服务
一、为 Android添加底层核心服务1. 为什么要写底层核心服务呢? 因为底层核心服务是 Android框架里最接近 Linux/Driver的部分。为了充分发挥硬件设备的差异化特性,核心服务是让上层 Java应用程序来使用 Driver/HW Device 特色的重要管道。例如 Media、 Telephone等底层硬件。 在开机
2012-08-15 15:51:53
1758

原创 android4.0 SystemUi系统状态栏
android4.0系统可以运行于平板电脑和手机上面,这样对于状态栏来说,也是有不同风格的,从SystemUi的代码分类我就可以看出来,google考虑了不同情况下状态栏的显示等,在源代码里面有这么两个文件夹需要注意:com.android.systemui.statusbar.phone 这个是针对手机而需要的status barcom.android.systemui.statu
2012-08-07 09:56:23
1626

原创 Android 4.0 Notification
通常,在手机有未接电话,收到消息或者挂着退出主界面的QQ,在状态栏会有一个Notification,那么,这个notification如何产生的?通常做法:Intent intent = new Intent(); intent.setClass(this, Noti.class);//一般而言,对于需要点击Notification需要迁移到对应的View的需要下面这
2012-08-07 09:55:16
4288

原创 关于手机信号强度单位db和dBm
关于手机信号强度单位db和dBm 最近做android开发,在wifi模块遇到手机信号的问题,设计到强度的计算,于是就有了db和dbm两个单位。dB,dBm 都是功率增益的单位,不同之处如下:dB是一个表征相对值的值,纯粹的比值,只表示两个量的相对大小关系,没有单位,当考虑甲的功率相比于乙功率大或小多少个dB时,按下面的计算公式:10log(甲功率/乙功率),如果采用两者的电压比计
2012-08-01 14:04:08
5478
1

原创 c程序按行读取文件
#include #include #include #define FNAME "./xeyez.txt"#define MAXSIZE 1024int iCaltall;int icount;int savetokey(char *buf, char *buftime, char *bufindex){ //printf(".......222222\n")
2012-07-31 22:29:41
4607

原创 ubuntu10.10+android 搭建Opencv
编译环境:ubuntu 10.10opencv版本:2.21.首先需要下载以下文件:OpenCV-2.2.0.tar.bz2android-ndk-r4-linux-x86-crystax-4.tar.bz22.ubuntu需要以下包sudo apt-get install build-essentialsudo apt-get inst
2012-07-26 16:22:51
1077

原创 输入设备配置文件(.idc文件)
1. 何为idc? idc(Input Device Configuration)为输入设备配置文件,它包含设备具体的配置属性,这些属性影响输入设备的行为。对于touch screen设备,总是需要一个idc文件来定义其行为。 Android基于输入设备驱动汇报的事件类型和属性来检测和配置大部分输入设备的能力。然而有些分类是模棱两可的,如:多点触摸屏(multi-t
2012-07-24 17:10:15
1606

原创 Android开机logo修改方法
一体机平台开机logo修改方法 1:修改Kernel中的Logo: 若是要替换Kernel中的开机Logo,只需要把内核目录drivers/video/logo下的logo_android_1024_clut224.ppm文件替换掉即可(注意要保持名字一样,在IMT的SDK里没有这个ppm,默认选择了Standard 224-color Linux logo)。然后从新
2012-07-20 10:37:52
17729

转载 如何修改Android应用程序能够使用的默认最大内存值
如何修改Android应用程序能够使用的默认最大内存值参考:Android Bitmap内存限制OOM,Out Of Memory分析:当应用程序分配内存时,会调用到dalvik/vm/alloc/HeapSource.c中的 dvmTrackExternalAllocation()方法,继而调用到external
2012-07-20 10:35:59
1557

原创 android检测内存使用工具--procrank
#!/bin/bash while true; do procrank | busybox grep "cn.toltech.cocos2dx.demo"sleep 1 done1. procrank (only for Android)它从/proc/pid/maps中读取信息来进行统计。源码位于:/system/extras/procrank内存耗用:VSS/R
2012-07-20 10:30:47
6619

原创 Android安装应用程序出现“INSTALL_FAILED_CONTAINER_ERROR”错误的解决办法 .
08-08 05:42:10.300 E/PackageHelper( 1825): Failed to create secure container smdl2tmp108-08 05:42:10.300 D/VoldCmdListener( 1134): asec create smdl2tmp1 18 fat {} 1002708-08 05:42:10.300 E/Vold
2012-07-20 10:15:58
1453

转载 Android 解锁屏启动过程
Android 解锁屏启动过程 一. 开机启动 在开机过程中无线模块初始化时获取SIM卡,状态。在初始化完成后调用vm.systemReady()函数通知进入相应的Lock Screen进行解锁。 1. 在hardware/ril/reference-ril/reference-ril.c中: 通过 setRadioState (RADIO_STATE_SIM_NOT_READ
2012-07-04 11:40:41
923
原创 selinux-添加
Aispeech Audio Hal porting到android系统中需要添加如下selinux权限(android8.1): diff --git a/system/sepolicy/public/domain.te b/system/sepolicy/public/domain.te --- a/system/sepolicy/public/domain.te +++ b/system/s...
2019-07-10 21:34:56
2088
转载 在Windows环境下编译cocos2d-x-3.0
1. 安装配置开发环境1.1 安装JDK 1) 下载并安装jdk-7u7-windows-i586.exe 2) 设置【JAVA_HOME】为“C:\Program Files\Java\jdk1.7.0_07” 3) 把“ %JAVA_HOME%\bin”加入【Path】中 4) 设置【CLASSPATH】为“.”1.2 安装ant
2014-05-14 09:31:51
1651
原创 C语言之详解#ifdef等宏
C语言之详解#ifdef等宏这几个宏是为了进行条件编译。一般情况下,源程序中所有的行都参加编译。但是有时希望对其中一部分内容只在满足一定条件才进行编译,也就是对一部分内容指定编译的条件,这就是“条件编译”。有时,希望当满足某条件时对一组语句进行编译,而当条件不满足时则编译另一组语句。条件编译命令最常见的形式为:1234
2014-01-07 14:07:48
1166
原创 Makefile的条件执行
1 Makefile的条件判断条件语句可以根据一个变量的值来控制对Makefile的执行,执行或者忽略Makefile的特定部分。条件语句可以是两个不同变量、或者变量和常量值得比较。需要注意的是:条件语句只能用于控制make实际执行的makefile文件部分,它不能控制规则的shell命令执行过程。Makefile中使用条件控制可以做到处理的灵活性和高效性。1.1
2013-12-27 11:47:00
2198
原创 Linux中cp和scp命令的使用方法
Linux为我们提供了两个用于文件copy的命令,一个是cp,一个是scp,但是他们略有不同。 cp --- 主要是用于在同一台电脑上,在不同的目录之间来回copy文件 scp --- 主要是在不同的Linux系统之间来回copy文件 关于cp的具体用法: 命令基本格式: cp [OPTIONS] SOURCE DEST --- 从源路径copy文件到目的路径
2013-12-10 09:26:39
1743
原创 回调函数和函数指针
MTK新平台的代码开始大量使用回调函数和函数指针了,一直觉得回调函数和函数指针挺神秘的,所以查了一些资料,来与大家一起来分享。什么是回调函数简而言之,回调函数就是一个通过函数指针调用的函数。如果你把函数的指针(地址)作为参数传递给另一个函数,当这个指针被用为调用它所指向的函数时,我们就说这是回调函数。为什么要使用回调函数 因为使用回调函数可以把调用者和被调用者分开,调用者不关心
2013-11-26 13:59:28
1029
原创 gettimeofday
struct timeval nowTime;gettimeofday(&nowTime,NULL);unsigned long iTime = (nowTime.tv_sec*1000+nowTime.tv_usec/1000);
2013-11-07 23:18:50
947
转载 Android BCM4330 蓝牙BT驱动调试记录
网上关于BT的驱动很少,所以我在开发过程中把其中的步骤记录下来。供大家相互学习讨论。一、关于BT driver的移植:1. Enablebluetootch in BoadConfig.mk BOARD_HAVE_BLUETOOTH := true2.实现BT电源管理rfkill驱动。Kernel/dr
2013-11-01 11:19:56
1227
原创 MT6573驱动开发日志之touchpanel .
(1)添加一款TOUCHPANEL在projectConfig.mk文件里面修改如下:CUSTOM_KERNEL_TOUCHPANEL = cy8ctma300在mediatek\custom\common\kernel\touchpanel文件夹添加文件夹如下:mediatek\custom\common\kernel\touchpanel\cy8ctma300.c(2)源码
2013-11-01 10:51:08
1453
转载 MTK6573电源管理(PM)小结
继续MTK平台的研究开始研究电源管理,因为PM永远是嵌入式的核心技术,所以静下来走一遍流程。MTK启动的过程:硬件板载的启动入口为static __init int board_init(void){ mt6573_power_management_init(); mt6573_board_init(); return 0;}其中mt6
2013-11-01 10:49:52
2018
转载 在Ubuntu上为Android系统编写Linux内核驱动程序
在智能手机时代,每个品牌的手机都有自己的个性特点。正是依靠这种与众不同的个性来吸引用户,营造品牌凝聚力和用户忠城度,典型的代表非iphone莫属了。据统计,截止2011年5月,AppStore的应用软件数量达381062个,位居第一,而Android Market的应用软件数量达294738,紧随AppStore后面,并有望在8月份越过AppStore。随着Android系统逐步扩大市场占有率,终
2013-10-21 14:33:33
973
原创 TTL电平,CMOS电平,OC门,OD门基础知识
一.TTL TTL集成电路的主要型式为晶体管-晶体管逻辑门(transistor-transistor logic gate),TTL大部分都采用5V电源。 1.输出高电平Uoh和输出低电平Uol Uoh≥2.4V,Uol≤0.4V 2.输入高电平和输入低电平 Uih≥2.0V,Uil≤0.8V 二.CMOS CMOS电路是电压控制器件,输入电阻极大,对于干扰信号
2013-09-03 09:19:32
9693
1
原创 锂电池过充电、过放电、短路保护电路详解
该电路主要由锂电池保护专用集成电路DW01,充、放电控制MOSFET1(内含两只N沟道MOSFET)等部分组成,单体锂电池接在B+和B-之间,电池组从P+和P-输出电压。充电时,充电器输出电压接在P+和P-之间,电流从P+到单体电池的B+和B-,再经过充电控制MOSFET到P-。在充电过程中,当单体电池的电压超过4.35V时,专用集成电路DW01的OC脚输出信号使充电控制MOSFET关断,锂电池立
2013-08-29 16:32:51
26375
3
原创 普通充电器给苹果IPHONE/IPAD2充电的USB端的识别电阻的设置
普通充电器给苹果IPHONE/IPAD2充电的USB端的识别电阻的设置 充电器插头一端插在220V交流电的插座上,另一端用苹果专用的数据线接到iPhone/iPad上。220V交流电先通过整流电路和滤波电路变成300V高压直流电,再经过开关管变成高频高压脉冲,然后通过变压器转换为低压(比如5V)脉冲。5V的低压脉冲再经过一个整流、稳压电路,变成5V稳定的直流电。在从220V交流电变为5V
2013-08-28 19:56:15
4805
转载 LINUX驱动注册过程失败处理不当引起的恶果
LINUX驱动注册过程失败处理不当引起的恶果LINUX设备驱动有标准的结构,注册的时候对比device和driver的名字,如果相等就调用probe函数将资源注册进去,但是如果注册失败,在probe中途退出的时候要注意,如果直接退出,但是原来注册了部分资源,如果不设置错误原因的参数返回,默认是成功返回这样,错误的驱动就会被其他资源使用,但是由于没有完成注册好,缺少资源。或者由于注册失败在中途退
2013-08-28 19:45:36
1389
原创 锂电池保护板原理
锂电池保护板原理 锂电池(可充型)之所以需要保护,是由它本身特性决定的。由于锂电池本身的材料决定了它不能被过充、过放、过流、短路及超高温充放电,因此锂电池锂电组件总会跟着一块精致的保护板和一片电流保险器出现。 锂电池的保护功能通常由保护电路板和PTC等电流器件协同完成,保护板是由电子电路组成,在-40℃至+85℃的环境下时刻准确的监视电芯的电压和充放
2013-08-28 19:38:33
3789
1
原创 USB数据线内阻对充电电流的影响
USB数据线内阻对充电电流的影响 手机和平板的充电器接口为USB接口,利用适配器通过USB线的电源和地线形成回路给手机充电,如果质量不好的数据线,线的内阻大,充电电流在数据线的压降就变大。到达手机或者平板电脑的电源管理芯片的输入电压就变低。软件检测pmic的输入电压。如果电压低于4.7V就会将充电电流减低。防止充电电流过大将适配器烧坏。例如,sony LT26II的最大充电电流是130
2013-08-28 19:37:12
5622
1
原创 Android + kernel USB host 如何判断插入的设备是高速还是低速的设备
d+ d- 0 0 PC 0 1 错误设备 1 0 非标准充电器 1 1 标准充电器 usb有主
2013-08-28 19:31:33
2323
转载 android lcd调试 高通平台lcd调试深入分析总结(mipi和rgb接口)
各位网友:最近发现我这篇文章转载的到处都是,有的则以原创存在,转载时请注明出处,还有文中错误的地方请指正!谢谢合作。一:点亮lcd in kernel其实点亮lcd很简单必须保证以后几个步骤正确:1:确认Lcd信息所在文件被编译进去,并且lcd 和board name里面注册一质,倘若这部正确,那么log里面应该有对应分辨率的一段framebuffer同时调到相对应的power_on函
2013-04-23 16:59:03
2317
原创 最新Connectify注册码(序列号) Connectify3.7序列号 破解版
最新Connectify注册码(序列号) Connectify3.7序列号 破解版分类: Windows相关 2012-11-17 22:39 34795人阅读 评论(17)收藏 举报目录(?)[+]Connectify序列号最新注册码今天给大家发布一个Connectify最新版的序列号注册码Connectify序列号、最新注册码
2013-04-22 23:27:02
3395
原创 什么是PMU(PMIC)
什么是PMU(PMIC) PMU(power management unit)就是电源管理单元,一种高集成的、针对便携式应用的电源管理方案,即将传统分立的若干类电源管理芯片,如低压差线性稳压器(LDO)、直流直流转换器(DC/DC),但现在它们都被集成到手机的电源管理单元(PMU)中,这样可实现更高的电源转换效率和更低功耗,及更少的组件数以适应缩小的板级空间,成本更低。PM
2013-04-22 16:00:54
1320
原创 Android4.1 触摸屏(TP)划线曲折、不圆润的解决办法
最近有个项目由Android4.0升级到Android4.1了,测试发现在PointLocation里面划线,会有曲折、不圆滑等现象。之前在Android4.0系统上没有出现国此现象,升级成Android4.1之后,硬件、驱动、配置参数等也没有更换,但是划线效果变得很差。经过几天的排查发现,Android4.1对TP的报点率与之前相比有了更高的要求。根据目前测得的数据来看,报点率需达到90Hz以上
2013-04-22 15:52:09
2048
原创 触摸屏(TP)乱跳原因总结
导致触摸屏乱跳的原因大概分为5类:(1) 触摸屏硬件通道损坏 (2)触摸屏固件版本太低 (3) 触摸屏工作电压异常 (4) 射频干扰 (5)触摸屏校准异常 硬件通道损坏1.现象: 点击TP的某块区域,无反应,但是该区域周围被感应到,产生了触摸事件2.问题分析: TP的感应区域是由一条条的感应通道组成的,若某几条感应通道坏了,
2013-04-22 14:55:35
5735
原创 Ubuntu12.10 root用户登录设置
ubuntu12.10默认不允许root用户登录,在登录窗口只能看到普通用户和访客登录。以普通身份登陆ubuntu后,我们需要做一些修改普通用户登录后,修改系统配置文件需要切换到超级用户模式,在终端窗口里面输入: sudo -s,然后输入普通用户登陆的密码,回车即可进入root用户权限模式。然后执行: vi /etc/lightdm/lightdm.conf增加:
2013-03-27 09:52:40
1079
原创 ubuntu12.10 64位编译Android4.1
1、更新source.list源gedit /etc/apt/source.list#网易的源(163源,无论是不是教育网,速度都很快)deb http://mirrors.163.com/ubuntu/ quantal main universe restricted multiversedeb-src http://mirrors.163.com/ubuntu/ quantal
2013-03-26 17:54:59
3019
原创 android4.0.3源码之鼠标光标绘制简略版
搞定了android4.0.3的触摸屏的适配后(其实只要驱动没有什么问题,加个配置文件就很容易搞定了),新的任务就下来了,就是要寻找android4.0.3中的鼠标是如何绘画的,哪里createSurface,哪里分配空间的。因为如果是软鼠标的话,在播放视频或者玩大型游戏的时候是很卡的,而走overlay,硬鼠标的话,就显得很灵敏了。艰巨的任务啊,看了我好久还是没有找到鼠标是在哪里绘制的。因为an
2013-03-21 14:50:12
2409
原创 rk4.0系统鼠标图标更换
\device\rockchip\rk30sdk\overlay_itv\frameworks\base\core\res\res\pointer_arrow.png
2013-03-15 14:39:13
1416
商业项目完整版源代码
2012-05-04
内存分配程序(C语言)
2009-07-23
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人