自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(47)
  • 资源 (1)
  • 收藏
  • 关注

转载 打造自己的chrome for android

chromium移植已经接近尾声,正在冲刺beta版本。不过越往后面,越是一些难啃的骨头。虽然背靠chromium这座大山,但是网页的复杂性超乎想象。更郁闷的是,有些BUG在chrome for android上没有,但在我们的浏览器上存在。因此经常会有这样的质疑:人家的chrome浏览器好好的,你做的浏览器为什么会有这样的问题。面对这样的质疑,真是有苦说不出。在有些人看来,别人都把源代码开放出来

2014-02-09 21:37:50 2185

原创 linux内核书籍

1.Linux Kernel Development2.Understanding the Linux Kernel3.Linux Device Drivers4.Linux内核源代码情景分析按顺序彻底研究。

2013-04-15 16:39:41 713

转载 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 1311

原创 用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 4531 1

原创 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 2609

转载 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 903

原创 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 891

原创 其他应用返回launcher桌面的流程

分两种清形:launcher已被回收需重新启动activity 和 恢复launcher的activityActivity:onKeyUp handle KEYCODE_BACK ->Activity:onBackPressed->Activity:finish->ActivityManagerProxy:finishActivity->ActivityManagerNative:FI

2012-01-10 12:06:23 1191

原创 利用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 2474

原创 打开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 1083

原创 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 2497

转载 Android的进程回收

转自Android中的进程是托管的,当系统进程空间紧张的时候,会依照优先级自动进行进程的回收.由此带来三个问题:回收规则:  什么时候回收与回收哪一个避免误杀:  如何阻止被回收数据恢复与保存:  被回收了怎么办 Android将进程分为6个等级,它们按优先级顺序由高到低依次是:1.前台进程( FOREGROUND_APP)2.可视进程(VISIBL

2011-12-19 20:40:32 9463 6

原创 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 2288 1

原创 如何将宏的非字符串定义变成字符串

#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 667

转载 android 可用内存的阀值--转载

Android采取了一种有别于Linux的进程管理策略,有别于Linux的在进程活动停止后就结束该进程,Android把这些进程都保留在内存中, 直到系统需要更多内存为止。这些保留在内存中的进程通常情况下不会影响整体系统的运行速度,并且当用户再次激活这些进程时,提升了进程的启动速

2011-08-11 15:01:15 2060

原创 Android c和c++函数调用堆栈分析

logcat 里把崩溃信息拷贝出来,然后:source build/envsetup.shchoosecombodevelopments/tools/scripts/stack crash.log用arm-eabi-objdump命令查看lib库或可执行文件的

2011-07-05 18:45:26 1912

原创 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 1262 2

原创 Android Resource与反射

JAVA语言中的反射机制:    在Java 运行时 环境中,对于任意一个类,能否知道这个类有哪些属性和方法?    对于任意一个对象,能否调用他的方法?这些答案是肯定的,这种动态获取类的信息,以及动态调用类的方法的功能来源于JAVA的反射。从而使java具有动态语言的特性。  JAVA反射机制主要提供了以下功能:      1.在运行时判断任意一个对象所属的类  

2011-06-03 09:44:00 714

转载 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 694

转载 Android输入法框的梳理

<br />转自:http://blog.csdn.net/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 956

原创 用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 1952

原创 android程序如何应用多种主题风格

原理:主程序与主题apk使用相同的sharedUserId, 使得主程序可以访问主题apk包中的资源参考:http://blog.csdn.net/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 2198 2

原创 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 2507

原创 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 1450 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 1538

原创 自动编译脚本

在服务器:#!/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 1208

转载 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 914

转载 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 2070

转载 Android编译系统分析

转自 http://blog.csdn.net/yili_xie/archive/2009/11/30/4906865.aspx 编译脚本及系统变量build/envsetup.sh脚本分析在编译源代码之前通常需要在android源代码顶层目录执行 . ./build/envsetup.sh 目的是为了使用脚本 envsetup.sh 里面定义了一些函数:function

2011-01-07 10:51:00 885

原创 JAVA操作XML的完整例子——W3C DOM篇

<br />转自: http://blog.csdn.net/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 542

转载 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 4829

转载 在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 1090

转载 简述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 587

原创 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 3108

转载 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 662

转载 在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 456

转载 执行make

一般描述整个工程编译规则的Makefile可以通过不止一种方式来执行。最简单直接的方法就是使用不带任何参数的“make”命令来重新编译所有过时的文件。通常我们的Makefile就书写为这种方式。在某些情况下:1.        可能需要使用make更新一部分过时文件而不是全部2.        需要使用另外的编译器或者重新定义编译选项3.        只需要察看那些文件被修改,而不需要重新编译为了达到这些特殊的目的,需要使用make的命令行参数来实现。Make的命令行参

2010-11-05 15:16:00 857

转载 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 1713

原创 git邮件配置

1.在服务器git仓库下的hooks目录下建立软链接:post-receive -> /usr/share/doc/git-core/contrib/hooks/post-receive-email2.设置服务器git全局配置git config --global hooks.mailinglist [email protected], [email protected] [设置接收邮件的列表]git config --global hooks.emailprefix [GIT] 设

2010-11-03 15:47:00 1512

原创 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 1602

git book 中文

介绍了很多git技巧。分享一下。顺便攒点积分

2010-11-04

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除