Netzverbindung überwachen

S

spike78

Neues Mitglied
0
Hi zusammen,

ich würde gerne eine kleine App schreiben, die mir meine Netzwerkverbindungen protokolliert. D.h. Sobald ein Wechsel z.B. von UMTS nach HSDPA oder nach EDGE usw. geschieht, soll dies protokolliert werden.

Dazu habe ich im Netz schon das ein oder andere Beispiel oder Tutorial gefunden und ausprobiert.
Meine Methode sieht bisher so aus.

Das Problem ist nur das der BroadcastReceiver nur beim Start meiner App angesprochen wird, sobald ein Netzwechsel passiert, bleibt er ruhig.

Hier mal mein bisheriger Code:

Code:
  @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        mContext = this;
        mNetworkStateChangedFilter = new IntentFilter();
        mNetworkStateChangedFilter.addAction(ConnectivityManager.CONNECTIVITY_ACTION);
        
        mNetworkStateIntentReceiver = new BroadcastReceiver() {
            @Override
            public void onReceive(Context context, Intent intent) {
            if (intent.getAction().equals(ConnectivityManager.CONNECTIVITY_ACTION)) {
                NetworkInfo info = intent.getParcelableExtra(ConnectivityManager.EXTRA_NETWORK_INFO);
                mTypeName = info.getTypeName();
                mSubtypeName = info.getSubtypeName();
                mAvailable = info.isAvailable();                
                Log.i(LOGTAG, "Network Type: " + mTypeName 
                    + ", subtype: " + mSubtypeName
                    + ", available: " + mAvailable);
                updateScreen();
            }
            }
        };
        setContentView(R.layout.main);
      
        
    }
  @Override
    protected void onResume() {
        Log.d(LOGTAG, "onResume");
        super.onResume();
        if(mNetworkStateIntentReceiver!=null){
            registerReceiver(mNetworkStateIntentReceiver, mNetworkStateChangedFilter);
            unregisterReceiver(mNetworkStateIntentReceiver);
            registerReceiver(mNetworkStateIntentReceiver, mNetworkStateChangedFilter);
        }
    }


Was muss ich tun, das mein BroadcastReceiver bei jedem Wechsel aktiv wird ?

Danke für eure Hilfe und Grüße

Spike
 
Soll der Wechsel registriert werden auch wenn du die Activity geschlossen hast/bzw. das Gerät den Bildschirm aus hat?

Dann schau dir mal Services an ;)
 
Hi,

erstmal würde es mir genügen, das der Wechsel registriert wird wenn meine App aktiv ist. Also ohne Service, den wollte ich dann im Anschluß machen. Aber derzeit wird ein Netzwechsel nur beim Starten meiner App registriert...

Gruß

Spike
 

Ähnliche Themen

Muecke1982
Antworten
0
Aufrufe
285
Muecke1982
Muecke1982
G
Antworten
5
Aufrufe
1.001
Geist5000
G
K
Antworten
0
Aufrufe
543
KDer
K
Zurück
Oben Unten