【问题标题】:Get MAC Address Android Crashes APP获取MAC地址安卓崩溃APP
【发布时间】:2014-02-03 15:54:11
【问题描述】:

我正在尝试使用这个获取 Eclipse android 模拟器的 Wifi 网络的 MAC 地址:

WifiManager wifiManager = (WifiManager) LoginActivity.this.getSystemService(WIFI_SERVICE);
            WifiInfo wInfo = wifiManager.getConnectionInfo();
            String macAddress = wInfo.getMacAddress(); 
            System.out.println("HI");
            System.out.println(macAddress);

这是android清单权限

    <uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
    <uses-permission android:name="android.permission.INTERNET" />
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />

当执行到达时

System.out.println(macAddress);

应用程序因 java nullpointerexception 而崩溃并关闭它。

做错了什么?我必须为模拟器添加 wifi 连接?

【问题讨论】:

  • 你不能用wify连接模拟器link

标签: android


【解决方案1】:

关于WifiManager.getConnectionInfo() 的文档指出:

返回有关当前 Wi-Fi 连接的动态信息(如果有) 处于活动状态。

这意味着在这种情况下,您需要检查您的 WifiInfo 是否不是 null 以及您的设备是否有效连接到 Wi-Fi 网络。在模拟器的情况下,MAC 地址总是null,所以你应该确保你输出的内容是有效的。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-03-23
    • 2015-07-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多