Androidデバイスで開いているポートと、開いているポートを閉じる方法を確認する簡単な方法はありますか?
open TCPポートは次のように表示されます。
65531閉ポートPORT
STATE SERVICE
53/tcpオープンドメイン
8187/tcp open unknown
38647/tcp open unknown
42761/tcp open unknown MAC Address:A4:9A:58:::**(Samsung Electronics Co.)
次のようなテキストの/ proc擬似ファイルを読み取ることで、現在開いているポートを確認できます。
/proc/net/tcp
/proc/net/udp
これは基本的にnetstatコマンド(実装されている場合)が行うことです-単純なnetstat実装のソースを見つけて調べることをお勧めします(Javaに移植できるようにする必要があります)
ただし、非特権アプリのユーザーIDとして実行している場合は、自分のプロセスに属するソケットのみを閉じることができます(または、ユーザーIDに属する他のプロセス、ptraceまたはプロセスの強制終了を含むラウンドアバウト手段によって)。また、ソケットを閉じても、そのポートがすぐに再利用できるとは限らないことに注意してください。
ランタイムを通じてさまざまなネットワークコマンドを試して、結果を確認できます。
// netstat -lptu
// netstat -vat
Process su = Runtime.getRuntime().exec("netstat -vat ");