アプリケーションにスプラッシュ スクリーンを追加したところです (以前は正常に動作していました)。問題の原因を突き止めるのに十分なほど賢い人がいるかどうか疑問に思っています。アプリが起動し、スプラッシュ スクリーンが表示され、プライマリ レイアウト (AppActivity.java / main.xml) をロードすると、アプリケーションが強制終了します。: (
package com.mkyong.android;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.os.Handler;
public class SplashScreen extends Activity {
private static final int SPLASH_TIME = 3 * 1000;// 3 seconds
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.splashscreen);
new Handler().postDelayed(new Runnable() {
@Override
public void run() {
Intent intent = new Intent(SplashScreen.this,
AppActivity.class);
startActivity(intent);
SplashScreen.this.finish();
overridePendingTransition(R.anim.appear, R.anim.disappear);
}
}, SPLASH_TIME);
new Handler().postDelayed(new Runnable() {
@Override
public void run() {
}
}, SPLASH_TIME);
}
@Override
public void onBackPressed() {
this.finish();
super.onBackPressed();
}
}
LogCat:
03-02 13:32:41.936: E/Trace(2065): error opening trace file: No such file or directory (2)
03-02 13:32:42.116: D/dalvikvm(2065): GC_FOR_ALLOC freed 61K, 8% free 2404K/2608K, paused 51ms, total 54ms
03-02 13:32:42.166: I/dalvikvm-heap(2065): Grow heap (frag case) to 6.000MB for 3686416-byte allocation
03-02 13:32:42.316: D/dalvikvm(2065): GC_FOR_ALLOC freed <1K, 4% free 6003K/6212K, paused 144ms, total 144ms
03-02 13:32:42.477: D/dalvikvm(2065): GC_CONCURRENT freed <1K, 4% free 6003K/6212K, paused 8ms+6ms, total 167ms
03-02 13:32:43.216: I/Choreographer(2065): Skipped 30 frames! The application may be doing too much work on its main thread.
03-02 13:32:43.246: D/gralloc_goldfish(2065): Emulator without GPU emulation detected.
03-02 13:32:46.046: D/AndroidRuntime(2065): Shutting down VM
03-02 13:32:46.046: W/dalvikvm(2065): threadid=1: thread exiting with uncaught exception (group=0x40a71930)
03-02 13:32:46.086: E/AndroidRuntime(2065): FATAL EXCEPTION: main
03-02 13:32:46.086: E/AndroidRuntime(2065): android.content.ActivityNotFoundException: Unable to find explicit activity class {com.mkyong.android/com.mkyong.android.AppActivity}; have you declared this activity in your AndroidManifest.xml?
03-02 13:32:46.086: E/AndroidRuntime(2065): at android.app.Instrumentation.checkStartActivityResult(Instrumentation.java:1618)
03-02 13:32:46.086: E/AndroidRuntime(2065): at android.app.Instrumentation.execStartActivity(Instrumentation.java:1417)
03-02 13:32:46.086: E/AndroidRuntime(2065): at android.app.Activity.startActivityForResult(Activity.java:3370)
03-02 13:32:46.086: E/AndroidRuntime(2065): at android.app.Activity.startActivityForResult(Activity.java:3331)
03-02 13:32:46.086: E/AndroidRuntime(2065): at android.app.Activity.startActivity(Activity.java:3566)
03-02 13:32:46.086: E/AndroidRuntime(2065): at android.app.Activity.startActivity(Activity.java:3534)
03-02 13:32:46.086: E/AndroidRuntime(2065): at com.mkyong.android.SplashScreen$1.run(SplashScreen.java:24)
03-02 13:32:46.086: E/AndroidRuntime(2065): at android.os.Handler.handleCallback(Handler.java:725)
03-02 13:32:46.086: E/AndroidRuntime(2065): at android.os.Handler.dispatchMessage(Handler.java:92)
03-02 13:32:46.086: E/AndroidRuntime(2065): at android.os.Looper.loop(Looper.java:137)
03-02 13:32:46.086: E/AndroidRuntime(2065): at android.app.ActivityThread.main(ActivityThread.java:5041)
03-02 13:32:46.086: E/AndroidRuntime(2065): at java.lang.reflect.Method.invokeNative(Native Method)
03-02 13:32:46.086: E/AndroidRuntime(2065): at java.lang.reflect.Method.invoke(Method.java:511)
03-02 13:32:46.086: E/AndroidRuntime(2065): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:793)
03-02 13:32:46.086: E/AndroidRuntime(2065): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:560)
03-02 13:32:46.086: E/AndroidRuntime(2065): at dalvik.system.NativeStart.main(Native Method)
03-02 13:32:50.336: I/Process(2065): Sending signal. PID: 2065 SIG: 9
マニフェスト:
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.mkyong.android"
android:versionCode="1"
android:versionName="1.0" >
<uses-sdk android:minSdkVersion="10" />
<application
android:icon="@drawable/ic_launcher"
android:label="@string/app_name" >
<activity
android:name=".SplashScreen"
android:theme="@android:style/Theme.Black.NoTitleBar" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
<application
android:icon="@drawable/ic_launcher"
android:label="@string/app_name" >
<activity android:name=".main2"></activity>
<activity android:name=".home"></activity>
<activity android:name=".App2Activity"></activity>
<activity
android:label="@string/app_name"
android:name=".AppActivity" >
<intent-filter >
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
</manifest>