2010-03-16 5 views
0

Je cherche à concevoir une application qui nécessitera un certain contrôle en profondeur sur les paquets IP. En regardant le guide de référence sur le site des développeurs sur Android, je vois un contrôle très limité sur les paquets de java.net:SocketOptions et java.net:DatagramPacket. Plus précisément, je cherche à contrôler les bits individuels dans le paquet pour définir les indicateurs TCP, SYN/ACK/RST, et ainsi de suite. Basé sur les docs que je suppose que je ne peux pas faire cela dans l'API Java fournie par Android et je suppose que je vais devoir le faire d'une autre manière?Comment obtenir un meilleur contrôle des paquets réseau sur Android

Quelqu'un at-il un aperçu à ce sujet?

+2

Je ne pense pas que ce soit possible. Peut-être que vous pouvez le faire en utilisant le NDK, mais je n'ai aucune expérience de l'utiliser, donc je ne peux même pas vous dire si le NDK nous fournit des sockets (Berkeley). – MrSnowflake

+0

Une autre question ici est si cela est possible sans enracinement? Habituellement, les paquets bruts nécessitent des privilèges root sur la plupart des systèmes d'exploitation. – hellstorm

Répondre

0

Il semble donc que le SDK ne puisse pas faire ce dont j'avais besoin. Le NDK peut être en mesure, mais sur une réflexion plus poussée, je crois que même en utilisant cela, il faudra des privilèges racine pour construire des paquets bruts. Comme je n'ai pas l'intention d'enraciner mon téléphone pour le moment, tout sera mis en attente.

Questions connexes