Wi-Fi、LAN、ドングルなどのさまざまなネットワークインターフェイスの信号強度をチェックする必要があるソフトウェアを開発しています。信号強度を(絶対的または相対的に)測定し、強度がより大きいすべてのネットワークインターフェイスのIPアドレスを見つけたいいくつかのしきい値。どうすればJAVAでそれを行うことができますか?
1 に答える
http://www.java2s.com/Open-Source/Android/UnTagged/mytracks/com/google/android/apps/mytracks/signalstrength/SignalStrengthListenerCupcake.java.htmには、Android用のコードがいくつかあります。私はAndroidよりもiOSで作業しているので、それを精査することはできません。
デスクトップの場合、JVMがこのネットワーク情報を公開していないため、純粋なJavaソリューションはありません。その道を進む必要がある場合は、2つの基本的なオプションがあります。1)Javaを介してコマンドラインを呼び出し、別のコマンドからデータを抽出するか、2)JNIに移動します。どちらのアプローチも移植性がなく、どちらもかなりの労力を必要とします。Linux(http://www.cyberciti.biz/tips/linux-find-out-wireless-network-speed-signal-strength.html)で利用可能な1のバリアントは、ファイル'/ proc/netを解析することです。 Javaの/wireless'。
より良いニュースをお届けすることができず申し訳ありません。OracleでRFCを後援することを試みることができます、それはJVMネットワークライブラリに追加するための有用な情報として私を驚かせます。