Pergunta

Sou iniciante na plataforma Android e quero criar um aplicativo de rastreamento. Então, essas são algumas das minhas consultas que quero perguntar:

  1. É possível fazer essa aplicação no Android? Se possível, então me guie da maneira que eu sigo.

  2. O Android suporta programação de baixo nível para capturar pacotes ICMP? Ou preciso adicionar algum tipo de jar (em Java) ou em algumas outras bibliotecas para apoiar este aplicativo.

  3. Em Java, existem bibliotecas JPCap e Docjar etc que podemos importar em nosso IDE ou eclipse para que o suporte Java para fazer esse tipo de API?

Eu preciso de sugestões valiosas.

Foi útil?

Solução

A maneira mais simples que consigo pensar é apenas verificar o traceroute Aplicação do Linux, execute -o e analise sua saída.

O Android possui suporte completo em rede, no entanto, o Java não expõe uma interface para alterar o cabeçalho IP. Portanto, a criação manual de pacotes ICMP está fora de questão (o JPCAP não ajuda aqui, pois se baseia no libpcap, o que eu suponho que você não encontrará em nenhuma instalação de baunilha).

Outro possível A solução é usar o NDK e criar uma pequena biblioteca que lida com a trituração de números de baixo nível. No entanto, não tenho certeza se o NDK permitiria que você use setsockopt.

Outras dicas

É muito tarde - mas alguém pode ver. Eu encontrei este e funcionou para mim:https://github.com/olivierg13/tracerouteping

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top