需要您的幫助!Android應用程序崩潰 - 無法實例化活動ComponentInfo
我是Android新手,由於某種原因,我的應用停止工作,並在啓動時崩潰。
我不確定它是否相關,但我已經將Maven添加到項目中。 這裏的錯誤日誌:
06-23 14:32:18.380: E/AndroidRuntime(1775): FATAL EXCEPTION: main
06-23 14:32:18.380: E/AndroidRuntime(1775): Process: com.app.test, PID: 1775
06-23 14:32:18.380: E/AndroidRuntime(1775): java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{com.app.test/com.test.activities.SplashActivity}: java.lang.ClassNotFoundException: Didn't find class "com.test.activities.SplashActivity" on path: DexPathList[[zip file "/data/app/com.app.test-2/base.apk"],nativeLibraryDirectories=[/vendor/lib, /system/lib]]
06-23 14:32:18.380: E/AndroidRuntime(1775): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2236)
06-23 14:32:18.380: E/AndroidRuntime(1775): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2390)
06-23 14:32:18.380: E/AndroidRuntime(1775): at android.app.ActivityThread.access$800(ActivityThread.java:151)
06-23 14:32:18.380: E/AndroidRuntime(1775): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1303)
06-23 14:32:18.380: E/AndroidRuntime(1775): at android.os.Handler.dispatchMessage(Handler.java:102)
06-23 14:32:18.380: E/AndroidRuntime(1775): at android.os.Looper.loop(Looper.java:135)
06-23 14:32:18.380: E/AndroidRuntime(1775): at android.app.ActivityThread.main(ActivityThread.java:5257)
06-23 14:32:18.380: E/AndroidRuntime(1775): at java.lang.reflect.Method.invoke(Native Method)
06-23 14:32:18.380: E/AndroidRuntime(1775): at java.lang.reflect.Method.invoke(Method.java:372)
06-23 14:32:18.380: E/AndroidRuntime(1775): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:903)
06-23 14:32:18.380: E/AndroidRuntime(1775): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:698)
06-23 14:32:18.380: E/AndroidRuntime(1775): Caused by: java.lang.ClassNotFoundException: Didn't find class "com.test.activities.SplashActivity" on path: DexPathList[[zip file "/data/app/com.app.test-2/base.apk"],nativeLibraryDirectories=[/vendor/lib, /system/lib]]
06-23 14:32:18.380: E/AndroidRuntime(1775): at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:56)
06-23 14:32:18.380: E/AndroidRuntime(1775): at java.lang.ClassLoader.loadClass(ClassLoader.java:511)
06-23 14:32:18.380: E/AndroidRuntime(1775): at java.lang.ClassLoader.loadClass(ClassLoader.java:469)
06-23 14:32:18.380: E/AndroidRuntime(1775): at android.app.Instrumentation.newActivity(Instrumentation.java:1066)
06-23 14:32:18.380: E/AndroidRuntime(1775): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2226)
06-23 14:32:18.380: E/AndroidRuntime(1775): ... 10 more
06-23 14:32:18.380: E/AndroidRuntime(1775): Suppressed: java.lang.ClassNotFoundException: com.test.activities.SplashActivity
06-23 14:32:18.380: E/AndroidRuntime(1775): at java.lang.Class.classForName(Native Method)
06-23 14:32:18.380: E/AndroidRuntime(1775): at java.lang.BootClassLoader.findClass(ClassLoader.java:781)
06-23 14:32:18.380: E/AndroidRuntime(1775): at java.lang.BootClassLoader.loadClass(ClassLoader.java:841)
06-23 14:32:18.380: E/AndroidRuntime(1775): at java.lang.ClassLoader.loadClass(ClassLoader.java:504)
06-23 14:32:18.380: E/AndroidRuntime(1775): ... 13 more
06-23 14:32:18.380: E/AndroidRuntime(1775): Caused by: java.lang.NoClassDefFoundError: Class not found using the boot class loader; no stack available
這裏的清單:
<?xml version="1.0" encoding="utf-8"?>
<manifest
xmlns:android="http://schemas.android.com/apk/res/android"
package="com.test"
android:versionCode="1"
android:versionName="1.0" >
<uses-sdk
android:minSdkVersion="11"
android:targetSdkVersion="22" />
<uses-permission
android:name = "android.permission.INTERNET"/>
<uses-permission
android:name = "android.permission.BLUETOOTH_ADMIN"/>
<application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<activity
android:name="com.test.activities.SplashActivity"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
android:name="com.test.activities.MainActivity"
android:label="@string/app_name" >
<intent-filter>
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
</activity>
<activity
android:name="com.test.activities.MainMenuActivity"
android:label="@string/title_activity_main_menu" >
</activity>
</application>
和這裏的活動:
public class SplashActivity extends Activity{
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_splash);
Thread StartTimer = new Thread(){
public void run(){
try {
sleep(2000);
Intent main = new Intent(SplashActivity.this, MainActivity.class);
startActivity(main);
finish(); //kills the current activity
}
catch (InterruptedException ex){}
}
};
StartTimer.start();
}
}
下面是pom.xml中
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>test</groupId>
<artifactId>test</artifactId>
<version>0.0.1-SNAPSHOT</version>
<build>
<sourceDirectory>src</sourceDirectory>
<plugins>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.1</version>
<configuration>
<source>1.6</source>
<target>1.6</target>
</configuration>
</plugin>
</plugins>
</build>
<dependencies>
<dependency>
<groupId>com.squareup.okhttp</groupId>
<artifactId>mockwebserver</artifactId>
<version>2.4.0</version>
</dependency>
<dependency>
<groupId>com.google.code.gson</groupId>
<artifactId>gson</artifactId>
<version>2.3.1</version>
</dependency>
</dependencies>
</project>
也這裏是第四Ë構建路徑設置:
導演結構:
請提供打包的apk的Maven構建腳本。 –
嗨馬庫斯,我可以在哪裏找到它? – Gil404
在您的AndroidManifest.xml中嘗試'.SplashActivity'而不是'com.test.activities.SplashActivity' –