0
在Android模擬器中請求位置更新後,我的應用停止工作。這隻發生在3.0以上的android版本上。 任何類似以下的代碼:Android:在Android模擬器中請求位置更新後,應用停止工作
lm.requestLocationUpdates(LocationManager.NETWORK_PROVIDER, 0, 0, locationListener);
該應用停止工作。這是模擬器中這些版本的常規行爲還是我做錯了什麼?
更多信息:如果我爲Android 2.3或更低版本啓動模擬器,正確捕獲異常。這在其他版本中沒有發生。
12-27 19:17:59.183: W/dalvikvm(640): threadid=1: thread exiting with uncaught exception (group=0x40a13300)
12-27 19:17:59.253: E/AndroidRuntime(640): FATAL EXCEPTION: main
12-27 19:17:59.253: E/AndroidRuntime(640): android.os.NetworkOnMainThreadException
12-27 19:17:59.253: E/AndroidRuntime(640): at android.os.StrictMode$AndroidBlockGuardPolicy.onNetwork(StrictMode.java:1117)
12-27 19:17:59.253: E/AndroidRuntime(640): at java.net.InetAddress.lookupHostByName(InetAddress.java:385)
12-27 19:17:59.253: E/AndroidRuntime(640): at java.net.InetAddress.getAllByNameImpl(InetAddress.java:236)
12-27 19:17:59.253: E/AndroidRuntime(640): at java.net.InetAddress.getAllByName(InetAddress.java:214)
12-27 19:17:59.253: E/AndroidRuntime(640): at org.apache.http.impl.conn.DefaultClientConnectionOperator.openConnection(DefaultClientConnectionOperator.java:137)
12-27 19:17:59.253: E/AndroidRuntime(640): at org.apache.http.impl.conn.AbstractPoolEntry.open(AbstractPoolEntry.java:164)
12-27 19:17:59.253: E/AndroidRuntime(640): at org.apache.http.impl.conn.AbstractPooledConnAdapter.open(AbstractPooledConnAdapter.java:119)
12-27 19:17:59.253: E/AndroidRuntime(640): at org.apache.http.impl.client.DefaultRequestDirector.execute(DefaultRequestDirector.java:360)
12-27 19:17:59.253: E/AndroidRuntime(640): at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:555)
12-27 19:17:59.253: E/AndroidRuntime(640): at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:487)
12-27 19:17:59.253: E/AndroidRuntime(640): at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:465)
12-27 19:17:59.253: E/AndroidRuntime(640): at com.rahul.places.AddNewLocation.getUrlArray(AddNewLocation.java:147)
12-27 19:17:59.253: E/AndroidRuntime(640): at com.rahul.places.AddNewLocation.access$6(AddNewLocation.java:139)
12-27 19:17:59.253: E/AndroidRuntime(640): at com.rahul.places.AddNewLocation$2.onClick(AddNewLocation.java:69)
12-27 19:17:59.253: E/AndroidRuntime(640): at android.view.View.performClick(View.java:4084)
12-27 19:17:59.253: E/AndroidRuntime(640): at android.view.View$PerformClick.run(View.java:16966)
12-27 19:17:59.253: E/AndroidRuntime(640): at android.os.Handler.handleCallback(Handler.java:615)
12-27 19:17:59.253: E/AndroidRuntime(640): at android.os.Handler.dispatchMessage(Handler.java:92)
12-27 19:17:59.253: E/AndroidRuntime(640): at android.os.Looper.loop(Looper.java:137)
12-27 19:17:59.253: E/AndroidRuntime(640): at android.app.ActivityThread.main(ActivityThread.java:4745)
12-27 19:17:59.253: E/AndroidRuntime(640): at java.lang.reflect.Method.invokeNative(Native Method)
12-27 19:17:59.253: E/AndroidRuntime(640): at java.lang.reflect.Method.invoke(Method.java:511)
12-27 19:17:59.253: E/AndroidRuntime(640): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:786)
12-27 19:17:59.253: E/AndroidRuntime(640): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:553)
12-27 19:17:59.253: E/AndroidRuntime(640): at dalvik.system.NativeStart.main(Native Method)
也發佈logcat。 –
請檢查日誌貓 – rahul
根據logcat,您在主線程上聯網,您必須在後臺線程上執行此操作。你在AddNewLocation.java的第147行調用哪些代碼? – Tomik