Вопрос

Я начинающий на платформе Android, и я хочу построить приложение Tracerouting. Так что это некоторые мои вопросы, которые я хочу спросить:

  1. Можно ли сделать такое приложение в Android? Если возможно, потом направьте мне, как я следую.

  2. Поддерживает ли Android программирование с низким уровнем для захвата пакетов ICMP? Или мне нужно добавить какую-то банку (в Java) или некоторые другие библиотеки для поддержки этого приложения.

  3. В Java есть JPCAP и DOCJAR ETC в родах библиотек, которые мы можем импортировать в нашу IDE или Eclipse, чтобы Java поддержать для создания такого типа API?

Мне нужны ценные предложения.

Это было полезно?

Решение

Самый простой способ, которым я могу думать, это просто проверить на traceroute Приложение Linux, выполните его и разбирайте свой вывод.

Android имеет полную поддержку сети, однако Java не подвергает интерфейс для изменения заголовка IP. Следовательно, вручную избавляет пакеты ICMP не имеют вопроса (JPCAP не помогает здесь, поскольку он полагается на LibPCAP, который я полагаю, вы не найдете ни одной ванильной установки).

Другая возможно Решение состоит в том, чтобы использовать NDK и создать небольшую библиотеку, которая обрабатывает низкоуровневый номер вручения. Тем не менее, я не уверен, что NDK позволит вам использовать setsockopt.

Другие советы

Это довольно поздно - но кто-то может увидеть это. Я нашел это, и это сработало для меня:https://github.com/olivierg13/traacerouteping.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top