0

こんにちは、私は最近 geoCoder.getFromLocationName()、Android 2.2 (Froyo) で関数を実行すると、IOExeption を受け取ることに気付きました (他の SDK バージョンでは発生しません)。

いくつかの調査の後、次の権限を追加する提案を見つけました。

<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" /> <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />

ただし、これで問題が解決するわけではなく、これは Android SDK のバグのようです。この問題の既知の解決策はありますか?

編集: これはスタック トレースですが、内部のスタック トレースが null であるためあまり役に立ちません。

08-26 18:37:53.831: WARN/System.err(347): android.location.Geocoder.getFromLocationName(Geocoder.java:159) 08-26 18:37:53.831: WARN/System.err(347) : com.Finko.HomeScreen.onCreate(HomeScreen.java:32) 08-26 18:37:53.851: WARN/System.err(347): android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047) 08 -26 18:37:53.851: WARN/System.err(347): android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2627) 08-26 18:37:53.851: WARN/System.err(347): android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2679) 08-26 18:37:53.861: WARN/System.err(347): android.app.ActivityThread.access$2300(ActivityThread.java:125) 08 -26 18:37:53.861: WARN/System.err(347): android.app.ActivityThread$H.handleMessage(ActivityThread.java:2033) 08-26 18:37:53.871:WARN/System.err(347): Android.os.Handler.dispatchMessage(Handler.java:99) 08-26 18:37:53.882: WARN/System.err(347): Android.os.Looper.loop で(Looper.java:123) 08-26 18:37:53.882: 警告/System.err(347): android.app.ActivityThread.main(ActivityThread.java:4627) で 08-26 18:37:53.891: 警告/System.err(347): java.lang.reflect.Method.invokeNative(ネイティブ メソッド) 08-26 18:37:53.903: 警告/System.err(347): java.lang.reflect.Method.invoke で(Method.java:521) 08-26 18:37:53.903: WARN/System.err(347): com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868) 08-26 18 :37:53.911: WARN/System.err(347): com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626) 08-26 18:37:53.911: WARN/System.err(347) : dalvik.system.NativeStart.main(ネイティブ メソッド) でHandler.dispatchMessage(Handler.java:99) 08-26 18:37:53.882: WARN/System.err(347): android.os.Looper.loop(Looper.java:123) 08-26 18:37: 53.882: WARN/System.err(347): android.app.ActivityThread.main(ActivityThread.java:4627) 08-26 18:37:53.891: WARN/System.err(347): java.lang.reflect で.Method.invokeNative(ネイティブ メソッド) 08-26 18:37:53.903: WARN/System.err(347): java.lang.reflect.Method.invoke(Method.java:521) 08-26 18:37: 53.903: 警告/System.err(347): com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868) 08-26 18:37:53.911: 警告/System.err(347): com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626) 08-26 18:37:53.911: WARN/System.err(347): dalvik.system.NativeStart.main(ネイティブ メソッド) でHandler.dispatchMessage(Handler.java:99) 08-26 18:37:53.882: WARN/System.err(347): android.os.Looper.loop(Looper.java:123) 08-26 18:37: 53.882: WARN/System.err(347): android.app.ActivityThread.main(ActivityThread.java:4627) 08-26 18:37:53.891: WARN/System.err(347): java.lang.reflect で.Method.invokeNative(ネイティブ メソッド) 08-26 18:37:53.903: WARN/System.err(347): java.lang.reflect.Method.invoke(Method.java:521) 08-26 18:37: 53.903: 警告/System.err(347): com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868) 08-26 18:37:53.911: 警告/System.err(347): com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626) 08-26 18:37:53.911: WARN/System.err(347): dalvik.system.NativeStart.main(ネイティブ メソッド) でerr(347): android.os.Looper.loop(Looper.java:123) 08-26 18:37:53.882: WARN/System.err(347): android.app.ActivityThread.main(ActivityThread.java) :4627) 08-26 18:37:53.891: WARN/System.err(347): java.lang.reflect.Method.invokeNative(ネイティブ メソッド) 08-26 18:37:53.903: WARN/System.err( 347): java.lang.reflect.Method.invoke(Method.java:521) 08-26 18:37:53.903: 警告/System.err(347): com.android.internal.os.ZygoteInit$MethodAndArgsCaller で.run(ZygoteInit.java:868) 08-26 18:37:53.911: WARN/System.err(347): com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626) 08-26 18 :37:53.911: WARN/System.err(347): dalvik.system.NativeStart.main(ネイティブメソッド)err(347): android.os.Looper.loop(Looper.java:123) 08-26 18:37:53.882: WARN/System.err(347): android.app.ActivityThread.main(ActivityThread.java) :4627) 08-26 18:37:53.891: WARN/System.err(347): java.lang.reflect.Method.invokeNative(ネイティブ メソッド) 08-26 18:37:53.903: WARN/System.err( 347): java.lang.reflect.Method.invoke(Method.java:521) 08-26 18:37:53.903: 警告/System.err(347): com.android.internal.os.ZygoteInit$MethodAndArgsCaller で.run(ZygoteInit.java:868) 08-26 18:37:53.911: WARN/System.err(347): com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626) 08-26 18 :37:53.911: WARN/System.err(347): dalvik.system.NativeStart.main(ネイティブメソッド)java:4627) 08-26 18:37:53.891: WARN/System.err(347): java.lang.reflect.Method.invokeNative(ネイティブ メソッド) 08-26 18:37:53.903: WARN/System.err (347): java.lang.reflect.Method.invoke(Method.java:521) 08-26 18:37:53.903: WARN/System.err(347): com.android.internal.os.ZygoteInit$ でMethodAndArgsCaller.run(ZygoteInit.java:868) 08-26 18:37:53.911: WARN/System.err(347): com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626) 08-26 18:37:53.911: WARN/System.err(347): dalvik.system.NativeStart.main (ネイティブ メソッド) でjava:4627) 08-26 18:37:53.891: WARN/System.err(347): java.lang.reflect.Method.invokeNative(ネイティブ メソッド) 08-26 18:37:53.903: WARN/System.err (347): java.lang.reflect.Method.invoke(Method.java:521) 08-26 18:37:53.903: WARN/System.err(347): com.android.internal.os.ZygoteInit$ でMethodAndArgsCaller.run(ZygoteInit.java:868) 08-26 18:37:53.911: WARN/System.err(347): com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626) 08-26 18:37:53.911: WARN/System.err(347): dalvik.system.NativeStart.main (ネイティブ メソッド) でZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868) 08-26 18:37:53.911: 警告/System.err(347): com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626) 08 -26 18:37:53.911: WARN/System.err(347): dalvik.system.NativeStart.main (ネイティブ メソッド) でZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868) 08-26 18:37:53.911: 警告/System.err(347): com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626) 08 -26 18:37:53.911: WARN/System.err(347): dalvik.system.NativeStart.main (ネイティブ メソッド) で

4

2 に答える 2

3

さて、

これはエミュレーターに問題があるように思えます... getFromLocationName メソッドはデバイスで問題なく動作しているようです (少なくとも、どのユーザーからも動作していないという報告は受けていません)

これは、このバージョンの Android で開発およびデバッグを行う際の苦痛ですが、使用できるようです。

私は、デバッグ中に長々と緯度に固執するテキストボックスをいくつか追加し、最終ビルドの前に削除しました。

最良の答えではありませんが、感動的な人になるかもしれません。頑張ってください

于 2010-09-02T19:51:17.870 に答える
0

私は何年も前に anddev.org フォーラムでこれにフラグを立てました。何人かの人々が同じ問題を抱えていますが、私たちの誰も解決策を持っていません. それ以来、 http://code.google.com/p/android/issues/detail?id=8816にバグとしてリストされていることがわかりました。AVD レベル 8 を使用すると、IOException は「サービスが利用できません」です。 Androidコアがロードされているため。この時点で、アプリで使用されるサービスを登録しようとしているに違いないと思います。おそらくすべて Dalvik バイトコードが実行されているため、この時点でデバッガーをフックする方法はないと思います。

于 2010-09-05T12:35:29.443 に答える