转载时请注明出处和作者联系方式
文章出处:http://www.limodev.cn/blog
作者联系方式:李先静 <xianjimli@gmail.com>
Broncho A1和普通Android手机一样,不能直接拿来当modem使用,不过可以把它当作一个网关或代理,这样,PC就可以通过A1来访问Internet 了。今天用privoxy(http://www.privoxy.org/)试了一下,工作正常,具体步骤如下:
1. 下载 privoxy-3.0.15-beta-src.tar.gz
2. 解压到android/extern目录中。
3. 先编译一个正常Linux的版本。
cd external/privoxy-3.0.15-beta;
autoheader && autoconf && ./configure --disable-acl-files;
make
4. 创建一个Android.mk
- #
- # Copyright : Written by and Copyright (C) 2010 Li XianJing <xianjimli@hotmail.com>
- #
- LOCAL_PATH:= $(call my-dir)
- include $(CLEAR_VARS)
- LOCAL_C_CFLAGS=-DANDROID
- LOCAL_C_INCLUDES += external/privoxy/pcre external/privoxy external/zlib
- LOCAL_SRC_FILES:= actions.c cgi.c cgiedit.c cgisimple.c deanimate.c /
- encode.c errlog.c filters.c gateway.c jbsockets.c jcc.c list.c /
- loadcfg.c loaders.c miscutil.c parsers.c ssplit.c urlmatch.c /
- pcrs.c pcre/get.c pcre/maketables.c pcre/study.c pcre/pcre.c /
- pcre/pcreposix.c
- LOCAL_MODULE := privoxy
- LOCAL_SHARED_LIBRARIES := libc
- LOCAL_STATIC_LIBRARIES := libz
- include $(BUILD_EXECUTABLE)
5. 修改一下miscutil.c
#if !defined(HAVE_TIMEGM) && defined(HAVE_TZSET) && defined(HAVE_PUTENV)
-->
#if !defined(HAVE_TIMEGM) && defined(HAVE_TZSET) && defined(HAVE_PUTENV) || defined(ANDROID)
6. 编译(先设置Android的环境)
mm
7. 上传下列文件到Broncho A1
default.filter
user.action
default.action
match-all.action
config
privoxy
8. 在Broncho A1上运行代理。
./privoxy &
9. 在PC端设置tcp转发
adb forward tcp:8118 tcp:8118
10. 把浏览器的代理设置为localhost 8118
好了,PC就可以通过Broncho A1访问Internet了。
大家也可以到这里下载编译好的版本(包括源代码): http://www.limodev.cn/download/privoxy-broncho-a1.tar.gz
解压后,把privoxy-3.0.15-beta/for-broncho-a1/目录中的文件上传到Broncho A1上,参考本文的最后几步即可用A1访问Internet。