마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

안드로이드 로그인 회원가입 질문입니다ㅠㅠ

0 추천
12-29 15:03:34.243: W/dalvikvm(3436): threadid=1: thread exiting with uncaught exception (group=0x41a30ba8)
12-29 15:03:34.243: E/AndroidRuntime(3436): FATAL EXCEPTION: main
12-29 15:03:34.243: E/AndroidRuntime(3436): Process: com.example.seed, PID: 3436
12-29 15:03:34.243: E/AndroidRuntime(3436): android.os.NetworkOnMainThreadException
12-29 15:03:34.243: E/AndroidRuntime(3436):  at android.os.StrictMode$AndroidBlockGuardPolicy.onNetwork(StrictMode.java:1145)
12-29 15:03:34.243: E/AndroidRuntime(3436):  at libcore.io.BlockGuardOs.connect(BlockGuardOs.java:84)
12-29 15:03:34.243: E/AndroidRuntime(3436):  at libcore.io.IoBridge.connectErrno(IoBridge.java:127)
12-29 15:03:34.243: E/AndroidRuntime(3436):  at libcore.io.IoBridge.connect(IoBridge.java:112)
12-29 15:03:34.243: E/AndroidRuntime(3436):  at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:192)
12-29 15:03:34.243: E/AndroidRuntime(3436):  at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:459)
12-29 15:03:34.243: E/AndroidRuntime(3436):  at java.net.Socket.connect(Socket.java:843)
12-29 15:03:34.243: E/AndroidRuntime(3436):  at org.apache.http.conn.scheme.PlainSocketFactory.connectSocket(PlainSocketFactory.java:119)
12-29 15:03:34.243: E/AndroidRuntime(3436):  at org.apache.http.impl.conn.DefaultClientConnectionOperator.openConnection(DefaultClientConnectionOperator.java:144)
12-29 15:03:34.243: E/AndroidRuntime(3436):  at org.apache.http.impl.conn.AbstractPoolEntry.open(AbstractPoolEntry.java:164)
12-29 15:03:34.243: E/AndroidRuntime(3436):  at org.apache.http.impl.conn.AbstractPooledConnAdapter.open(AbstractPooledConnAdapter.java:119)
12-29 15:03:34.243: E/AndroidRuntime(3436):  at org.apache.http.impl.client.DefaultRequestDirector.execute(DefaultRequestDirector.java:360)
12-29 15:03:34.243: E/AndroidRuntime(3436):  at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:555)
12-29 15:03:34.243: E/AndroidRuntime(3436):  at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:487)
12-29 15:03:34.243: E/AndroidRuntime(3436):  at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:465)
12-29 15:03:34.243: E/AndroidRuntime(3436):  at com.example.seed.JSONParser.getJSONFromUrl(JSONParser.java:41)
12-29 15:03:34.243: E/AndroidRuntime(3436):  at com.example.seed.UserFunctions.registerUser(UserFunctions.java:62)
12-29 15:03:34.243: E/AndroidRuntime(3436):  at com.example.seed.RegisterActivity$1.onClick(RegisterActivity.java:53)
12-29 15:03:34.243: E/AndroidRuntime(3436):  at android.view.View.performClick(View.java:4443)
12-29 15:03:34.243: E/AndroidRuntime(3436):  at android.view.View$PerformClick.run(View.java:18443)
12-29 15:03:34.243: E/AndroidRuntime(3436):  at android.os.Handler.handleCallback(Handler.java:733)
12-29 15:03:34.243: E/AndroidRuntime(3436):  at android.os.Handler.dispatchMessage(Handler.java:95)
12-29 15:03:34.243: E/AndroidRuntime(3436):  at android.os.Looper.loop(Looper.java:136)
12-29 15:03:34.243: E/AndroidRuntime(3436):  at android.app.ActivityThread.main(ActivityThread.java:5017)
12-29 15:03:34.243: E/AndroidRuntime(3436):  at java.lang.reflect.Method.invokeNative(Native Method)
12-29 15:03:34.243: E/AndroidRuntime(3436):  at java.lang.reflect.Method.invoke(Method.java:515)
12-29 15:03:34.243: E/AndroidRuntime(3436):  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:779)
12-29 15:03:34.243: E/AndroidRuntime(3436):  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:595)
12-29 15:03:34.243: E/AndroidRuntime(3436):  at dalvik.system.NativeStart.main(Native Method)

 

안드로이드로 로그인 및 회원가입 DB 연동을해보려는데요.ㅠㅠ

자꾸 어플이 죽어요.ㅠ

이유를 알수있을까여 ㅠㅠㅠ조언부탁드립니다ㅠㅠ

hyun1111 (170 포인트) 님이 2014년 12월 30일 질문

1개의 답변

+2 추천
로그에 나오듯 NetworkOnMainThreadException 이 발생했습니다.

네트워크 통신은  서버에서 응답이 늦게 올 가능성이 있으며, 그경우 응답을 올때까지 UI처리가안되 같이 멈추는

문제가 발생할 수 밖에 없기 때문에 사용자들이 실수를 하지 않도록 UI Thread에서 통신을 하면

이  Exception이 발생하여 수정을 하도록 구글이 강제하고 있습니다..

통신하는 로직을 별도 Thread나 AsyncTask로 옮기세요
사악미소 (65,330 포인트) 님이 2014년 12월 30일 답변
사악미소님이 2014년 12월 30일 수정
...