0

私のアプリは、すべて同じサウンドを必要とする 4 つのゲーム (別々のアクティビティ) を備えた子供向けアプリです。アプリを最初に開いたときに、これらのアクティビティ (Config.java) とは別のクラスの SoundPool ファイルにロードする 1 ~ 2 秒のサウンドが 150 程度あります。4 つのゲームのいずれかからアプリを再開するときに、SoundPool がまだロードされているかどうかを確認します。

@Override
protected void onResume() {
    super.onResume();
    if (Config.spool != null) {}
    else {
    Intent intent = new Intent(this, MainActivity.class);
    startActivity(intent);}
}

MainActivity (onCreate 内) は Config.java を呼び出して SoundPool を再作成し、3 秒間ローディング/ロゴ画面を表示してから、ゲームを選択できる GameSelector アクティビティにユーザーを戻します。テストを通じて、null ポインター例外は発生しませんでした。私はこのアプリを 3 週間前に公開しましたが、昨日、あるゲームの onCreate でサウンドを再生するように要求したときに、null ポインターの最初のレポートを受け取りました (これは 243 行目です)。

if (voice == 2) {Sound(Config.alphabetSoundsArray_voice2[currentIndex]);} 

これは、SoundPool が完全にロードされていないことが原因である可能性はありますか? 問題を再現できません。強制終了レポートからのスタック トレース:

java.lang.RuntimeException: Unable to start activity
ComponentInfo{com.zenlifegames.teachtryabc123/com.zenlifegames.teachtryabc123.Game2Show}:     java.lang.NullPointerException
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2110)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2135)
at android.app.ActivityThread.access$700(ActivityThread.java:143)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1241)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:137)
at android.app.ActivityThread.main(ActivityThread.java:4950)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:511)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1004)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:771)
at dalvik.system.NativeStart.main(Native Method)
Caused by: java.lang.NullPointerException
at com.zenlifegames.teachtryabc123.Game2Show.setImages(Game2Show.java:243)
at com.zenlifegames.teachtryabc123.Game2Show.onCreate(Game2Show.java:57)
at android.app.Activity.performCreate(Activity.java:5179)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1094)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2074)
... 11 more

リクエストに応じてコードを投稿する準備ができていますが、何が役に立ち、何が質問を混乱させるのかわかりません。前もって感謝します!

4

0 に答える 0