2017-02-19 1 views
0

Ich entwickle eine app, wo ich einen Rundfunkempfänger müssen die für Wi-Fi verbunden und getrennt Zustände überwachen. Ich habe viele Codes ausprobiert, viele stackoverflow-Beiträge durchsucht, aber keinen Erfolg. Ich habe keine solche Methode/Code gefunden, die richtig funktioniert, einige Codes funktionieren überhaupt nicht, einige geben falsche Informationen zurück, einige machen den Broadcast-Empfänger zum Absturz/Neustart und vieles mehr. Gibt es also eine vollständige Proof-Methode, um für Wifi verbundenen/getrennten Staaten zu überwachen, die für alle Versionen von Android ab 4.0.3 Icecream Sandwitch funktioniert? Jede Hilfe wird geschätzt.Monitor für Wifi verbundenen und nicht verbundenen Staaten über Broadcast-Receiver

Antwort

0

Zuerst müssen Sie einen Rundfunkempfänger definieren, die für die Netzwechselereignis hören.

public class NetworkChangeReceiver extends BroadcastReceiver { 

    public static final String TYPE_NET_CONNECTIVITY_CHANGE = "android.net.conn.CONNECTIVITY_CHANGE"; 

    @Override 
    public void onReceive(final Context context, Intent intent) { 
     if (TYPE_NET_CONNECTIVITY_CHANGE.equals(intent.getAction())) { 
      boolean connected = NetworkStatus.isNetworkConnected(context); 
      if (connected) { 
       //Connected 

      } else { 
       //Disconnected 
      } 
     } 
    } 
} 

Jetzt Ihren Empfänger in einem offenkundigen registrieren wie: -

<application 
     ...> 
    <receiver android:name=". NetworkChangeReceiver" > 
     <intent-filter> 
      <action android:name="android.net.wifi.WifiManager.WIFI_STATE_CHANGED_ACTION" /> 
      <action android:name="android.intent.action.PHONE_STATE" /> 
     </intent-filter> 
    </receiver> 

</application> 
+0

haben Sie überprüft? Funktioniert es wirklich? Ich kann es nicht überprüfen, da ich heute nicht zu Hause bin. Können Sie das bitte bestätigen? auch, warum phonestate erlaubnis? In onReceive hören wir nicht auf android.net.wifi.WifiManager.WIFI_STATE_CHANGED_ACTION. Wie wird es dann auf Wifi-Verbindungen reagieren? –

+0

Ich bin das gleiche in meiner bestehenden Anwendung und es funktioniert. Ich nehme an, Sie haben Internet-Berechtigungen zur Verfügung gestellt, weil Sie ohne es kein Ereignis hören werden. – Avi

+0

Hallo AVI, eigentlich muss ich nur feststellen, dass WLAN verbunden oder getrennt ist, dann warum Internet und Telefon Erlaubnis? –

Verwandte Themen