2016-02-04 2 views
1

Добрый день, я делаю приложение только для образовательных целей. Я уже включил карты Google на сайте разработчика консоли.Snackbar Pop Up If No Internet Connection

Мои вопросы есть, Как реализовать или, скорее, сделать заявление о состоянии, что если GPS не включен в телефоне/нет подключения к Интернету - обнаружит, что Snackbar появится? - с текстом «Некоторые функции будут включены/использованы при подключении к Интернету».

ответ

3

Чтобы проверить, если устройство подключено через мобильный телефон или Wi-Fi вы можете использовать этот код:

ConnectivityManager conMan = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE); 

//mobile 
State mobile = conMan.getNetworkInfo(ConnectivityManager.TYPE_MOBILE).getState(); 

//wifi 
State wifi = conMan.getNetworkInfo(ConnectivityManager.TYPE_WIFI).getState(); 

, а затем использовать его так:

if (mobile == NetworkInfo.State.CONNECTED || mobile == NetworkInfo.State.CONNECTING) { 
    //mobile 
} else if (wifi == NetworkInfo.State.CONNECTED || wifi == NetworkInfo.State.CONNECTING) { 
    //wifi 
} 

Кроме того, чтобы проверить состояние GPS:

public boolean isGPSEnabled (Context mContext){ 
    LocationManager locationManager = (LocationManager) 
       mContext.getSystemService(Context.LOCATION_SERVICE); 
    return locationManager.isProviderEnabled(LocationManager.GPS_PROVIDER); 
} 
+0

Я забыл спросить, знаете ли вы пример github для этого? – RoCk

+0

@RoCk какие функции вы хотите? – sayan

0

Для проверки подключения к сети вы можете сделать публичную функцию в любом файле и называть ее в othe r файлов.

Метод выглядеть, как показано ниже:

public static boolean isconnected() { 
    ConnectivityManager connMan=(ConnectivityManager) MyApplication.getInstance().getApplicationContext().getSystemServices(Context.CONNECTIVITY_SERVICE) ; 
    NetworkInfo = connMan.getActiveNetworkInfo(); 
    return active != null && active.isConnectedOrConnecting(); 

    } 

Здесь MyApplication это название активности заявленного в заявке тега в файле манифеста.