zoukankan      html  css  js  c++  java
  • Android手机联网状态、GPS

    一、判断网络连接是否可用
    public
    static boolean isNetworkAvailable(Context context) { ConnectivityManager cm = (ConnectivityManager) context .getSystemService(Context.CONNECTIVITY_SERVICE); if (cm == null) { } else {        //如果仅仅是用来判断网络连接        //则可以使用 cm.getActiveNetworkInfo().isAvailable(); NetworkInfo[] info = cm.getAllNetworkInfo(); if (info != null) { for (int i = 0; i < info.length; i++) { if (info[i].getState() == NetworkInfo.State.CONNECTED) { return true; } } } } return false; }

    调用需要加入<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/> 这个权限

     二、判断GPS是否打开
    
      public static boolean isGpsEnabled(Context context) {   
            LocationManager lm = ((LocationManager) context   
                    .getSystemService(Context.LOCATION_SERVICE));   
            List<String> accessibleProviders = lm.getProviders(true);   
            return accessibleProviders != null && accessibleProviders.size() > 0;   
        } 
    需要加入的权限:
    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"></uses-permission>
    三、判断WIFI是否打开
     public static boolean isWifiEnabled(Context context) {   
            ConnectivityManager mgrConn = (ConnectivityManager) context   
                    .getSystemService(Context.CONNECTIVITY_SERVICE);   
            TelephonyManager mgrTel = (TelephonyManager) context   
                    .getSystemService(Context.TELEPHONY_SERVICE);   
            return ((mgrConn.getActiveNetworkInfo() != null && mgrConn   
                    .getActiveNetworkInfo().getState() == NetworkInfo.State.CONNECTED) || mgrTel   
                    .getNetworkType() == TelephonyManager.NETWORK_TYPE_UMTS);   
        } 
    四、判断是否是3G网络
        public static boolean is3rd(Context context) {   
            ConnectivityManager cm = (ConnectivityManager) context   
                    .getSystemService(Context.CONNECTIVITY_SERVICE);   
            NetworkInfo networkINfo = cm.getActiveNetworkInfo();   
            if (networkINfo != null   
                    && networkINfo.getType() == ConnectivityManager.TYPE_MOBILE) {   
                return true;   
            }   
            return false;   
        }  
    五、判断是wifi还是3g网络,用户的体现性在这里了,wifi就可以建议下载或者在线播放。
      public static boolean isWifi(Context context) {   
                ConnectivityManager cm = (ConnectivityManager) context   
                        .getSystemService(Context.CONNECTIVITY_SERVICE);   
                NetworkInfo networkINfo = cm.getActiveNetworkInfo();   
                if (networkINfo != null   
                        && networkINfo.getType() == ConnectivityManager.TYPE_WIFI) {   
                    return true;   
                }   
                return false;   
            }
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>  --->手机数据权限
    <uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>    --->wifi权限
  • 相关阅读:
    飞思卡尔硬件 调试总结
    芯片散热器
    (028)[技术资料]et99加密狗打开函数的一个小bug
    (027)[技术资料]业余制作Windows图标
    (026)[工具软件]剪切板管理:Ditto
    (025)[系统故障]XP下禁止将串口设备识别成鼠标(转)
    (024)[工具软件]截屏录屏软件FSCapture(转)
    (023) 关于51单片机的A5指令
    (022)[工具软件]图片浏览 JPEGView
    (021)VMWare副虚拟磁盘和子虚拟磁盘id不匹配
  • 原文地址:https://www.cnblogs.com/Colored-Mr/p/5174940.html
Copyright © 2011-2022 走看看