Android Browser Introduction 1

最近一直在看Android 浏览器的代码。现在主要在看MMI方面的,还有framework里的,还有Gears(现在支持的网站还不是太多,但确实是一个不错的应用),webkit暂时还没去看了。有时间将心得写下来。不知道有同行吗?可以一起交流交流。
MMI的代码主要在:packages/apps/Browser/

pjq@gentoo-pjq /var/www/localhost/htdocs/android_src $ ls packages/apps/Browser/ -lR
packages/apps/Browser/:
total 40
-rw-r--r--  1 root root 11135 2009-06-20 05:23 AndroidManifest.xml
-rw-r--r--  1 root root   372 2009-06-20 05:23 Android.mk
drwxr-xr-x  4 root root  4096 2009-06-20 05:23 assets
-rw-r--r--  1 root root     

Android:自动生成keystore和自动签名及自动重装APK的脚本

每次要生成keystore都要输入一堆命令,而且难记,顺便就写了几个小脚本:
可以在这里下载
http://github.com/pjq/AndroidShell/tree/master

用来生成keystore的,并且自动对当前工程APK文件进行签名,需要在工程根目录下执行
比如要产生 myapp.keystore
只要执行:./genkey myapp


cat /usr/local/bin/genkey
#!/bin/sh
#Author:pengjianqing@sina.com
#Date:20090607
#description:used to gen the keystore
#Filename:genkey.sh
#USAGE:
#Example:
#./genkey.sh appname
#
#

echo "========================================"
APKFILE=`ls bin/ -l|grep apk|cut -d " " -f8`
echo "APKFILE=${APKFILE}"
echo "========================================"


echo 

Android:Google 翻译前端

Update
做了一个Google 翻译前端。
涉及到Android Spinner用法,网络数据解析,数据库操作,以及文件的读写(包含读写中文(UTF))

源码可以在这里下载到。
http://github.com/pjq/GTranslator/tree/master
如果觉得这个程序有用,也请顶一下了,谢谢 。

可以选择要翻译的语言。

主界面:

发件人 snapshoot

查询历史,用到的是数据库:

发件人 snapshoot

这里也是查询历史用的是文件读写:

发件人 snapshoot

翻译语言选择:

发件人 snapshoot

主要Android 源码:…

Android ImageView用法

详见:http://gentoo-pjq.vicp.net/bbs/viewtopic.php?f=8&t=85&p=100&sid=f1b441b45cf00aaa9b3c88e74fc45902#p100

代码可以到这里下载:http://github.com/pjq/weatherUI/tree/master
用git clone:

代码:
git clone git@github.com:pjq/weatherUI.git

要做一个weather report 的UI。
用Droiddraw画了一个UI。
写了一些测试代码,当点到一张图片的时候,并将这张图片显示出来。
这里要注意这一段:

代码:
public boolean onTouch(View v, MotionEvent event) {
ImageView imageview = (ImageView)findViewById(v.getId());
imageview.setBackgroundDrawable(v.getBackground());

按理说不应该再重新设置背景了,但很奇怪的是,当第一次点到一张图片时,会将这张点到的图片放到,所以在那么小的ImageView里就会显示不全,而只显示放大后的图片的一部分。
——后来又试了一下,好像又没问题,奇怪!!!

pjq@localhost ~/eclipse/workspace/weatherUI/src/com/qisda/weather $ cat weatherUI.java
package com.qisda.weather;

import android.app.Activity;
import android.os.Bundle;

Android startActivityForResult的使用

当我们调用其它activity的时候,如果需要那个调用的activity返回数据,这个时候我们就需要使用startActivityForResult了。网上也有很多关于这个的介绍。

http://www.blogjava.net/marshal-hird/archive/2008/07/25/217389.html

这是一篇翻译的文章。不知道是不是敲错了,onActivityResult(int, int, String, Bundle) 这个函数参数错了。我照着这个函数参数,一直无法跑到这个回调,我用的是最新的SDK 1.5 r1,查了好久也没发现哪个地方错了。最后,没办法,去SDK中搜了一下。在app.android.Activity下, 原来是这样的:onActivityResult(int, int, Intent)

是三个参数。难道是版本的原因。将参数改过之后就能跑到这个加调了。

下面是我用来测试的代码:

1.主入口:


/*
* Copyright (C) 2007 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you