Невозможно получить Wi-Fi SSID в телефоне Huawei - PullRequest
0 голосов
/ 15 апреля 2020

Я работаю над приложением android, в котором мне нужно получить информацию о подключенном WIFI, например SSID. код отлично работает на другом android телефоне, но не на Huawei, он дает мне <"unknown ssid">.

У меня уже есть разрешение на выполнение

fun getWifiInfo(context: Context): Connection? {
     if (ContextCompat.checkSelfPermission(context, Manifest.permission.ACCESS_FINE_LOCATION) == PackageManager.PERMISSION_GRANTED) {
         var ssid = ""
         var bssid = ""
         var isConnected = false
         val wifiManager = context.applicationContext.getSystemService(Context.WIFI_SERVICE) as WifiManager
         val wifiInfo = wifiManager.connectionInfo

    // Android version is Nougat OR Marshmallow
    if (android.os.Build.VERSION.SDK_INT <= android.os.Build.VERSION_CODES.N) {

        if (wifiInfo.supplicantState == SupplicantState.COMPLETED) {
            ssid = wifiInfo.ssid
        }
    } else {
        if (wifiInfo.supplicantState == SupplicantState.COMPLETED) {
            ssid = wifiInfo.ssid
            bssid= wifiInfo.bssid
            if (ssid.startsWith("\"") && ssid.endsWith("\"")) {
                ssid = wifiInfo.ssid.replace("SSID: ", "").replace("\"", "");
            }
            print("SSID: $ssid")
            isConnected = true
        }
    }
         return Connection(ssid,isConnected,bssid) // creating new object.
     } else {
         return null
     }
}
...