2014-07-25 17 views
1

jmdns 라이브러리를 사용하여 mDNS 서비스를 발견하고 네트워크의 다른 장치가 광고를합니다. Android 4.2를 사용하고 있습니다. 내가 jmdns 공식 웹 사이트에서 데모 애플리케이션을 다운로드하고 AndroidDnssdDiscoveryEclipse 응용 프로그램에서 추락지고 .. 여기 jmdns.jar와의 통신

jmdns = JmDNS.create(); 

로그입니다 .. 여기에

07-25 18:15:57.343: W/dalvikvm(26977): threadid=1: thread exiting with uncaught exception (group=0x41526930) 
07-25 18:16:11.703: D/dalvikvm(26977): Debugger has detached; object registry had 480 entries 
07-25 18:16:11.703: I/dalvikvm(26977): ignoring registerObject request in thread=1 
07-25 18:16:11.703: I/dalvikvm(26977): ignoring registerObject request in thread=1 
07-25 18:16:11.726: E/AndroidRuntime(26977): FATAL EXCEPTION: main 
07-25 18:16:11.726: E/AndroidRuntime(26977): java.lang.NoClassDefFoundError: javax.jmdns.JmDNS 
07-25 18:16:11.726: E/AndroidRuntime(26977): at com.heeere.android.dnssdtuto.DnssdDiscovery.setUp(DnssdDiscovery.java:44) 
07-25 18:16:11.726: E/AndroidRuntime(26977): at com.heeere.android.dnssdtuto.DnssdDiscovery.access$0(DnssdDiscovery.java:38) 
07-25 18:16:11.726: E/AndroidRuntime(26977): at com.heeere.android.dnssdtuto.DnssdDiscovery$1.run(DnssdDiscovery.java:27) 
07-25 18:16:11.726: E/AndroidRuntime(26977): at android.os.Handler.handleCallback(Handler.java:725) 
07-25 18:16:11.726: E/AndroidRuntime(26977): at android.os.Handler.dispatchMessage(Handler.java:92) 
07-25 18:16:11.726: E/AndroidRuntime(26977): at android.os.Looper.loop(Looper.java:137) 
07-25 18:16:11.726: E/AndroidRuntime(26977): at android.app.ActivityThread.main(ActivityThread.java:5061) 
07-25 18:16:11.726: E/AndroidRuntime(26977): at java.lang.reflect.Method.invokeNative(Native Method) 
07-25 18:16:11.726: E/AndroidRuntime(26977): at java.lang.reflect.Method.invoke(Method.java:511) 
07-25 18:16:11.726: E/AndroidRuntime(26977): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:833) 
07-25 18:16:11.726: E/AndroidRuntime(26977): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:600) 
07-25 18:16:11.726: E/AndroidRuntime(26977): at dalvik.system.NativeStart.main(Native Method) 
07-25 18:16:11.796: D/dalvikvm(26977): GC_CONCURRENT freed 237K, 13% free 2560K/2932K, paused 5ms+9ms, total 80ms 
07-25 18:21:11.921: I/Process(26977): Sending signal. PID: 26977 SIG: 9 

(jmdns.jar not working on android 4.0 or later), 그것은 jmdns.jar 있음을 언급 Android 4.0 이상에서는 작동하지 않지만 내 장치에서 ZeroConf Browser (jmdns 사용)를 사용하여 완벽하게 작동합니다.

디버깅 응용 프로그램을 실행하는 동안 내 응용 프로그램에서 jmdns.jar 파일을 찾을 수 없습니다. 나는 jmdns.jar 파일을 받아들이지 않았다. 나는 원래 jmdns.jar 파일 (1kb)을 응용 프로그램 디렉토리에서 제거했고, 대신 jmdns.jar 파일 (200kb)을 다운로드와 함께 넣었다.

답변

0

나는 동일한 문제가있었습니다. SourceForge.net에서 jmsdn-3.4.1.jar을 다운로드하면 Dalvik VM (안드로이드) 용으로 컴파일되지 않았습니다.

나는 SourceForge.net에서 소스 파일을 dowloading하고 jmdns.jar을 다시 빌드하여 Android projets와 함께 사용합니다.