Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> Android開發 >> 初級開發 >> Android系列之如何判斷網絡鏈接狀態

Android系列之如何判斷網絡鏈接狀態

編輯:初級開發

言歸正傳下面咱們討論下android手機判斷網絡鏈接狀態的技術實現吧

目前android操作系統的手機大部分支持WIFI,GSM,3G網絡通信,但是每次鏈接到網絡時只能選擇一種鏈接方式,

比如運營商定制的,還必須要求特定的網絡環境(CMWAP,CTWAP等)如果要切換網絡還需要先關閉現有的網絡,

然後再啟動新的網絡,這個轉換過程還需要一定的時間,

可能程序這時還需要知道心的網絡是否鏈接成功後自動登錄到新的網絡服務器中,

那怎麼知道幾時鏈接成功呢?這個時間需要多久呢?

也許用一個線程去監聽網絡狀態是否鏈接成功;

我們可以用另外一種方法,PhoneStateListener

沒錯,你沒看錯,就是用PhoneStateListener。

很多應用PhoneStateListener都是監聽來電去電,PhoneStateListener還可以監聽網絡斷開、

正在連接和連接成功。

1 final TelephonyManager mTelephonyMgr = (TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE); 2 mTelephonyMgr.listen(new PhoneStateListener(){ 3 4 @Override 5 public void onDataConnectionStateChanged(int state) { 6 switch(state){ 7 case TelephonyManager.DATA_DISCONNECTED://網絡斷開 8 break; 9 case TelephonyManager.DATA_CONNECTING://網絡正在連接10 break;11 case TelephonyManager.DATA_CONNECTED://網絡連接上12 break;13 }14 }15 16 }

PhoneStateListener.LISTEN_DATA_CONNECTION_STATE);

我們只要重載onDataConnectionStateChanged方法,根據state判斷做相應的處理。

  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved