2016-08-27 184 views
0

我有一個代碼,它偵聽連接或斷開到一個熱點或WiFi,我有兩個日誌在BroadCastReceiver我的問題是當我連接到一個WiFi或從WiFi斷開它給了我很多日誌可以幫助我解釋爲什麼會發生這種情況。這裏是我的代碼WIFI連接BroadcastReceiver

廣播接收器

package com.example.amire.yadavar; 

import android.content.BroadcastReceiver; 
import android.content.Context; 
import android.content.Intent; 
import android.net.wifi.WifiManager; 
import android.util.Log; 

public class IsWifiConnectedBroadcastReceiver extends BroadcastReceiver { 


    @Override 
    public void onReceive(Context context, Intent intent) { 
     WifiManager wifiManager = (WifiManager) context.getSystemService(Context.WIFI_SERVICE); 

     if (wifiManager.isWifiEnabled()) Log.d("WIFI is Connected to", wifiManager.getConnectionInfo().getSSID()); 
     else if(!wifiManager.isWifiEnabled()) Log.d("WIFI not-Connected to",wifiManager.getConnectionInfo().getSSID()); 
    } 
} 

AndroidManifest

<receiver android:name=".IsWifiConnectedBroadcastReceiver" android:enabled="true"> 
      <intent-filter> 
       <action android:name="android.net.wifi.STATE_CHANGE" /> 
       <action android:name="android.net.conn.CONNECTIVITY_CHANGE" /> 
      </intent-filter> 
     </receiver> 

(日誌)從一個連接

08-27 20:37:07.550 4665-4665/com.example.amire.yadavar D/WIFI is Connected to: "HUAWEI Y330-U01" 
08-27 20:37:07.558 4665-4665/com.example.amire.yadavar D/WIFI is Connected to: "HUAWEI Y330-U01" 
08-27 20:37:07.561 4665-4665/com.example.amire.yadavar D/WIFI is Connected to: "HUAWEI Y330-U01" 
08-27 20:37:07.565 4665-4665/com.example.amire.yadavar D/WIFI is Connected to: "HUAWEI Y330-U01" 
08-27 20:37:07.569 4665-4665/com.example.amire.yadavar D/WIFI is Connected to: "HUAWEI Y330-U01" 
08-27 20:37:07.576 4665-4665/com.example.amire.yadavar D/WIFI is Connected to: "HUAWEI Y330-U01" 
08-27 20:37:07.925 4665-4665/com.example.amire.yadavar D/WIFI is Connected to: "HUAWEI Y330-U01" 
08-27 20:37:07.928 4665-4665/com.example.amire.yadavar D/WIFI is Connected to: "HUAWEI Y330-U01" 
08-27 20:37:07.941 4665-4665/com.example.amire.yadavar D/WIFI is Connected to: "HUAWEI Y330-U01" 
08-27 20:37:07.947 4665-4665/com.example.amire.yadavar D/WIFI is Connected to: "HUAWEI Y330-U01" 
08-27 20:37:07.956 4665-4665/com.example.amire.yadavar D/WIFI is Connected to: "HUAWEI Y330-U01" 
08-27 20:37:08.150 4665-4665/com.example.amire.yadavar D/WIFI is Connected to: "HUAWEI Y330-U01" 
08-27 20:37:08.158 4665-4665/com.example.amire.yadavar D/WIFI is Connected to: "HUAWEI Y330-U01" 

感謝您的意見。

回答

0

您正在通過不同的ACTION和不同的數據獲得不同的廣播Intent。你應該記錄所有的數據在Intent,包括所有的「額外」。這給了你很多細緻的信息。如果您不想要所有這些細粒度的信息,您可以決定在Intent上對您正在查找的特定數據作出反應,並忽略其餘部分。