2013-03-17 16 views
7

La ricerca di servizi provoca un arresto anomalo del sistema. Il tipo di scoperta che sto cercando èNsd Manager Android Crashing su 4.2.2

"_http._tcp."

Ecco il registro.

 
D/NsdService(13310): Discover services 
E/AndroidRuntime(13310): *** FATAL EXCEPTION IN SYSTEM PROCESS: NsdService 
E/AndroidRuntime(13310): java.lang.NullPointerException 
E/AndroidRuntime(13310): at com.android.server.NsdService$ClientInfo.access$1200(NsdService.java:801) 
E/AndroidRuntime(13310): at com.android.server.NsdService$NsdStateMachine$EnabledState.requestLimitReached(NsdService.java:244) 
E/AndroidRuntime(13310): at com.android.server.NsdService$NsdStateMachine$EnabledState.processMessage(NsdService.java:292) 
E/AndroidRuntime(13310): at com.android.internal.util.StateMachine$SmHandler.processMsg(StateMachine.java:905) 
E/AndroidRuntime(13310): at com.android.internal.util.StateMachine$SmHandler.handleMessage(StateMachine.java:760) 
E/AndroidRuntime(13310): at android.os.Handler.dispatchMessage(Handler.java:99) 
E/AndroidRuntime(13310): at android.os.Looper.loop(Looper.java:137) 
E/AndroidRuntime(13310): at android.os.HandlerThread.run(HandlerThread.java:60) 

Il codice che uso per iniziare la scoperta è

 
NsdManager nsd = (NsdManager) getSystemService(Context.NSD_SERVICE); 
nsd.discoverServices("_http._tcp.", NsdManager.PROTOCOL_DNS_SD, discoveryListener); 

Quando eseguo, il mio telefono si riavvia ogni volta. Immagino che questo sia un bug su Android 4.2.2

risposta

6

L'ho preso sul mio Nexus 7. Sembra che sia già segnalato come un bug.

http://code.google.com/p/android/issues/detail?id=35585

+2

La cosa migliore da fare è quella di utilizzare solo JmDns. Funziona con quasi tutti i dispositivi Android che tornano all'API 7 (probabilmente anche prima). – djunod

+0

Mi è piaciuto jmdns e ci ho lavorato prima. –

+0

JmDNS non funziona su Android 5. Ma anche NSD si comporta male. –

Problemi correlati