try {
URL myURL = new URL("myURL that works fine on browser");
URLConnection myURLConnection = myURL.openConnection();
myURLConnection.connect();
} catch (MalformedURLException e) {
// new URL() failed
// ...
} catch (IOException e) {
// openConnection() failed
// ...
}
으로이 간단한 HIT이는 this의 중복입니다안드로이드 어떻게 URL을 누르십니까? 내가 원하는대로 밖으로 개방 브라우저
04-05 17:18:41.687: E/AndroidRuntime(11568): FATAL EXCEPTION: main
04-05 17:18:41.687: E/AndroidRuntime(11568): android.os.NetworkOnMainThreadException
04-05 17:18:41.687: E/AndroidRuntime(11568): at android.os.StrictMode$AndroidBlockGuardPolicy.onNetwork(StrictMode.java:1117)
04-05 17:18:41.687: E/AndroidRuntime(11568): at java.net.InetAddress.lookupHostByName(InetAddress.java:410)
04-05 17:18:41.687: E/AndroidRuntime(11568): at java.net.InetAddress.getAllByNameImpl(InetAddress.java:241)
04-05 17:18:41.687: E/AndroidRuntime(11568): at java.net.InetAddress.getAllByName(InetAddress.java:219)
04-05 17:18:41.687: E/AndroidRuntime(11568): at libcore.net.http.HttpConnection.<init>(HttpConnection.java:70)
04-05 17:18:41.687: E/AndroidRuntime(11568): at libcore.net.http.HttpConnection.<init>(HttpConnection.java:50)
04-05 17:18:41.687: E/AndroidRuntime(11568): at libcore.net.http.HttpConnection$Address.connect(HttpConnection.java:340)
04-05 17:18:41.687: E/AndroidRuntime(11568): at libcore.net.http.HttpConnectionPool.get(HttpConnectionPool.java:87)
04-05 17:18:41.687: E/AndroidRuntime(11568): at libcore.net.http.HttpConnection.connect(HttpConnection.java:128)
04-05 17:18:41.687: E/AndroidRuntime(11568): at libcore.net.http.HttpEngine.openSocketConnection(HttpEngine.java:315)
04-05 17:18:41.687: E/AndroidRuntime(11568): at libcore.net.http.HttpEngine.connect(HttpEngine.java:310)
04-05 17:18:41.687: E/AndroidRuntime(11568): at libcore.net.http.HttpEngine.sendSocketRequest(HttpEngine.java:289)
04-05 17:18:41.687: E/AndroidRuntime(11568): at libcore.net.http.HttpEngine.sendRequest(HttpEngine.java:239)
04-05 17:18:41.687: E/AndroidRuntime(11568): at libcore.net.http.HttpURLConnectionImpl.connect(HttpURLConnectionImpl.java:80)
04-05 17:18:41.687: E/AndroidRuntime(11568): at com.leeway.hdwallpaper.Test_My_Paging_Activity$1.onClick(Test_My_Paging_Activity.java:89)
04-05 17:18:41.687: E/AndroidRuntime(11568): at android.view.View.performClick(View.java:4171)
04-05 17:18:41.687: E/AndroidRuntime(11568): at android.view.View$PerformClick.run(View.java:17195)
04-05 17:18:41.687: E/AndroidRuntime(11568): at android.os.Handler.handleCallback(Handler.java:643)
04-05 17:18:41.687: E/AndroidRuntime(11568): at android.os.Handler.dispatchMessage(Handler.java:92)
04-05 17:18:41.687: E/AndroidRuntime(11568): at android.os.Looper.loop(Looper.java:137)
04-05 17:18:41.687: E/AndroidRuntime(11568): at android.app.ActivityThread.main(ActivityThread.java:4803)
04-05 17:18:41.687: E/AndroidRuntime(11568): at java.lang.reflect.Method.invokeNative(Native Method)
04-05 17:18:41.687: E/AndroidRuntime(11568): at java.lang.reflect.Method.invoke(Method.java:511)
04-05 17:18:41.687: E/AndroidRuntime(11568): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:789)
04-05 17:18:41.687: E/AndroidRuntime(11568): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:556)
04-05 17:18:41.687: E/AndroidRuntime(11568): at dalvik.system.NativeStart.main(Native Method)
같은 eroor 더 AsyncTask를하거나 AsyncTask
구문 분석 또는 비동기 작업을 사용하지 않음 – Android
'AsyncTask' 또는 일부 백그라운드 스레드를 사용해야합니다. 스택 트레이스를보고,'NetworkOnMainThreadException'을보고, 중복 된 질문과 그 대답을 읽음으로써 알 수 있습니다. 중복 질문은 왜'NetworkOnMainThreadException'을 얻는 지에 대한 이유와이를 다루는 방법을 다루기 때문에 중복됩니다. 실제로 질문과 답변을 읽음으로써이를 알 수 있습니다. – CommonsWare
AsyncTask를 사용하지 않는 이유는 무엇입니까? 트랜잭션 중간에서 연결이 잘못되면 UI 스레드가 멈추는 것을 방지하기위한 예방 조치입니다. –