Как сделать проверку на подключение к интернету и вывести на экран ответ?

Как сделать проверку на подключение к интернету и вывести на экран ответ? Пробовал это, но оно не работает:

    {
        ConnectivityManager cm =
                (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
        NetworkInfo netInfo = cm.getActiveNetworkInfo();
        if (netInfo != null && netInfo.isConnectedOrConnecting())
        {
            Toast toast = Toast.makeText(getApplicationContext(),
                    "Работает", Toast.LENGTH_SHORT);
            toast.show();
            return true;
        }
        Toast toast = Toast.makeText(getApplicationContext(),
                "Не работает", Toast.LENGTH_SHORT);
        toast.show();
        return false;
    }```

Ответы (1 шт):

Автор решения: Илья
public static boolean hasConnection(final Context context)
{
    ConnectivityManager cm = (ConnectivityManager)context.getSystemService(Context.CONNECTIVITY_SERVICE);
    NetworkInfo wifiInfo = cm.getNetworkInfo(ConnectivityManager.TYPE_WIFI);
    if (wifiInfo != null && wifiInfo.isConnected())
    {
        return true;
    }
    wifiInfo = cm.getNetworkInfo(ConnectivityManager.TYPE_MOBILE);
    if (wifiInfo != null && wifiInfo.isConnected())
    {
        return true;
    }
    wifiInfo = cm.getActiveNetworkInfo();
    if (wifiInfo != null && wifiInfo.isConnected())
    {
        return true;
    }
    return false;
}

И в манифест добавьте

<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
→ Ссылка