1. Nimm jetzt an unserem Uhans - 3. ADVENT - Gewinnspiel teil - Alle Informationen findest Du hier!

Netzverbindung überwachen

Dieses Thema im Forum "Android App Entwicklung" wurde erstellt von spike78, 27.06.2012.

  1. spike78, 27.06.2012 #1
    spike78

    spike78 Threadstarter Junior Mitglied

    Beiträge:
    41
    Erhaltene Danke:
    0
    Registriert seit:
    09.10.2011
    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
     
  2. Unicate, 27.06.2012 #2
    Unicate

    Unicate Android-Experte

    Beiträge:
    473
    Erhaltene Danke:
    57
    Registriert seit:
    09.08.2010
    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 ;)
     
  3. Butch78, 27.06.2012 #3
    Butch78

    Butch78 Junior Mitglied

    Beiträge:
    28
    Erhaltene Danke:
    0
    Registriert seit:
    06.12.2011
    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
     

Diese Seite empfehlen