6

我是android平台的初学者,我想构建一个跟踪应用程序。所以这些是我的疑问:

  1. 是否有可能在Android中制作这样的应用程序?如果可能的话,请指导我遵循的方式。

  2. Android 是否支持低级编程来捕获 ICMP 数据包?还是我需要添加某种 JAR(在 java 中)或其他一些库来支持这个应用程序?

  3. 在 Java 中,我们可以在 IDE 或 Eclipse 中导入 JPCAP 和 docjar 等类型的库,以便 Java 支持制作此类 API?

我需要宝贵的建议。

4

3 回答 3

4

已经很晚了——但有人可能会看到。我找到了这个,它对我有用: https ://github.com/olivierg13/TraceroutePing

于 2014-01-12T17:07:25.000 回答
2

我能想到的最简单的方法就是检查tracerouteLinux 应用程序,执行它,然后解析它的输出。

Android 具有完整的网络支持,但是,Java 没有公开接口来更改 IP 标头。因此,手动制作 ICMP 包是不可能的(JPCAP 在这里没有帮助,因为它依赖于 libpcap,我想你不会在任何 vanilla 安装中找到它)。

另一种可能的解决方案是使用 NDK 并创建一个小型库来处理低级数字运算。但是,我不确定 NDK 是否允许您使用setsockopt.

于 2011-04-15T10:51:18.017 回答
1

对我来说效果很好,您可能必须过滤掉字符串结果。要添加这个库,您必须下载或克隆 git 存储库并实现文件夹“library”,就像他在其他模块“app”中所做的那样,它才能正常工作。

于 2020-06-10T23:39:52.783 回答