2011-12-04 19 views
0

ユーザーがサーバーからデータを取得できるアプリケーションを設計しています2つの異なるアクティビティを使用してこれを提供すると、最初のものはテキスト入力としてユーザー名を受け取り、2番目のユーザーはユーザー名に基づいてユーザーのデータを表示します。私はJSONスキーマを使用してデータの格納と取り出しを行っています。アプリは最初は正常に動作しますが、finish()を使用して2番目の画面からログアウトし、最初の画面に新しいユーザー名を再入力しようとすると「アプリの強制終了」と表示されます。これは私に不眠の夜を与えています、あなたのサポートに圧倒されたいです。アプリケーションが2番目のアクティビティから最初のアクティビティに戻ったときにアプリケーションが終了すると、最初のアクティビティは機能しなくなりました。もう一度再起動する必要があります

12月4日16:28:35.289:D/dalvikvm(553):GC_FOR_ALLOCは、4%の遊離6893K/7171K、64Kを解放64msの 12から04 16一時停止:28:35.299:I/dalvikvmヒープを(553):1000016バイトの割り当てで7.757MBにヒープを成長させる 12-04 16:28:35.399:D/dalvikvm(553):GC_CONCURRENTを1K、フリーを5%、フリーを7868K/8199K、一時停止を16ms + 3ms 12/04 16:28:35.529:D/dalvikvm(553):GC_FOR_ALLOCを解放しました< 1K、5%フリー7869K/8199K、一時停止31ms 12-04 16:28:35.539:I/dalvikvm-heap(553): 443572バイトの割り当てで8.180MBにヒープを拡大する 12-04 16:28:35.589:D/dalvikvm(553):GC_CONCURRENTは0K、フリー8%フリー、4%フリー8302K/8647K、一時停止3ms + 5ms 12-04 16:28:35.8 89:D/gralloc_goldfish(553):GPUエミュレーションのないエミュレータが検出されました。 12/04 16:29:16.819:D/dalvikvm(553):GC_FOR_ALLOCを解放して1079K、無料で7509K/8711K、停止時間を221秒に設定 12-04 16:29:16.829:I/dalvikvm-heap(553):Grow 1000016バイトの割り当てで8.360MBまでのヒープ(ヒープ) - 12-04 16:29:16.889:D/dalvikvm(553):GC_CONCURRENT 2K、3%フリー8483K/8711K、一時停止4ms + 4ms 12-04 16 :29:17.229:D/dalvikvm(553):GC_CONCURRENTは1016Kを解放し、13%を無料で7979K/9159K、一時停止した3ms + 11msを返します。 12-04 16:29:18.149:E/log_tag(553):データorg.jsonの解析中にエラーが発生しました。 .JSONException:アラートの値がありません。 12-04 16:29:20.949:D/dalvikvm(553):GC_CONCURRENTは274K、1290は空き8090K/9159K、一時停止は6ms + 5ms 12-04 16:29:26.259:E/log_tag(553):データの解析中にエラーが発生しましたorg.json.JSONException:アラートの値がありません 12-04 16:29:26.859:D/AndroidRuntime(553):Shutt (/グループ番号= 0x409951f8) 12-04 16:29:26.929:E/AndroidRuntime(553):threadid = 1:キャッチされない例外(グループ= 0x409951f8)でスレッドが終了する 12-04 16:29:26.859: :致命的な例外:メイン 12-04 16:29:26.929:E/AndroidRuntime(553):java.lang.RuntimeException:アクティビティを開始できませんComponentInfo {com.bombil.kustomizer/com.bombil.kustomizer.Menus}:java .lang.IndexOutOfBoundsException:無効なインデックス2、サイズが2 12-04 16:29:26.929:E/AndroidRuntime(553):android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1955) 12-04 16: 29:26.929:E/AndroidRuntime(553):android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1980) 12-04 16:29:26.929:E/AndroidRuntime(553):android.app.ActivityThread。アクセス$ 600(ActivityThread.java:122) 12-04 16:29:26.9 29:E/AndroidRuntime(553):android.app.ActivityThread $ H.handleMessage(ActivityThread.java:1146) 12-04 16:29:26.929:E/AndroidRuntime(553):android.os.Handler。ディスパッチメッセージ(Handler.java:99) 12-04 16:29:26.929:E/AndroidRuntime(553):android.os.Looper.loop(Looper.java:137) 12-04 16:29:26.929: E/AndroidRuntime(553):android.app.ActivityThread.main(ActivityThread.java:4340) 12-04 16:29:26.929:E/AndroidRuntime(553):java.lang.reflect.Method.invokeNativeでネイティブメソッド) 12-04 16:29:26.929:E/AndroidRuntime(553):java.lang.reflect.Method.invoke(Method.java:511) 12-04 16:29:26.929:E/AndroidRuntime (553):com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:784) 12-04 16:29:26.929:E/AndroidRuntime(553):com.android.internal.os .ZygoteInit.main(ZygoteInit.java:551) 12-04 16:29:26.929:E/AndroidRuntime(553):at dalvik.system.NativeStart。主な(ネイティブメソッド) 12-04 16:29:26.929:E/AndroidRuntime(553):原因:java.lang.IndexOutOfBoundsException:無効なインデックス2、サイズが2 12月16:29:26.929: AndroidRuntime(553):java.util.ArrowList.throwIndexOutOfBoundsException(ArrayList.java:251) 12-04 16:29:26.929:E/AndroidRuntime(553):java.util.ArrayList.get(ArrayList.java: Android/AndroidRuntime(553):com.bombil.kustomizer.Menus.AddEditText(Menus.java:309) 12-04 16:29:26.929:E/AndroidRuntime(304) 12-04 16:29:26.929: 553):com.bombil.kustomizer.Menus.AddInsertView(Menus.java:121) 12-04 16:29:26.929:E/AndroidRuntime(553):com.bombil.kustomizer.Menus.onCreate(メニュー。 java:88) 12-04 16:29:26.929:E/AndroidRuntime(553):android.app.Activity.performCreate(Activity.java:4465) 12-04 16:29:26.929:E/AndroidRuntime(553):android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1049) 12-04 16:29:26.929:E/AndroidRuntime(553):at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1919) 12-04 16:29:26.929:E/AndroidRuntime(553):... 11もっと詳しく 12-04 16:29:27.009:D/dalvikvm 553):GC_CONCURRENTは273K、10%はフリー8248K/9159K、一時停止は4ms + 6ms 12-04 16:32:56.799:I /プロセス(553):送信信号。 PID:553 SIG:9

