7
發現服務會導致系統崩潰。我正在嘗試的發現類型是Nsd Manager Android 4.2.2崩潰
「_http._tcp。」
這是日誌。
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)
,我使用的發現開始的代碼是
NsdManager nsd = (NsdManager) getSystemService(Context.NSD_SERVICE); nsd.discoverServices("_http._tcp.", NsdManager.PROTOCOL_DNS_SD, discoveryListener);
當我跑,我的手機重新啓動每次。我猜這是Android 4.2.2上的一個錯誤
最好的事情是隻使用JmDns。它可以與幾乎所有Android設備回溯到API 7(可能更早)。 – djunod 2013-08-04 04:48:29
我喜歡jmdns,並在之前開發過它。 – 2014-02-26 06:12:53
JmDNS在Android 5上失敗。但NSD也行爲不當。 – 2014-12-18 03:40:46