2010-10-11 7 views
3

Est-il possible de créer une application qui obtient l'activité/les statistiques du réseau en cours d'exécution en tant que processus d'arrière-plan? Ou juste faire une application qui écoute le trafic sur un port spécifique?Statistiques du réseau Android

Merci M

Répondre

3

Il a frappé peut-être et de manquer. Mais la plupart des périphériques que j'ai utilisés ont le système de fichiers/proc. Vous devriez être en mesure d'obtenir les statistiques dont vous avez besoin sur l'une des entrées/proc/net /. Par exemple pour obtenir un netstat:

Process proc = Runtime.getRuntime().exec(new String[] {"cat", "/proc/net/netstat"}); 
BufferedReader reader = new BufferedReader(new InputStreamReader(proc.getInputStream())); 
String line = null; 

while ((line = reader.readLine()) != null) 
{ 
    // parse netstat output here 
} 
+6

Il n'y a pas besoin d'utiliser exec, il suffit de lire le fichier java –

+0

Que dois-je mettre là pour analyser les données? Comment puis-je vérifier le taux total de téléchargement et de téléchargement (globalement et/ou d'une application spécifique), par exemple? –

-1

Pas besoin d'exécuter la commande "cat/proc/net/netstat". Au lieu d'une approche plus simple peut résoudre le problème

Process proc = Runtime.getRuntime().exec(new String[] {"netstat"}); 
BufferedReader reader = new BufferedReader(new InputStreamReader(proc.getInputStream())); 
String line = null; 
while ((line = reader.readLine()) != null) { 
// parse netstat output here 
} 
+0

et comment est-ce plus simple? – Ankit

Questions connexes