1. 程式人生 > >安卓 判斷網路

安卓 判斷網路

封裝好的  可以在後臺開啟一個service持續檢測處於什麼網路

public class NetUtil {
    //沒有網路
    private static final int NETWORK_NONE=1;
    //行動網路
    private static final int NETWORK_MOBILE=0;
    //無線網路
    private static final int NETWORW_WIFI=2;
    //獲取網路啟動
    public static int getNetWorkStart(Context context){
        ConnectivityManager connectivityManager = (ConnectivityManager) context
                //連線服務 CONNECTIVITY_SERVICE
                .getSystemService(Context.CONNECTIVITY_SERVICE);
        //網路資訊 NetworkInfo
        NetworkInfo activeNetworkInfo = connectivityManager.getActiveNetworkInfo();

        if (activeNetworkInfo!=null&&activeNetworkInfo.isConnected()){
            //判斷是否是wifi
            if (activeNetworkInfo.getType()==(ConnectivityManager.TYPE_WIFI)){
                //返回無線網路
                Toast.makeText(context, "當前處於無線網路", Toast.LENGTH_SHORT).show();
                return NETWORW_WIFI;
                //判斷是否行動網路
            }else if (activeNetworkInfo.getType()==(ConnectivityManager.TYPE_MOBILE)){
                Toast.makeText(context, "當前處於行動網路", Toast.LENGTH_SHORT).show();
                //返回行動網路
                return NETWORK_MOBILE;
            }
        }else {
            //沒有網路
            Toast.makeText(context, "當前沒有網路", Toast.LENGTH_SHORT).show();
            return NETWORK_NONE;
        }
        //預設返回  沒有網路
        return NETWORK_NONE;
    }
}

 使用:

 NetUtil.getNetWorkStart(getApplicationContext());

相關推薦

判斷網路

封裝好的  可以在後臺開啟一個service持續檢測處於什麼網路 public class NetUtil { //沒有網路 private static final int NETW

判斷當前應用是否啟動

private boolean getCurrentTask(Context context) { ActivityManager activityManager = (ActivityManager) context.getSystemService(Cont

判斷APP是在前臺還是在後臺

安卓中判斷APP是否在前臺: 方法一:CCApplication 中判斷 private boolean mIsInForeground = false; public boolean isInForeground() { return mIsInForeground; }

判斷當前是否在主執行緒

判斷當前是否在主執行緒:ThreadExecutor.isMainThread() 如果當前不是主執行緒,切換到主執行緒: ThreadExecutor.getInstance().executeOnUI(new Runnable() {       &nb

4g網路下訪問特別慢 APN為ipv4的時候可以訪問IPV6不可以訪問

經過對比發現,TCP3次握手的過程沒有問題,不是重發導致的!但是在3次握手前停滯了16s,這很奇怪!不經想問,3次握手前做了什麼!由於個人水平有限,猜測是不是域名解析的問題呢!和後臺交流一下!發現公司線上伺服器有2種解析方式,分別是ipv4和ipv6,最後只保留ipv4。 查資料看到原來android 預設

開發網路相關bug解決方案

兩個bug: 1: android.os.NetworkOnMainThreadException 原因:因為main執行緒要處理UI,預設不能使用網路導致假死 Android這個設計是為了防止網路請求時間過長而導致介面假死的情況發生。解決方案有兩個,一個是使用StrictMode,二是使用

移動開發----判斷是否安裝了某個APP

1.有的時候我們要呼叫第三方APP。就需要檢視使用者是否安裝了APP。 [java]  view plain  copy public boo

判斷系統相機授權狀態以及呼叫系統相機

1、在專案中有可能使用到系統的相機,以及根據授權狀態做相應的處理, 2、在一開始我的專案裡面沒有判斷相機的授權狀態,直接就呼叫了系統的相機功能,但是當我拒絕了授權使用相機之後,專案仍然可以呼叫相機並且可以正常使用(如果是自定義開啟相機的話,可能會崩掉),但是考

獲取網路視訊的縮圖

@TargetApi(Build.VERSION_CODES.ICE_CREAM_SANDWICH) private Bitmap createVideoThumbnail(String url, int width, int height) { B

AsyncHttpClient網路開源框架

Overview An asynchronous callback-based Http client for Android built on top of Apache’s HttpClient libraries. All requests are made outside of your ap

深入淺出熱門網路框架 OkHttp3 和 Retrofit 原理

OkHttp3 是目前安卓開發者使用率較高的基礎網路框架,Retrofit 則是在它的基礎上進行了更友好的封裝。熟悉它倆的原始碼和流程不僅可以方便我們在專案中定製,還可以提升我們的基礎架構能力,此外在面試中如果你可以對 OkHttp 的原始碼娓娓道來,同時能對 Retrofi

微信小程式之wx.request:fail錯誤,真機預覽請求無效問題解決,,ios網路預覽異常

問題描述:域名已經備案,我全部都有,也在後臺配置了,但是手機預覽,還是請求失敗, PC端是可以請求資料出來的 新版開發者工具增加了https檢查功能;可使用此功能直接檢查排查ssl協議版本問題:可能原因:0:後臺域名沒有配置0.1:域名不支援https1:沒有重啟工具;2:

關於通過網路介面解析Json資料的簡單實現

1 MainActivity.javapackage com.example.ms18.finalexam_2_20150861213;import android.os.Bundle;import android.os.Handler;import android.os.M

獲取資料的網路判斷

新增網路許可權 <uses-permission android:name="android.permission.INTERNET"/> <uses-permission android:name="android.permission.ACCESS_NETW

程序進入後臺和前臺的判斷

成對 add onresume nba reg 關註 lba change get 按照最簡單的思路,一個app的所有Activity全部onStop後就算進入後臺,但可能用戶只是切出去看了一眼別的程序又跳了回來。從技術上來說,這種判斷沒有問題,但從用戶活躍的角度來講,用戶

js判斷客戶端或者是ios客戶端

終端 use navigator 判斷 com oca topic fun and 代碼:   function xaizai() {   var u = navigator.userAgent, app = navigator.appVersion;   var isA

vue中根據手機類型判斷、微信或IOS跳轉相應下載頁面

nload tor js代碼 roi agen 按鈕 path his cati 按鈕:<div class="download" @click="downApp">立即下載</div> 遮罩層:<div class="dark" v-show

通過判斷瀏覽器的userAgent,用正則來判斷手機是否是ios(蘋果)和Android()客戶端

A- A+ 通過判斷瀏覽器的userAgent,用正則來判斷手機是否是 ios (蘋果)和 Android (安卓)客戶端。程式碼如下: <script type="text/java

開發中判斷APP在前端還是在後臺

1.在自己的APPlication中定義一個int 型別的變數 private int activityCount; 2.在APPlication建立一個內部類 實現 ActivityLifecycleCallbacks private class CCActivityLifecyc

js 判斷通過什麼開啟(、蘋果、微信、QQ、瀏覽器、某個app應用…)

/* 獲取當前環境: 系統環境: iOS Android PC 瀏覽器環境 微信內建瀏覽器、QQ內建瀏覽器、正常瀏覽器 是否app內開啟 */ var ua = navigator.userAgent.toLowerCase(); //獲取瀏覽器標識並轉換為小寫 va