+0

コードまたはエラーログを投稿してください。 –

+0

Logcatと関連コードを貼り付けてください。 – Huang

+0

上記のlogcatを見てください......... –

答えて

0

Menus.javaファイルの309行目のArrayListにあるオブジェクトにアクセスしようとしています。インデックス2のオブジェクトにアクセスしようとしていますが、ArrayListの合計サイズは2これは、次のようにIndexOutOfBounds例外を発生させます。

ComponentInfo{com.bombil.kustomizer/com.bombil.kustomizer.Menus}: 
java.lang.IndexOutOfBoundsException: Invalid index 2, size is 2 

E/AndroidRuntime(553): at com.bombil.kustomizer.Menus.AddEditText(Menus.java:309) 
+0

ありがとう、@ sandervan'tveerは私にそれを修正するよう提案できますか? –

+0

申し訳ありませんが、私はあなたが最初にやろうとしていることを正確には知らないので、それを手伝ってはいけません。あなたはEditTextを追加するようアプリケーションに指示しているようですが、インデックス2のArrayListにあるコンテンツはすべて持ちますが、可能な限り高いインデックスは1です(合計サイズは2です)。あなたのコードをもう一度見て、Menus.javaの309行目の状況をどのように処理しているかを見てください。 –

+0

解決済み.......... :)はい、問題はインデックス外ですが、実際には静的変数を使用し、後で動的に値を変更しようとしたために起こりました。たぶん次回に問題が発生したときに、LogCatファイルを詳しく見ていきます。ありがとう、トン@サンダー。 –

0

両方のアクティビティで使用されているオブジェクトがありますか?私はこの問題をプロジェクトで一度見たことが分かっています。アクティビティの1つは、他のアクティビティのHTTPClientオブジェクトを台無しにすることでした。あなたがnull例外をスローされて取得している場合は、try変数を見つけてください。両方のアクティビティの共有リソースである場合は、2番目のアクティビティを終了するときにきれいな方法で対処してください。

関連する問題