Как изменить мой устаревший код в Android Studio - PullRequest
0 голосов
/ 08 февраля 2019

У меня есть код, чтобы проверить, закодирован ли пользователь

val connected:Boolean
        val connectivityManager = getSystemService(Context.CONNECTIVITY_SERVICE) as ConnectivityManager
        connected = connectivityManager.getNetworkInfo(ConnectivityManager.TYPE_VPN).state == NetworkInfo.State.CONNECTED

if(connected){

}else{
}

, но каждый раз, когда я его строю, он сообщает, что он устарел.

, если есть другой способ проверить подключение пользователяизменить пожалуйста, поделитесь

ps: если вы знаете, но его в Java, вы также можете поделиться спасибо.

1 Ответ

0 голосов
/ 08 февраля 2019

Из документации Android:

Этот метод устарел на уровне API 23. Этот метод не поддерживает несколько подключенных сетей одного типа.Вместо этого используйте getAllNetworks() и getNetworkInfo(android.net.Network).

В вашем случае вы, вероятно, действительно хотите:

Network network = connectivityManager.getActiveNetwork();
NetworkCapabilities caps = connectivityManager.getNetworkCapabilities(
     connectivityManager.getActiveNetwork());
connected = caps.hasCapability(TRANSPORT_VPN) && network.isConnected();
...