最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

解決Android 6.0獲取wifi Mac地址為02:00:00:00:00:00問題

 更新時間:2017年11月16日 15:07:07   作者:Donkor-  
這篇文章主要介紹了Android 6.0獲取wifi Mac地址為02:00:00:00:00:00的解決方法,非常不錯,具有參考借鑒價值,需要的朋友可以參考下

前言:

之前項目比較舊,手機版本還比較低,還使用eclipse開發(fā)。用到了需要獲取手機wifi Mac地址。使用了如下代碼:

// Android 6.0之前的版本可以用的方法(模擬器可以使用) 
  private String getMacAddrOld() 
  { 
    String macString = ""; 
    WifiManager wifimsg = (WifiManager)getSystemService(Context.WIFI_SERVICE); 
    if (wifimsg != null) 
    { 
      if (wifimsg.getConnectionInfo() != null) 
      { 
        if (wifimsg.getConnectionInfo().getMacAddress() != null) 
        { 
          macString = wifimsg.getConnectionInfo().getMacAddress(); 
        } 
      } 
    } 
    return macString; 
  }

▲ 產生問題 :

使用這個方法,在模擬器上是可以正常獲取wifi mac地址,但是在Android 6.0系統(tǒng)上,獲取的就有問題,返回的是“02:00:00:00:00:00”

▲ 問題分析 :

原來谷歌官方為了給用戶更多的數(shù)據(jù)保護,從這個6.0版本開始, Android 移除了通過 WiFi 和藍牙 API 來在應用程序中可編程的訪問本地硬件標示符。現(xiàn)在 WifiInfo.getMacAddress() 和 BluetoothAdapter.getAddress() 方法都將返回 02:00:00:00:00:00

▲ 解決方案 :

正所謂上有政策,下有對策。我們可以使用如下代碼去獲取手機wifi Mac地址,同樣可以解決6.0以上版本問題。值得注意的是模擬器使用如下代碼去獲取是獲取不到的!

public static String getMacAddr() { 
    try { 
      List<NetworkInterface> all = Collections.list(NetworkInterface.getNetworkInterfaces()); 
      for (NetworkInterface nif : all) { 
        if (!nif.getName().equalsIgnoreCase("wlan0")) continue; 
        byte[] macBytes = nif.getHardwareAddress(); 
        if (macBytes == null) { 
          return ""; 
        } 
        StringBuilder res1 = new StringBuilder(); 
        for (byte b : macBytes) { 
          res1.append(String.format("%02X:",b)); 
        } 
        if (res1.length() > 0) { 
          res1.deleteCharAt(res1.length() - 1); 
        } 
        return res1.toString(); 
      } 
    } catch (Exception ex) { 
    } 
    return "02:00:00:00:00:00"; 
  }

手機必須是有網絡的狀態(tài)下,同時注意不要忘了添加權限

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

總結

以上所述是小編給大家介紹的Android 6.0獲取wifi Mac地址為02:00:00:00:00:00的解決方法,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網站的支持!

相關文章

最新評論

伊吾县| 互助| 定襄县| 天镇县| 疏勒县| 满城县| 友谊县| 双桥区| 舒城县| 都兰县| 佛坪县| 即墨市| 蒙自县| 白银市| 蓬莱市| 金溪县| 通榆县| 太白县| 新源县| 乌审旗| 平凉市| 周口市| 鄯善县| 荔波县| 威远县| 蓬安县| 蓬溪县| 沈丘县| 剑河县| 弥勒县| 梅河口市| 丘北县| 墨脱县| 婺源县| 宜春市| 黄浦区| 麻阳| 房产| 金川县| 枣阳市| 临高县|