0

私のアプリはスプラッシュを開き、バックグラウンドミュージックも再生します..しかし、その後、リストアクティビティを開くはずでしたが、クラッシュします。以前、ほとんどすべての他の名前で同じプログラムを実行しようとしましたが、プログラムを再入力したときにクラッシュしました..クリーンアップしてリフレッシュしましたが、違いはありません

私のJavaファイル

スプラッシュ.java:

package com.alpha.beta;

import android.app.Activity;
import android.content.Intent;
import android.media.MediaPlayer;
import android.os.Bundle;

public class Splash extends Activity {
MediaPlayer ourSong;

@Override
protected void onCreate(Bundle beta) {
    super.onCreate(beta);
    setContentView(R.layout.splash);
    ourSong = MediaPlayer.create(Splash.this, R.raw.splash_sound);
    ourSong.start();
    Thread timer = new Thread(){
        public void run(){
            try {
                sleep(5100);
            } catch (InterruptedException e) {
                e.printStackTrace();
            } finally {
                Intent openStartingPoint = new Intent("com.alpha.beta.MENU");
                startActivity(openStartingPoint);
            }
        }
    };
    timer.start();
}

    @Override
    protected void onPause() {
        super.onPause();
        ourSong.release();
        finish();
}
}

マニフェスト ファイル:

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.alpha.beta"
android:versionCode="1"
android:versionName="1.0" >

<uses-sdk
    android:minSdkVersion="8"
    android:targetSdkVersion="15" />

<application
    android:icon="@drawable/ic_launcher"
    android:label="@string/app_name"
    android:theme="@style/AppTheme" >
    <activity
        android:name=".Splash"
        android:label="@string/title_activity_app" >
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
    <activity
        android:name=".Menu"
        android:label="@string/title_activity_app" >
        <action android:name="com.alpha.beta.MENU" />

        <category android:name="android.intent.category.DEFAULT" />
    </activity>
    <activity
        android:name=".App"
        android:label="@string/title_activity_app" >
        <action android:name="com.alpha.beta.APP" />

        <category android:name="android.intent.category.DEFAULT" />
    </activity>
</application>

           11-19 18:35:42.291: W/dalvikvm(882): threadid=7: thread exiting with uncaught exception (group=0x4001d800)
           11-19 18:35:42.321: E/AndroidRuntime(882): FATAL EXCEPTION: Thread-8
           11-19 18:35:42.321: E/AndroidRuntime(882): android.content.ActivityNotFoundException: No Activity found to handle Intent { act=com.alpha.beta.Menu }
           11-19 18:35:42.321: E/AndroidRuntime(882):   at android.app.Instrumentation.checkStartActivityResult(Instrumentation.java:1408)
           11-19 18:35:42.321: E/AndroidRuntime(882):   at android.app.Instrumentation.execStartActivity(Instrumentation.java:1378)
           11-19 18:35:42.321: E/AndroidRuntime(882):   at android.app.Activity.startActivityForResult(Activity.java:2817)
           11-19 18:35:42.321: E/AndroidRuntime(882):   at android.app.Activity.startActivity(Activity.java:2923)
           11-19 18:35:42.321: E/AndroidRuntime(882):   at com.alpha.beta.Splash$1.run(Splash.java:26)
           11-19 18:35:46.190: I/Process(882): Sending signal. PID: 882 SIG: 9
4

2 に答える 2

1

この方法を試してください

  Intent openStartingPoint = new Intent(Splash.this,Menu.class);
  startActivity(openStartingPoint);

編集:-そのアクティビティのコンテキストを取得できないという問題が発生することがあります。そのため、例外が発生する可能性がありますActivityNotFoundException

于 2012-11-19T13:19:00.953 に答える
0

ちょっとした考え。インテントでは、クラス名をMENUとして指定していますが、マニフェストではMenuです。変更してみてください。大文字と小文字の区別が問題になる可能性があります。Menuクラスのアクションも定義します。アクション名はVIEWである必要があります。

両方のアクティビティ(スプラッシュとメニュー)が同じパッケージに属していますか?はいの場合は、試してください

    Intent i = new Intent(Splash.this, Menu.class);
    i.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);

startActivity(i);   
于 2012-11-19T12:59:22.407 に答える