Android網路類型判斷(2g、3g、wifi)

來源:互聯網
上載者:User

轉自:http://blog.csdn.net/xxxsz/article/details/8199031

判斷網路類型是wifi,還是3G,還是2G網路,對不同的網路進行不同的處理,現將判斷方法整理給大家,以供參考 說明:下面用到的資料移動2G,聯通2G,聯通3G,wifi我都已經測試過,暫時手上沒有電信的卡,所以沒有驗證,有電信手機的同事,可以驗證一下,驗證後將結果發送給大家。  ConnectivityManager connectMgr = (ConnectivityManager) this        .getSystemService(Context.CONNECTIVITY_SERVICE);  NetworkInfo info = connectMgr.getActiveNetworkInfo(); 一、判斷網路是否是wifi,在判斷之前一定要進行的非空判斷,如果沒有任何網路連接info ==nullinfo.getType() == ConnectivityManager.TYPE_WIFI 二、判斷是否是行動電話通訊info !=null && info.getType() ==  ConnectivityManager.TYPE_MOBILE 行動電話通訊進行詳細區分: info.getSubtype() 這裡使用 getSubtype(),不是 getType(),getType()返回的是0,或者1,是區分是行動電話通訊還是wifi info.getSubtype()取值列表如下:          * NETWORK_TYPE_CDMA 網路類型為CDMA         * NETWORK_TYPE_EDGE 網路類型為EDGE         * NETWORK_TYPE_EVDO_0 網路類型為EVDO0         * NETWORK_TYPE_EVDO_A 網路類型為EVDOA         * NETWORK_TYPE_GPRS 網路類型為GPRS         * NETWORK_TYPE_HSDPA 網路類型為HSDPA         * NETWORK_TYPE_HSPA 網路類型為HSPA         * NETWORK_TYPE_HSUPA 網路類型為HSUPA         * NETWORK_TYPE_UMTS 網路類型為UMTS 聯通的3G為UMTS或HSDPA,移動和聯通的2G為GPRS或EDGE,電信的2G為CDMA,電信的3G為EVDO
相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.