2012-05-22 27 views
5

AndroidデバイスエミュレータにMACアドレスがありますか?私は、MACアドレスを取得するには、次のコードを書いた

WifiManager wimanager = (WifiManager) getSystemService(Context.WIFI_SERVICE); 
String address = wimanager.getConnectionInfo().getMacAddress(); 
Log.d("TOKEN", address); 

これが私の携帯電話上で完璧に動作しますが、Androidのエミュレータではnullを返します。これは、AndroidエミュレータにMACアドレスがないためですか?

答えて

3

これは、エミュレータでBluetoothデバイスを保持しようとするときと同じです。 MacAdressは存在せず、nullを返す必要があります。実際のデバイスで試してみてください。コードは正しいです。

+0

おかげで多くを見るためにerfectly :) – ademar111190

+0

はそれを作ってくれてありがとう簡単に助けてください:P –

0

See this postここでは、純粋なJava実装を提供するUtils.javaの例を提出しており、WifiManagerなしで動作します。コードはエミュレータでも動作します。

Utils.getMACAddress("wlan0"); 
Utils.getMACAddress("eth0"); 
Utils.getIPAddress(true); // IPv4 
Utils.getIPAddress(false); // IPv6 
0

デフォルトでは、AndroidエミュレータはEthernet接続をエミュレートして実行しますが、Wi-Fi接続はエミュレートしません。 Wi-Fiが有効になっていないため、コードにWi-Fi MACアドレスが表示されません。私のデバイス上のすべてのネットワークデバイスとのMacAddressを表示しようとしたとき、私はこの答えは非常に役に立ったhttp://kmansoft.com/2010/07/27/debugging-wifi-in-the-emulator/

を参照してください - https://stackoverflow.com/a/17719579/90236自分の携帯電話の作品で、

関連する問題