- 浏览: 271824 次
- 性别:
- 来自: 南京
最新评论
-
ufo22940268:
我解决了https://github.com/ufo22940 ...
用LinearLayout和RelativeLayout分别实现两端对齐 -
c30268056:
您好~有个很大的疑问~我在frameworks/base/co ...
android sdk 编译--如何将源代码加入android.jar,以及make原理 -
pfglovejava:
lfkabc 写道改动资源文件后,在用mmm编译的时候会出现找 ...
Android定制出厂默认输入法 -
airshiplay:
airshiplay 写道linearLayout 请参考 h ...
用LinearLayout和RelativeLayout分别实现两端对齐 -
airshiplay:
linearLayout 请参考 http://airship ...
用LinearLayout和RelativeLayout分别实现两端对齐
文章列表
asc码对照表
-------------------------------------------------------------
ASCII Characters
Dec Hex Char Code Dec Hex Char
0 0 NUL 64 40 @
1 1 ...
Android2.3的输入事件流程与以前版本有了较大的不同,这里做一下详细的分析,最后我把自己分析时用的演示代码放在了这里:
http://code.google.com/p/flying-on-android/
下面的分析都是基于这些源码的,大家可以下载下来一边看源码一 ...
1.对文件和目录的修改还原
svn revert PATH...
描述
恢复所有对文件和目录的修改,并且解决所有的冲突状态。svn revert不会只是恢复工作拷贝中一个项目的内容,也包括了对属性修改的恢复。最终,你可以使用它来取消所有已经做过的预定操作(例如,文件预定要添加或删除可以“恢复”)。
例子
丢弃对一个文件的修改:
$ svn revert foo.c
Reverted foo.c
如果你希望恢复一整个目录的文件,可以使用--recursive选项:
$ svn revert --recursive .
Reverted newdir/afile
Reverted foo.c ...
在Linux下查看内存我们一般用free命令:
[root@scs-2 tmp]# free
total used free shared buffers cached
Mem: 3266180 3250004 16176 0 110652 2668236
-/+ buffers/c ...
一:update.zip包的制作
1:新建一个目标,在此目录下准备好需要的文件,如system目录文件、boot.img、recovery.img等.
mkdir testupdate
cp system/ testupdate/ -tf
注:如果文件是system.img镜像可以用unyaffs解压出来得到system
...
<eclipse-userlibraries version="2">
<library name="ScmLib" systemlibrary="false">
<archive path="X:/android/out/target/common/obj/JAVA_LIBRARIES/framework_intermediates/classes.jar"/>
<archive path="X:/android/out/t ...
无论是在linux还是在Unix环境中,make都是一个非常重要的编译命令。不管是自己进行项目开发还是安装应用软件,我们都经常要用到make或make install。利用make工具,我们可以将大型的开发项目分解成为多个更易于管理的模块,对于一个包括几百个源文件的应用程序,使用make和 makefile工具就可以简洁明快地理顺各个源文件之间纷繁复杂的相互关系。而且如此多的源文件,如果每次都要键入gcc命令进行编译的话,那对程序员来说简直就是一场灾难。而make工具则可自动完成编译工作,并且可以只对程序员在上次编译后修改过的部分进行编译。因此,有效的利用make和 makefile工具可以大大 ...
build/envsetup.sh脚本分析
在编译源代码之前通常需要在android源代码顶层目录执行 . ./build/envsetup.sh 目的是为了使用
脚本 envsetup.sh 里面定义了一些函数:
function help()
function get_abs_build_var()
function get_build_var()
function check_product()
function check_variant()
function setpaths()
function printconfig()
function set_stuff_for_environ ...
一般的native和framework的通信是通过jni,但是这一般只是framework调用native,native如果有消息要怎样通知上层呢?android中GSP模块提供一种解决思路,但是实现有些复杂,这里介绍一种使用socket通信的方法可以使native和framework自由通信,具体实现如下:
android中使用jni对linux中的socket进行了封装。使用起来十分的方便。
由于android是基于linux的,所以linux的代码会在java之前先执行,所以一般native端是服务器。framework端是客户端。
java层主要代码:
LocalSocket s =nu ...
BatteryService作为电池及充电相关的服务,它的实现非常简单:
o 监听UEvent,读取sysfs里中的状态。
实现了一个UEvent的观察者。uevent是Linux内核用来向用户空间主动上报事件的机制,对于JAVA程序来说,只实现UEventObserver的虚函数onUEvent,然后注册即可。
private UEventObserver mUEventObserver = new UEventObserver() {
@Override
public void onUEvent(UEventObserver.UEvent eve ...
HttpClient有一个对连接初始化和终止,还有在活动连接上I/O操作的完整控制。而连接操作的很多方面可以使用一些参数来控制。
2.1 连接参数
这些参数可以影响连接操作:
* 'http.socket.timeout':定义了套接字的毫秒级超时时间(SO_TIMEOUT),这就是等待数据,换句话说,在两个连续的数据包之间最大的闲置时间。如果超时时间是0就解释为是一个无限大的超时时间。这个参数期望得到一个java.lang.Integer类型的值。如果这个参数没有被设置,那么读取操作就不会超时(无限大的超时时间)。
* 'http.tcp.nodelay':决定了是否使用N ...
expression
expr ::= expr binary-op expr |
expr [NOT] like-op expr [ESCAPE expr] |
unary-op expr |
( expr ) |
column-name |
table-name . column-name |
database-name . table-name . column-name |
literal-value |
parameter |
function-name ( expr-list | * ) |
expr ISNULL |
expr NOTNULL |
expr [NOT] BE ...
下载完代码后,进行make,
$cd ~/mydroid
$make
却出现了如下错误:
build/core/main.mk:73: You are attempting to build on a 32-bit system.
build/core/main.mk:74: Only 64-bit build environments are supported beyond froyo/2.2.
这是因为froyo/2.2默认只支持64-bit,看到有些网友还要去下载64-比他的操作系统,很是麻烦,于是通过不断搜索资料终于解决,
解决办法:
需要进行如下修改即可,
将
./externa ...
1. WINDOW_SERVICE:窗口服务
2. WIFI_SERVICE:标准的无线局域网服务
3. WALLPAPER_SERVICE:墙纸服务
4. VIBRATOR_SERVICE:手机振动服务
5. TELEPHONY_SERVICE:电话服务
6. SENSOR_SERVICE:传感器服务
7. SEARCH_SERVICE:本地查询服务
8. POWER_SERVICE:电源服务,包括‘叫醒闹钟’等支持设备运行持久任务的服务。
9. NOTIFICATION_SERVICE:通知服务
10. LOCATION_SERVIC ...
-vmargs -Xms128M -Xmx512M -XX:PermSize=64M -XX:MaxPermSize=128M
这里有几个问题:
1. 各个参数的含义什么?
2. 为什么有的机器我将-Xmx和-XX:MaxPermSize都设置为512M之后Eclipse可以启动,而有些机器无法启动?
3. 为何将上面的参数写入到eclipse.ini文件Eclipse没有执行对应的设置?
下面我们一一进行回答
1. 各个参数的含义什么?
参数中-vmargs的意思是设置JVM参数,所以后面的其实都是JVM的参数了,我们首先了解一下JVM内存管理的机制,然后再解释每个参数代表的含义。
堆 ...