0
我已在我的清單中註冊了broadcastreceiver。它註冊爲未接收到「wifi已連接」的廣播
<action android:name="android.net.conn.CONNECTIVITY_CHANGE" />
<action android:name="android.net.wifi.WIFI_STATE_CHANGED" />
我也註冊了以下權限:
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
它觸發,當我禁用/啓用WiFi,當我的無線網絡連接丟失信號(當我離開後斷開連接熱點)。但是當我回到我的熱點時(當wifi再次連接時)沒有廣播。我用三星Galaxy S5(Android 6.0.1)測試了它。有沒有我不知道的特點?
的代碼爲我的廣播接收器
public class StatusReceiver extends BroadcastReceiver {
@Override
public void onReceive(final Context context, Intent intent) {
if(intent.getAction() != null)
Log.d("action", intent.getAction());
}
}
<receiver android:name=".receivers.StatusReceiver">
<intent-filter>
<action android:name="android.net.conn.CONNECTIVITY_CHANGE" />
<action android:name="android.net.wifi.WIFI_STATE_CHANGED" />
</intent-filter>
</receiver>
有android.net.conn.CONNECTIVITY_CHANGE
當我離開網絡。 和android.net.wifi.WIFI_STATE_CHANGED
當我切換wifi按鈕。
但是當我回到熱點或當我的無線網絡連接啓用WiFi
你可以提供廣播接收器代碼 –
你如何檢查你是否在熱點 –
我要離開,直到wifi斷開連接和移動互聯網符號出現在狀態欄 –