DONELIST && TODOLIST
11/19
1.
问题:Android project本身没有错误,项目上显示一个小红叉:
解决方法:
进入C:\Documents and Settings\Administrator\.android 删除路径下的debug.keystore及 ddms.cfg。
(不同环境下的目录可能略有不同,可在eclipse中查找此路径:Window->Preferences->Android->Build下 Default debug keystore)
然后重新导入即可。
Refer:http://www.cnblogs.com/yyangblog/archive/2011/01/07/1929657.html
2.
问题:向android模拟器中复制文件报out of memory错误解决
解决方法:
cmd进入android sdk路径tools目录下
emulator -avd 你创建的avd名字(比如htc2.2) -partition-size 128
Refer:http://blog.csdn.net/xiaoxiaosunzhao/article/details/6407745
3.
问题:在windows7中,使用jpcap库,实现Ping功能。
解决方法:
1)下载jpcap。地址是http://netresearch.ics.uci.edu/kfujii/Jpcap
2)配置jpcap.jar到build path中
3) 安装wincap
4) 将jpcap.dll复制到当前项目目录下
Ping功能的实现可参考:http://www.0x13.de/index.php/code-snippets/74-icmp-ping-in-java.html
Refer:http://javafound.iteye.com/blog/165704
4.问题:在ubuntu中,使用jpcap库,实现Ping功能。
1)下载jpcap。地址是http://netresearch.ics.uci.edu/kfujii/Jpcap
2)配置jpcap.jar到build path中
3)把libjpcap.so配置到当前项目目录下;注意不要把libjpcap.so加到build path中去。
Ping功能的实现参考同上。
5.问题:在android上,使用jpcap库,实现Ping功能。
1)下载android source tree(步骤见问题6)
2) 先编译出android平台的libpcap.so共享库。
在external文件夹中,找到libpcap项目包,然后用android ndk编译。android ndk编译我也是新手。
我的步骤是:
. 到android-ndk-r7的samples文件夹中,建立任意名称的项目文件夹(比如pcap)
. 在建立的项目文件夹pcap中建立jni文件夹中,把libpcap文件夹里面的文件全部拷贝到jni文件夹中。
. 编辑Android.mk文件。我的内容如下:
--------------------------------
LOCAL_PATH:= $(call my-dir)
include $(CLEAR_VARS)
LOCAL_SRC_FILES:=\
bpf_dump.c\
bpf/net/bpf_filter.c\
bpf_image.c\
etherent.c\
fad-gifc.c\
gencode.c\
grammar.c\
inet.c\
nametoaddr.c\
optimize.c\
pcap.c\
pcap-linux.c\
savefile.c\
scanner.c\
version.c
LOCAL_CFLAGS:=-O2 -g
LOCAL_CFLAGS+=-DHAVE_CONFIG_H -D_U_="__attribute__((unused))" -Dlinux -D__GLIBC__ -D_GNU_SOURCE
LOCAL_MODULE:= pcap
LOCAL_MODULE_FILENAME:= libpcap
LOCAL_LDLIBS := \
-ldl
include $(BUILD_SHARED_LIBRARY)
--------------------------------
.编辑Cygwin.bat
--------------------------------
@echo off
C:
chdir C:\cygwin\bin
set HOME=/cygdrive/c/cygwin/home/
set NDK=/cygdrive/D/Bourne/android-ndk-r7(change to your own path)
bash --login -i
--------------------------------
.在Cygwin中,执行$NDK/ndk-build ok则得到libpcap.so
3)在编译出android平台的libjpcap.so共享库。
步骤同上。把libpcap.so加入include中,编译。
这一步暂时还没走通,还需要研究一下。Android.mk就先不贴出来了。
(或者从这里http://www.xiazaile.info/source/detail/3116385/kvjqzx下载android平台的libjpcap.so,不可是否可用还不知道)
4)把libpcap.so和libjpcap.so加入到项目中libs/armeabi/中。
5)运行到ping功能。
(这一步暂时走到NetworkInterface[] devices = JpcapCaptor.getDeviceList()
返回空数组。
分析可能的原因有:
. 需要破解android手机,拿到root权限
. 我们的android application需要具有root权限。请参考http://my.unix-center.net/~Simon_fu/?p=951
. 第三步中直接下载的libjpcap.so库文件不好使。
6.问题:在ubuntu中下载android source tree.
步骤参考http://source.android.com/source/downloading.html
以及http://android.yaohuiji.com/archives/2652
下载完成后,android source的项目结构可参考
http://4225953-163-com.iteye.com/blog/746660
以及http://android.tgbus.com/Android/androidnews/200812/172252.shtml