В настоящее время я использую следующий код для получения информации о активных сетевых сокетах. До сих пор я подтверждал, что это работает на Nexus 4 (Jellybeans), Nexus 5 (Jellybeans, KitKat и Lollipop) и устройстве Sony Xperia (Jellybeans).Является ли команда «netstat» общедоступной на Android?
Process process = Runtime.getRuntime().exec("netstat -n");
process.getOutputStream().close();
BufferedReader reader = new BufferedReader(
new InputStreamReader(process.getInputStream()));
String line;
while ((line = reader.readline()) != null) {
// Parse line for required info
}
reader.close();
Могу ли я рассчитывать на приведенный выше код, чтобы правильно функционировать на большинстве реальных Android устройств там?
Я не предполагаю, что вы знаете какое-либо место с данными, на которых основные устройства (если они есть) не имеют каких-либо из этих функций? – Saran
Ничего страшного не видел такого списка. Я могу себе представить, что у большинства устройств это будет, хотя это довольно простой инструмент. – Hrafn
Я добавлю, что некоторые устройства поставляются в комплекте с BusyBox, который содержит netstat: http://www.busybox.net/downloads/BusyBox.html – Hrafn