0

そこで、XMLファイルを解析するためのパーサーとハンドラーを作成しました。Javaテストプロジェクトでは正常に機能しますが、Androidプロジェクトでは機能しません。これが不平を言うログです:

07-12 09:44:59.586:E / AndroidRuntime(1164):java.lang.RuntimeException:アクティビティを開始できませんComponentInfo {com.ec.ec/com.ec.ec.ListeOffresActivity}:android.os.NetworkOnMainThreadException 07- 12 09:44:59.586:E / AndroidRuntime(1164):android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2059)07-12 09:44:59.586:E / AndroidRuntime(1164):android.app ActivityThread.handleLaunchActivity(ActivityThread.java:2084)07-12 09:44:59.586:E / AndroidRuntime(1164):android.app.ActivityThread.access $ 600(ActivityThread.java:130)07-12 09:44:59.586 :E / AndroidRuntime(1164):android.app.ActivityThread $ H.handleMessage(ActivityThread.java:1195)07-12 09:44:59.586:E / AndroidRuntime(1164):android.os.Handler.dispatchMessage( Handler.java:99)07-12 09:44:59.586:E / AndroidRuntime(1164):android.os.Looperで。loop(Looper.java:137)07-12 09:44:59.586:E / AndroidRuntime(1164):android.app.ActivityThread.main(ActivityThread.java:4745)07-12 09:44:59.586:E / AndroidRuntime(1164):at java.lang.reflect.Method.invokeNative(Native Method)07-12 09:44:59.586:E / AndroidRuntime(1164):at java.lang.reflect.Method.invoke(Method.java: 511)07-12 09:44:59.586:E / AndroidRuntime(1164):com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:786)07-12 09:44:59.586:E / AndroidRuntime(1164):com.android.internal.os.ZygoteInit.main(ZygoteInit.java:553)07-12 09:44:59.586:E / AndroidRuntime(1164):dalvik.system.NativeStart.main(Nativeメソッド)07-12 09:44:59.586:E / AndroidRuntime(1164):原因:android.os.NetworkOnMainThreadException 07-12 09:44:59.586:E / AndroidRuntime(1164):android.osで。StrictMode $ AndroidBlockGuardPolicy.onNetwork(StrictMode.java:1117)07-12 09:44:59.586:E / AndroidRuntime(1164):at java.net.InetAddress.lookupHostByName(InetAddress.java:385)07-12 09:44: 59.586:E / AndroidRuntime(1164):at java.net.InetAddress.getAllByNameImpl(InetAddress.java:236)07-12 09:44:59.586:E / AndroidRuntime(1164):at java.net.InetAddress.getAllByName(InetAddress .java:214)07-12 09:44:59.586:E / AndroidRuntime(1164):libcore.net.http.HttpConnection。(HttpConnection.java:70)07-12 09:44:59.586:E / AndroidRuntime( 1164):libcore.net.http.HttpConnection。(HttpConnection.java:50)07-12 09:44:59.586:E / AndroidRuntime(1164):libcore.net.http.HttpConnection $ Address.connect(HttpConnection。 java:341)07-12 09:44:59.586:E / AndroidRuntime(1164):libcore.net.http.HttpConnectionPool.get(HttpConnectionPool.java:87)07-12 09:44:59.586:E / AndroidRuntime(1164):libcore.net.http.HttpConnection.connect(HttpConnection.java:128)07-12 09:44:59.586:E / AndroidRuntime(1164) :at libcore.net.http.HttpEngine.openSocketConnection(HttpEngine.java:315)07-12 09:44:59.586:E / AndroidRuntime(1164):at libcore.net.http.HttpEngine.connect(HttpEngine.java:310 )07-12 09:44:59.586:E / AndroidRuntime(1164):libcore.net.http.HttpEngine.sendSocketRequest(HttpEngine.java:289)07-12 09:44:59.586:E / AndroidRuntime(1164): libcore.net.http.HttpEngine.sendRequest(HttpEngine.java:239)07-12 09:44:59.586:E / AndroidRuntime(1164):libcore.net.http.HttpURLConnectionImpl.getResponse(HttpURLConnectionImpl.java:273) 07-12 09:44:59.586:E / AndroidRuntime(1164):libcore.net.http.HttpURLConnectionImpl.getInputStream(HttpURLConnectionImpl.java:168)07-12 09:44:59.586:E / AndroidRuntime(1164):at java.net.URL.openStream(URL.java:462)07-12 09:44:59.586:E / AndroidRuntime(1164):at com.ec.ec.ListeOffresActivity.onCreate(ListeOffresActivity.java:31)07-12 09:44:59.586:E / AndroidRuntime(1164):android.app.Activity.performCreate(Activity.java:5008)07-12 09:44:59.586:E / AndroidRuntime(1164):android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1079)07-12 09:44:59.586:E / AndroidRuntime(1164):android.app.ActivityThread .performLaunchActivity(ActivityThread.java:2023)07-12 09:44:59.586:E / AndroidRuntime(1164):... 11 moreE / AndroidRuntime(1164):android.app.Activity.performCreate(Activity.java:5008)07-12 09:44:59.586:E / AndroidRuntime(1164):android.app.Instrumentation.callActivityOnCreate(Instrumentation.java) :1079)07-12 09:44:59.586:E / AndroidRuntime(1164):android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2023)07-12 09:44:59.586:E / AndroidRuntime(1164): ...11もっとE / AndroidRuntime(1164):android.app.Activity.performCreate(Activity.java:5008)07-12 09:44:59.586:E / AndroidRuntime(1164):android.app.Instrumentation.callActivityOnCreate(Instrumentation.java) :1079)07-12 09:44:59.586:E / AndroidRuntime(1164):android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2023)07-12 09:44:59.586:E / AndroidRuntime(1164): ...11もっと

私のエミュレータはインターネットに接続されていないようですよね?私は何をすべきか ?

ご協力いただきありがとうございます

4

2 に答える 2

4

Network requestメインUIスレッドで実行しています。AsyncTaskを使用してネットワーク要求を実行します。

于 2012-07-12T09:55:04.907 に答える
1

ログはあまりきれいではありません。しかし、私は以下のエラーを見ることができます-

07-12 09:44:59.586:E / AndroidRuntime(1164):java.net.URL.openStream(URL.java:462)で

したがって、JavaコードからXMlにアクセスして解析できるため、URLはエミュレーターからアクセスできない可能性があります。

エミュレーターからブラウザーを起動して、URLまたはインターネットにさえアクセスできるかどうかを確認できますか?

-dattatray。

于 2012-07-12T10:02:31.190 に答える