- 博客(47)
- 资源 (1)
- 收藏
- 关注
转载 打造自己的chrome for android
chromium移植已经接近尾声,正在冲刺beta版本。不过越往后面,越是一些难啃的骨头。虽然背靠chromium这座大山,但是网页的复杂性超乎想象。更郁闷的是,有些BUG在chrome for android上没有,但在我们的浏览器上存在。因此经常会有这样的质疑:人家的chrome浏览器好好的,你做的浏览器为什么会有这样的问题。面对这样的质疑,真是有苦说不出。在有些人看来,别人都把源代码开放出来
2014-02-09 21:37:50
2373
原创 linux内核书籍
1.Linux Kernel Development2.Understanding the Linux Kernel3.Linux Device Drivers4.Linux内核源代码情景分析按顺序彻底研究。
2013-04-15 16:39:41
793
转载 MP3 ID3信息解析
ID3官网: http://www.id3.org/一. MP3文件大体分为三部分:TAG_V2(ID3V2),Frame, TAG_V1(ID3V1) ID3V2包含了 作者,作曲,专辑 等信息,长度不固定,扩展了ID3V1的信息量。Frame一系列的帧,个数由文件大小和帧长决定每个FRAME的长度可能不固定,也可能固定,由位率bitrate决定每个FR
2013-01-23 13:46:31
1417
原创 用arm-eabi-objdump命令查看lib库或可执行文件的函数-地址映射信息
用arm-eabi-objdump命令查看lib库或可执行文件的函数-地址映射信息source build/envsetup.shchoosecomboarm-eabi-objdump -d out/target/product/generic/system/bin/mediaserver >mediaserver.addr 将mediaserver地址信息写入文件medi
2012-09-12 12:02:24
4606
原创 OTA和apk包签名
java -Xmx2048m -jar out/host/linux-x86/framework/signapk.jar -w build/target/product/security/testkey.x509.pem build/target/product/security/testkey.pk8 unsigned-update.zip signed-update.zip签名工具要根据项
2012-08-27 20:32:47
2703
转载 Android软件测试的日志文件抓取简介
转自:http://www.cnblogs.com/xuben/archive/2011/09/26/2191571.html1 log文件分类简介 实时打印的主要有:logcat main,logcat radio,logcat events,tcpdump,还有高通平台的还会有QXDM日志 状态信息的有:adb shell ca
2012-02-03 15:33:55
962
原创 android debug
1. logcatadb logcat: 打印main log, 输出线程时间。也可以写做adb logcat -b main adb logcat -b radio: 打印radio log,所有telephony和RIL层log全部输出在radio buffer中adb logcat -b event: 打印event log。包含activity状态切换、进程回收等系统层事件。系
2012-02-03 15:18:03
937
原创 其他应用返回launcher桌面的流程
分两种清形:launcher已被回收需重新启动activity 和 恢复launcher的activityActivity:onKeyUp handle KEYCODE_BACK ->Activity:onBackPressed->Activity:finish->ActivityManagerProxy:finishActivity->ActivityManagerNative:FI
2012-01-10 12:06:23
1263
原创 利用oom_adj提高Application所在进程的优先级
1.增加Application属性android:gnHeavyWeight2.在Manifest Application中声明使用属性android:gnHeavyWeight="true"diff --git a/core/java/android/content/pm/ApplicationInfo.java b/core/java/android/content/pm/Applic
2011-12-31 14:16:40
2540
原创 打开ppp packet打印
diff --git a/pppd/utils.c b/pppd/utils.cindex 6f668b8..6f1db8f 100644--- a/pppd/utils.c+++ b/pppd/utils.c@@ -670,9 +670,10 @@ log_write(level, buf) int level; char *buf; {+ dbglog("
2011-12-27 19:54:51
1201
原创 android内存统计
由于linux内核和native service使用的内存在settings中统计不出来,因此对于分析内存相关问题时,使用procrank命令则能比较清晰的获取每个进程占用的内存资源$adb shell procrank PID Vss Rss Pss Uss cmdline 159 49668K 39664K 19857K
2011-12-21 14:33:36
2590
转载 Android的进程回收
转自Android中的进程是托管的,当系统进程空间紧张的时候,会依照优先级自动进行进程的回收.由此带来三个问题:回收规则: 什么时候回收与回收哪一个避免误杀: 如何阻止被回收数据恢复与保存: 被回收了怎么办 Android将进程分为6个等级,它们按优先级顺序由高到低依次是:1.前台进程( FOREGROUND_APP)2.可视进程(VISIBL
2011-12-19 20:40:32
9728
原创 qwerty物理键盘布局和特殊符号布局
键盘布局文件: qwerty.kcm驱动键值变成android KeyCode的过程:qwerty.kcm: scaleCode -> 键名KeycodeLables.h: 键名->Keycode特殊符号映射: qwerty.kl将SYM键改成输入特殊符号:在qwerty.kcm增加SYM 0xEF01 0xEF01 0xEF
2011-12-15 16:49:51
2402
原创 如何将宏的非字符串定义变成字符串
#include #define PRJ abcdef#define QUOTE_MACRO2(x) #x //给x加双引号#define QUOTE_MACRO(x) QUOTE_MACRO2(x) //当x为宏时,使得它有机会被替换成宏的定义#define QUOTE_PRJ_NAME QUOTE_MACRO(PRJ)int main(){ printf("QUOTE
2011-11-22 19:56:42
715
转载 android 可用内存的阀值--转载
Android采取了一种有别于Linux的进程管理策略,有别于Linux的在进程活动停止后就结束该进程,Android把这些进程都保留在内存中, 直到系统需要更多内存为止。这些保留在内存中的进程通常情况下不会影响整体系统的运行速度,并且当用户再次激活这些进程时,提升了进程的启动速
2011-08-11 15:01:15
2146
原创 Android c和c++函数调用堆栈分析
logcat 里把崩溃信息拷贝出来,然后:source build/envsetup.shchoosecombodevelopments/tools/scripts/stack crash.log用arm-eabi-objdump命令查看lib库或可执行文件的
2011-07-05 18:45:26
1948
原创 Android 中显示 Gif 格式图
引用: http://www.ibm.com/developerworks/cn/opensource/os-cn-android-anmt1/index.html 参考 Apidemos 中 com.example.android.apis.graphics BitmapDecode.java 中的示例代码。 它的实现是通过 Movie 这个类来对 Gif 文件进行读取
2011-06-07 16:32:00
1294
1
原创 Android Resource与反射
JAVA语言中的反射机制: 在Java 运行时 环境中,对于任意一个类,能否知道这个类有哪些属性和方法? 对于任意一个对象,能否调用他的方法?这些答案是肯定的,这种动态获取类的信息,以及动态调用类的方法的功能来源于JAVA的反射。从而使java具有动态语言的特性。 JAVA反射机制主要提供了以下功能: 1.在运行时判断任意一个对象所属的类
2011-06-03 09:44:00
747
转载 Android 中的ANR 问题,响应灵敏性
<br />转自:http://www.cnblogs.com/xirihanlin/archive/2010/01/07/1641621.html<br /> <br />可能会存在这样的情况,你写的代码通过了世界上所有的性能测试,但当用户尝试使用你的应用程序时,仍然让用户感到不爽。应用程序响应不够灵敏的地方包括——反映迟钝,挂起或冻结很长时间,或者需要花费很长的时间来处理输入。<br /> <br />在Android上,如果你的应用程序有一段时间响应不够灵敏,系统会向用户显示一个对话框,这个对话框称作
2011-06-01 12:16:00
723
转载 Android输入法框的梳理
<br />转自:http://blog.youkuaiyun.com/a345017062/archive/2011/01/06/6121147<br /> <br /> <br />/frameworks/base/services/java/InputMethodManagerService.java<br />这是整个系统当中,一切与输入法有关的地方的总控制中心。它通过管理下面三个模块来实现系统的输入法框架。<br />1、/frameworks/base/services/java/WindowManager
2011-05-25 19:34:00
989
原创 用python脚本实现的android代码管理工具rrdt
#!/usr/bin/python#coding=utf-8## Filename: rrdt## rrdt: Remote repositories downloading tools## Copyright & copy; 2010 by Huyuke. Oversea BU (R&D) of Gionee Communication Equipment Co., Ltd.## Change log# 2011-3-17 Huyuke# change behav
2011-03-31 18:17:00
2097
原创 android程序如何应用多种主题风格
原理:主程序与主题apk使用相同的sharedUserId, 使得主程序可以访问主题apk包中的资源参考:http://blog.youkuaiyun.com/aide1986/archive/2010/04/28/5538355.aspx主程序:MainSkin.apk主题包:BlackSkin.apk, GreenSkin.apkMainSkin实现一个activity来加载BlackSkin和GreenSkin中的资源,给自己设置不同主题的背景图片和按钮图片MainSkin的AndroidManifest.xml
2011-03-31 18:00:00
2238
原创 android 物理键盘 关键因素
参考PhoneWindowManager.java的adjustConfigurationLw()方法,可以找出以下关键因素:config_lidKeyboardAccessibility:在frameworks/base/core/res/res/values/config.xml中定义,含义如下: Indicate whether the lid state impacts the accessibility of the physical keyboard. 0 means it doesn't,
2011-03-17 19:49:00
2658
原创 Android TextView内容设置超链接、颜色、字体
<br />给双引号中的内容加彩色:<br /> private void highlightSearchHint(Spannable hintSpan){<br /> String hint = hintSpan.toString();<br /> Log.i(TAG, "highlightSearchHint " + hint);<br /> int index = -1;<br /> int start = 0;<br />
2011-03-10 11:15:00
1487
1
原创 在cron启动定时任务后总是会启动一个[sendmail] 进程的解决方法, 并且每次cron任务之后msmtp.log总是记录一条发送失败的日志
最近配置服务器上自动编译任务时,每次执行完cron任务之后发现home根目录下的msmtp的log文件有一个发送失败的log,而接收者为执行cron任务的用户名,事实上是因为cron任务有大量输出到标准设备上,从而出发系统的sendmail想把这些输出信息当作邮件发送给用户,而这个用户根本没有邮箱,因而导致msmtp记录了发送失败的log,而这个尝试发送邮件的进程就是[sendmail] 进程,如果把sendmail指向msmtp的软链接删除掉,这个进程就会变成[cron] 。 因此这个问题的
2011-03-10 09:48:00
1629
原创 自动编译脚本
在服务器:#!/bin/bash# this is a automatically compile script# add envsource ~/.profileupdate_log=update.logmake_log=make.logmake_log_tail=make_tail.logssh_env_log=ssh_env.logUPDATE_RESULT=FAILEDHAS_CHANGED=FALSEMAKE_RESULT=FAILEDcd /home/
2011-02-23 15:43:00
1289
转载 expect的基本用法
<br />转自:http://www.chinaunix.net/jh/24/594417.html<br /> <br />一、概述<br /><br />我们通过Shell可以实现简单的控制流功能,如:循环、判断等。但是对于需要交互的场合则必须通过人工来干预,有时候我们可能会需要实现和交互程序如telnet服务器等进行交互的功能。而Expect就使用来实现这种功能的工具。<br /><br />Expect是一个免费的编程工具语言,用来实现自动和交互式任务进行通信,而无需人的干预。Ex
2011-02-23 15:36:00
971
转载 Android Make脚本的简记
转自 http://blog.chinaunix.net/u/8866/Android Make脚本的简记(1)1. Build LayersBuild Layers描述的是产品的硬件配置情况,据此make时选择不同的配置和模块。按照从上到下的顺序,Build Layer分成4层。Layer sample NoteArch arm, x86 处理器的种类Board - 板子类型的代号Device - device配置的类型代号Prod
2011-01-07 11:10:00
2192
转载 Android编译系统分析
转自 http://blog.youkuaiyun.com/yili_xie/archive/2009/11/30/4906865.aspx 编译脚本及系统变量build/envsetup.sh脚本分析在编译源代码之前通常需要在android源代码顶层目录执行 . ./build/envsetup.sh 目的是为了使用脚本 envsetup.sh 里面定义了一些函数:function
2011-01-07 10:51:00
918
原创 JAVA操作XML的完整例子——W3C DOM篇
<br />转自: http://blog.youkuaiyun.com/cds27/archive/2008/03/02/2139110.aspx<br /> <br />这是一个用JAVA W3C DOM 进行XML操作的例子,包含了查询、增加、修改、删除、保存的基本操作。较完整的描述了一个XML的整个操作流程。适合刚入门JAVA XML操作的朋友参考和学习。<br />假设有XML文件:test1.xml<br /><?xml version="1.0" encoding="UTF-8"?><br /><
2010-12-07 22:04:00
563
转载 developer.android.com 无法访问解决方法
<br />昨天察看GG Groups的时候总是被一些不知道的原因造成无法打开google的论坛 <br />因为google在全球都有服务器,所以想到了一个简单的小办法~<br />默认的google网上论坛地址是http://groups.google.com/ 这里应该是解析到了国内的gg服务器IP,这就给了某些人屏蔽GG ip的可乘之机!<br />别怕,我们稍微改2个字母:<br />http://groups.google.fr/<br />http://groups.google.
2010-12-05 16:23:00
5236
转载 在SQLite中使用索引优化查询速度
<br />本文来自 sqlitechina.org 作者:工友<br /> <br />在进行多个表联合查询的时候,使用索引可以显著的提高速度:<br /><br />建立三个表:create table t1 <br />(id integer primary key,<br />num integer not null,<br />word1 text not null,<br />word2 text not null);<br />create table t2
2010-11-30 11:59:00
1129
转载 简述Android触摸屏手势识别
<br />转自:http://www.williamhua.com/2009/04/23/android-touchscreen-gesture-recogniton/<br /> <br />很多时候,利用触摸屏的Fling、Scroll等Gesture(手势)操作来操作会使得应用程序的用户体验大大提升,比如用Scroll手势在浏览器中滚屏,用Fling在阅读器中翻页等。在Android系统中,手势的识别是通过GestureDetector.OnGestureListener接口来实现的,不过W
2010-11-30 09:22:00
624
原创 linux && vim 批量替换
linux批量文件的字符串替换sed -i "s/oldstring/newstring/g" `grep oldstring -rl path`vim多行替换::l1,l2s/str1/str2/g仅替换文件中的第l1行到第l2行中的“str1”成“str2:s/vivian/sky/ 替换当前行第一个 vivian 为 sky:s/vivian/sky/g 替换当前行所有 vivian 为 sky:n,$s/vivian/sky/ 替换第 n 行开始到最后一行中每一行的第一个 vivia
2010-11-18 13:47:00
3182
转载 linux c/c++ GDB教程详解
<br />本文转自 http://www.91linux.com/html/article/program/cpp/20081017/13581.html<br /><br />GDB是GNU开源组织发布的一个强大的UNIX下的程序调试工具。或许,各位比较喜欢那种图形界面方式的,像VC、BCB等IDE的调试,但如果你是在UNIX平台下做软件,你会发现GDB这个调试工具有比VC、BCB的图形化调试器更强大的功能。所谓“寸有所长,尺有所短”就是这个道理。<br />一般来说,GDB主要帮忙你完成下面四个方
2010-11-15 17:40:00
694
转载 在shell脚本中调用另一个脚本的三种不同方法(fork, exec, source)
fork ( /directory/script.sh)fork是最普通的, 就是直接在脚本里面用/directory/script.sh来调用script.sh这个脚本.运行的时候开一个sub-shell执行调用的脚本,sub-shell执行的时候, parent-shell还在。sub-shell执行完毕后返回parent-shell. sub-shell从parent-shell继承环境变量.但是sub-shell中的环境变量不会带回parent-shellexec (exec /directory
2010-11-05 17:02:00
487
转载 执行make
一般描述整个工程编译规则的Makefile可以通过不止一种方式来执行。最简单直接的方法就是使用不带任何参数的“make”命令来重新编译所有过时的文件。通常我们的Makefile就书写为这种方式。在某些情况下:1. 可能需要使用make更新一部分过时文件而不是全部2. 需要使用另外的编译器或者重新定义编译选项3. 只需要察看那些文件被修改,而不需要重新编译为了达到这些特殊的目的,需要使用make的命令行参数来实现。Make的命令行参
2010-11-05 15:16:00
959
转载 Ubuntu cron定时执行任务
<br />转自:http://blog.chinaunix.net/u3/111961/showart_2359262.html<br /> <br />cron,是一个Linux定时执行工具,可以在无需人工干预的情况下运行作业。<br /><br /> 1. 关于crontab<br /><br /> 在Ubuntu server 9.10下,cron是被默认安装并启动的。通过/etc/crontab文件,可以看到以下内容:<br /> ---------
2010-11-05 09:52:00
1805
原创 git邮件配置
1.在服务器git仓库下的hooks目录下建立软链接:post-receive -> /usr/share/doc/git-core/contrib/hooks/post-receive-email2.设置服务器git全局配置git config --global hooks.mailinglist receiver1@receivers.com, receiver2@receivers.com [设置接收邮件的列表]git config --global hooks.emailprefix [GIT] 设
2010-11-03 15:47:00
1567
原创 ubuntu下终端邮件客户端msmtp
1、安装sudo apt-get install msmtp2、查看配置文件路径huyuke@huyuke:~$ msmtp –versionmsmtp version 1.4.19TLS/SSL library: GnuTLSAuthentication library: GNU SASLSupported authentication methods:plain cram-md5 digest-md5 gssapi external login ntlm IDN support: e
2010-11-03 15:19:00
1661
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人