Android 8.0無法獲取wifi ssid (unknow ssid)解決方案
阿新 • • 發佈:2018-12-06
一直都在做wifi相關的東西
今天遇到一個問題是8.0的機型無法獲取到ssid
然後就查詢了一番 終於找到解決方案
wifi名稱獲取程式碼
WifiManager my_wifiManager = ((WifiManager) getApplicationContext().getSystemService(WIFI_SERVICE)); assert my_wifiManager != null; wifiInfo = my_wifiManager.getConnectionInfo(); ssid = wifiInfo.getSSID();
兩個方法
一、就是用下面的程式碼可以獲取(不建議使用)
if (Build.VERSION.SDK_INT > Build.VERSION_CODES.O) { ConnectivityManager cm = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE); assert cm != null; NetworkInfo info = cm.getActiveNetworkInfo(); if (info != null && info.isConnected()) { ssid = info.getExtraInfo(); logger.info("WiFi SSID: " + ssid); } }
二、申請許可權 定位許可權就好了
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />