Jetzt kostenlos registrieren. Mitglieder surfen ohne Werbung auf Android-Hilfe.de!
Zurück   Android-Hilfe.de > Android Developer > Android App Entwicklung

Thread bleibt bei WLAN-Aktivierung hängen

Das Thema "Thread bleibt bei WLAN-Aktivierung hängen" befindet sich unter Android App Entwicklung auf Android-Hilfe.de.


Antwort

 

Themen-Optionen Ansicht
Alt 10.10.2011, 12:07   #1 (permalink)
Neuer Benutzer

Registriert seit: 26.04.2011
Beiträge: 14
Abgegebene Danke: 0
Erhielt 2 Danke für 2 Beiträge
Standard Thread bleibt bei WLAN-Aktivierung hängen

Moin,

ich habe eine App, welche periodisch Daten aus dem Netzwerk lädt. Dies geschieht über einen Thread der sich mittels mHandler.postDelayed immer wieder selber aufruft.

Am Anfang des Threads wird mit wifi.isWifiEnabled() geprüft ob das Wlan aktiv ist, ist dies nicht der Fall wird es mittels wifi.setWifiEnabled(true) aktiviert.

Dies funktioniert auch, wenn das Wlan aus ist und ich die App starte.

Schalte ich allerdings im laufenden Betrieb das Wlan aus, dann bleibt die App oder der Thread hängen (stürzt nicht ab, macht einfach nichts).

Logcat sagt dann:
Zitat:
WifiStateTracker( 844): Disabling interface
Tethering( 844): attempting to remove unknown iface (wlan0), ignoring
SocketListener( 771): sendMsg::600::Iface removed wlan0
ActivityManager( 844): Starting: Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10200000 cmp=de.project.Zeiterfassung/.ZeiterfassungActivity bnds=[402,59][476,138] } from pid 940
dalvikvm( 1397): GC_EXPLICIT freed 5K, 69% free 492K/1539K, external 683K/1017K, paused 7ms
dalvikvm( 1413): GC_EXPLICIT freed 8K, 68% free 549K/1667K, external 683K/1017K, paused 7ms
dalvikvm( 1244): GC_EXPLICIT freed 11K, 45% free 1245K/2243K, external 683K/1017K, paused 15ms
dalvikvm( 1062): GC_EXPLICIT freed 44K, 67% free 763K/2307K, external 683K/1017K, paused 12ms
dalvikvm( 1380): GC_EXPLICIT freed 11K, 38% free 1687K/2691K, external 683K/1017K, paused 22ms
dalvikvm( 1147): GC_EXPLICIT freed 13K, 68% free 691K/2115K, external 683K/1017K, paused 10ms
dalvikvm( 1083): GC_EXPLICIT freed 35K, 71% free 745K/2563K, external 683K/1017K, paused 15ms
dalvikvm( 1014): GC_EXPLICIT freed 188K, 83% free 766K/4419K, external 683K/1017K, paused 16ms
dalvikvm( 1199): GC_EXPLICIT freed 155K, 48% free 2343K/4483K, external 683K/1017K, paused 44ms
dalvikvm( 997): GC_EXPLICIT freed 109K, 50% free 940K/1859K, external 1078K/1558K, paused 14ms
dalvikvm( 940): GC_EXPLICIT freed 31K, 56% free 1043K/2371K, external 2357K/2938K, paused 17ms
dalvikvm( 940): GC_EXPLICIT freed 1K, 57% free 1043K/2371K, external 2353K/2938K, paused 17ms
dalvikvm( 844): GC_CONCURRENT freed 1274K, 39% free 3506K/5699K, external 2526K/3155K, paused 5ms+8ms
Woran könnte das liegen?

Code:
            wifi = (WifiManager) getSystemService(Context.WIFI_SERVICE);
            cm = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
            networkInfo = cm.getActiveNetworkInfo();
            //Integer i = 0;

            if (wifi.isWifiEnabled() == true) {
                System.out.println("Wifi enabled");
                System.out.println(wifi.getWifiState());
} else {
                wifi.setWifiEnabled(true);
                System.out.println("enabling Wifi, state "
                        + wifi.getWifiState());
                while (wifi.getWifiState() != 3) {
                    try {
                        System.out.println("enabling Wifi, state "
                                + wifi.getWifiState());
                        Thread.sleep(1000);
                    } catch (InterruptedException e) {
                        // TODO Auto-generated catch block
                        e.printStackTrace();
                    }
                }
Nebukad ist offline   Mit Zitat antworten
Alt 10.10.2011, 13:14   #2 (permalink)
Fortgeschrittenes Mitglied

Modell: HTC Sensation

Registriert seit: 31.08.2011
Beiträge: 390
Abgegebene Danke: 25
Erhielt 59 Danke für 57 Beiträge
Standard AW: Thread bleibt bei WLAN-Aktivierung hängen

ich vermute, du hast ne endlos-schleife, weil der wifi.getWifiState() nicht aktualisiert wird.

schau mal hier, das könnte dir weiterhelfen: ANDROID: if WiFi is enabled AND active, launch an intent - Stack Overflow

evtl. reicht dir schon "Please make sure that you've registered the android.net.conn.CONNECTIVITY_CHANGE intent in your Manifest, or else, you'll never receive a notification that you're online."
Tom299 ist offline   Mit Zitat antworten
Alt 10.10.2011, 14:01   #3 (permalink)
Neuer Benutzer

Registriert seit: 26.04.2011
Beiträge: 14
Abgegebene Danke: 0
Erhielt 2 Danke für 2 Beiträge
Standard AW: Thread bleibt bei WLAN-Aktivierung hängen

Die while Schleife war es leider nicht.

Also ggf. liegt es auch einfach an meiner Testweise. Ich gehe mit dem Homebutton aus der App und schalte das Wifi aus und gehe dann wieder rein.

Jetzt hab ich mal spaßeshalber einen Button eigebaut der das Wlan ausschaltet. Danach funktioniert es dann komischerweise mit dem automatischen wiederaktivieren.

Jetzt muss ich nur rauskriegen, ob das auch sonst funktioniert, wenn das Wlan mal weg ist.

Edit:

Es lag an der eigenen Blödheit

Bei onPause() hab ich die Threadschleife gestoppt und dann natürlich verpennt bei onResume() wieder zu starten. Dadurch ist dann natürlich nichts mehr passiert, nachdem ich das Wlan außerhalb der App ausgeschaltet hatte.

Geändert von Nebukad (10.10.2011 um 14:07 Uhr)
Nebukad ist offline   Mit Zitat antworten
Antwort

Stichworte
-

Themen-Optionen
Ansicht


Ähnliche Themen

Thema Autor Forum Antworten Letzter Beitrag
titanium backup bleibt bei 0% wiederherstellen hängen Ro Hoe Titanium Backup 8 22.01.2012 09:32
Defy+ bleibt bei Motorola Logo hängen LastPigStanding Root / Hacking / Modding für Motorola Defy+ 4 08.10.2011 23:09
Milestone bleibt bei Boot hängen! Nickel-Bag Root / Hacking / Modding für Motorola Milestone 2 20.02.2011 20:50
Kein Fastboot - Bleibt bei Recovery 0.4.4 hängen ambient Root / Hacking / Modding für Samsung Galaxy 5 04.03.2010 23:00




Du liest gerade: "Thread bleibt bei WLAN-Aktivierung hängen" unter "Android App Entwicklung" auf Android-Hilfe.de.


Powered by vBulletin®
Copyright ©2000 - 2012, vBulletin Solutions, Inc.
Search Engine Friendly URLs by vBSEO
© Android-Hilfe.de 2012 - All rights reserved.