/******************************************************************************* * Created by Orlando Aliaga * Copyright 2015 Prey Inc. All rights reserved. * License: GPLv3 * Full license at "/LICENSE" ******************************************************************************/ package com.prey.managers; import android.content.Context; import android.net.ConnectivityManager; public class PreyConnectivityManager { private ConnectivityManager connectivity = null; private static PreyConnectivityManager _instance = null; private PreyConnectivityManager(Context ctx) { connectivity = (ConnectivityManager) ctx.getSystemService(Context.CONNECTIVITY_SERVICE); } public static PreyConnectivityManager getInstance(Context ctx) { if (_instance == null) _instance = new PreyConnectivityManager(ctx); return _instance; } public boolean isConnected() { if (connectivity.getActiveNetworkInfo() != null) return connectivity.getActiveNetworkInfo().isConnected(); return false; } public boolean isAvailable() { if (connectivity.getActiveNetworkInfo() != null) return connectivity.getActiveNetworkInfo().isAvailable(); return false; } public boolean isConnectedOrConnecting() { if (connectivity.getActiveNetworkInfo() != null) return connectivity.getActiveNetworkInfo().isConnectedOrConnecting(); return false; } public boolean isFailover() { if (connectivity.getActiveNetworkInfo() != null) return connectivity.getActiveNetworkInfo().isFailover(); return false; } public boolean isRoaming() { if (connectivity.getActiveNetworkInfo() != null) return connectivity.getActiveNetworkInfo().isRoaming(); return false; } public boolean isMobileAvailable(){ try{ android.net.NetworkInfo mobile =connectivity.getNetworkInfo(ConnectivityManager.TYPE_MOBILE); return mobile.isAvailable(); }catch(Exception e){ return false; } } public boolean isMobileConnected(){ try{ android.net.NetworkInfo mobile =connectivity.getNetworkInfo(ConnectivityManager.TYPE_MOBILE); return mobile.isConnected(); }catch(Exception e){ return false; } } public boolean isWifiAvailable(){ android.net.NetworkInfo wifi =connectivity.getNetworkInfo(ConnectivityManager.TYPE_WIFI); return wifi.isAvailable(); } public boolean isWifiConnected(){ android.net.NetworkInfo wifi =connectivity.getNetworkInfo(ConnectivityManager.TYPE_WIFI); return wifi.isConnected(); } }