Java コードから Mac OSX 上の Wifi デバイスのリストにアクセスする必要があります。調査した結果、「ネイティブ」コード、つまり CoreWLAN フレームワークと CWInterface.h クラス ( https:// developer.apple.com/library/mac/#documentation/CoreWLAN/Reference/CWInterface_reference/translated_content/CWInterface.html )
私は当初、JNA を使用してこのコードを呼び出すことができると考えていましたが、CoreWLAN は Objective-C (C/C++ ではない) であるため、何かが必要であることに気付きました。
この Objective-C Java ブリッジ ( https://github.com/shannah/Java-Objective-C-Bridge ) を試しましたが、CoreWLAN フレームワークを見つける方法がわかりません。
そこで、JNAerator ( https://code.google.com/p/jnaerator/wiki/ObjectiveC ) も試してみたので、BridJ ( https://code.google.com/p/bridj/ )を使用できます。しかし、正しい Java コードを生成することはできません。
- このスタイルを使用すると
java -Xmx1000m -jar jnaerator.jar -framework CoreWLAN -jar CoreWlan.jar
すぐに実行されますが、CoreWlan.h のマッピングのみを含む jar が作成されます。 - CWInterface.h に対して jnaerator を実行すると、jnaerator が失敗します。(jnaerator の最新のスナップショット バージョンを使用しています)
Java から CWInterface.h のメソッドを呼び出す最良の方法は何ですか?