<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    隨筆雜記

       :: 首頁 :: 新隨筆 ::  ::  :: 管理 ::

    public class NetworkConnectChangedReceiver extends BroadcastReceiver{  
        @Override  
        public void onReceive(Context context, Intent intent) {  
        if (WifiManager.WIFI_STATE_CHANGED_ACTION.equals(intent.getAction())) {//這個監聽wifi的打開與關閉,與wifi的連接無關  
                int wifiState = intent.getIntExtra(WifiManager.EXTRA_WIFI_STATE, 0);   
                LogTag.showTAG_e("WIFI狀態", "wifiState"+wifiState);  
                switch (wifiState) {   
                case WifiManager.WIFI_STATE_DISABLED:   
                    break;   
                case WifiManager.WIFI_STATE_DISABLING:   
                    break;   
               //  
                }   
            }  
        // 這個監聽wifi的連接狀態即是否連上了一個有效無線路由,當上邊廣播的狀態是WifiManager.WIFI_STATE_DISABLING,和WIFI_STATE_DISABLED的時候,根本不會接到這個廣播。  
        
    // 在上邊廣播接到廣播是WifiManager.WIFI_STATE_ENABLED狀態的同時也會接到這個廣播,當然剛打開wifi肯定還沒有連接到有效的無線  
        if (WifiManager.NETWORK_STATE_CHANGED_ACTION.equals(intent.getAction())) {  
                Parcelable parcelableExtra = intent.getParcelableExtra(WifiManager.EXTRA_NETWORK_INFO);    
                if (null != parcelableExtra) {    
                    NetworkInfo networkInfo = (NetworkInfo) parcelableExtra;    
                    State state = networkInfo.getState();  
                    boolean isConnected = state==State.CONNECTED;//當然,這邊可以更精確的確定狀態  
                    LogTag.showTAG_e(this.getClass().getSimpleName(), "isConnected"+isConnected);  
                    if(isConnected){  
                    }else{  
                          
                    }  
                }    
            }  
        //這個監聽網絡連接的設置,包括wifi和移動數據的打開和關閉。.   
            
    //最好用的還是這個監聽。wifi如果打開,關閉,以及連接上可用的連接都會接到監聽。見log  
            
    // 這個廣播的最大弊端是比上邊兩個廣播的反應要慢,如果只是要監聽wifi,我覺得還是用上邊兩個配合比較合適  
        if(ConnectivityManager.CONNECTIVITY_ACTION.equals(intent.getAction())){  
            NetworkInfo info = intent.getParcelableExtra(ConnectivityManager.EXTRA_NETWORK_INFO);  
            if (info != null) {  
                LogTag.showTAG_e("CONNECTIVITY_ACTION", "info.getTypeName()"+info.getTypeName());  
                LogTag.showTAG_e("CONNECTIVITY_ACTION", "getSubtypeName()"+info.getSubtypeName());  
                LogTag.showTAG_e("CONNECTIVITY_ACTION", "getState()"+info.getState());  
                LogTag.showTAG_e("CONNECTIVITY_ACTION",  
                                    "getDetailedState()"+info.getDetailedState().name());  
                LogTag.showTAG_e("CONNECTIVITY_ACTION", "getDetailedState()"+info.getExtraInfo());  
                LogTag.showTAG_e("CONNECTIVITY_ACTION", "getType()"+info.getType());  
            }   
        }  

    if (WifiManager.NETWORK_STATE_CHANGED_ACTION.equals(intent.getAction())) {// 這個監聽wifi的連接狀態  
               Parcelable parcelableExtra = intent.getParcelableExtra(WifiManager.EXTRA_NETWORK_INFO);    
               if (null != parcelableExtra) {    
                   NetworkInfo networkInfo = (NetworkInfo) parcelableExtra;    
                   State state = networkInfo.getState();  
                   if(state==State.CONNECTED){  
                    showWifiCconnected(context);  
                   }  
                   /**else if(state==State.DISCONNECTED){ 
                    showWifiDisconnected(context); 
                   }
    *///昨天寫的這個方法,在坐地鐵的時候發現,如果地鐵上有無效的wifi站點,手機會自動連接,但是連接失敗后還是會接到廣播,所以不能用了  
               }    
           }  
    if(ConnectivityManager.CONNECTIVITY_ACTION.equals(intent.getAction())){//這個監聽網絡連接的設置,包括wifi和移動數據 的打開和關閉  
    NetworkInfo info = intent.getParcelableExtra(ConnectivityManager.EXTRA_NETWORK_INFO);  
    if (info != null) {  
        if(NetworkInfo.State.CONNECTED==info.getState()){  
            Intent pushIntent = new Intent();  
            pushIntent.setClass(context, NotificationService.class);  
        }else if(info.getType()==1){  
                if(NetworkInfo.State.DISCONNECTING==info.getState())  
                    showWifiDisconnected(context);  
            }  
        }   
    }  
           }  
    posted on 2012-09-17 11:56 天宇恒星 閱讀(21895) 評論(0)  編輯  收藏

    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    主站蜘蛛池模板: 嫩草影院免费观看| 永久免费av无码不卡在线观看| 精品国产日韩亚洲一区91| 亚洲av永久无码精品秋霞电影秋| 无遮挡a级毛片免费看| 日韩a毛片免费观看| 亚洲国产成人VA在线观看| 亚洲AV第一页国产精品| 亚洲自国产拍揄拍| 色www免费视频| 性xxxxx免费视频播放 | 国产无遮挡色视频免费观看性色| 99久久99久久精品免费观看| 最近免费中文字幕大全视频 | 国产免费一区二区三区VR| 亚洲成在人线av| 亚洲色大成网站www永久男同| 高清免费久久午夜精品 | 国产又粗又猛又爽又黄的免费视频 | 鲁啊鲁在线视频免费播放| 亚洲视频在线免费| 亚洲日韩精品无码专区| 99re免费在线视频| 国产成人精品日本亚洲专一区| 黄网址在线永久免费观看 | 亚洲国产a级视频| 久久国产精品萌白酱免费| 亚洲男女内射在线播放| 亚洲国产精品网站在线播放 | 野花香在线视频免费观看大全 | 亚洲国产美女精品久久久久∴| 亚洲精品蜜夜内射| 亚洲性在线看高清h片| 精品国产污污免费网站| 亚洲一区二区三区不卡在线播放| 成人妇女免费播放久久久| 亚洲福利视频一区二区| 四虎影视成人永久免费观看视频 | 亚洲丶国产丶欧美一区二区三区| 亚洲国产午夜福利在线播放| 中文字幕免费在线|