3

在我的家庭活动中,我在一个线程中使用,并且 Intent 到我自己的班级之一:

public class AppHome extends Activity {

@Override
protected void onCreate(Bundle savedInstanceState) {
        /* some initialisations */
        Thread initThread = new Thread() {

            @Override
    public void run() {
        try {
            super.run();
            /* some treatment */
            lanchNextActivity(nextActivity);
        }
    };
    initThread.start();
     }

private void lanchNextActivity(String activity){

    Intent intent = new Intent(context, ZonesActivity.class);
    startActivity(intent);
}
}

ZonesActivity.class它因以下消息而崩溃

threadid=12: thread exiting with uncaught exception (group=0x40a13300)
FATAL EXCEPTION: Thread-120
java.lang.NoClassDefFoundError: com.dombox.app.activity.ZonesActivity
    at com.dombox.app.activity.DomboxHome.lanchNextActivity(DomboxHome.java:309)
    at com.dombox.app.activity.DomboxHome.access$1(DomboxHome.java:291)
    at com.dombox.app.activity.DomboxHome$1.run(DomboxHome.java:276)

AppHome.java:309 是Intent的创建。

我的班级 ZonesActivity 是我的佣人:

package com.dombox.app.activity;

public class ZonesActivity extends FragmentActivity { /* ... */ }

我认为我的班级路径有问题,但对我来说似乎很正常:

这是我的类路径

我的清单:

<?xml version="1.0" encoding="utf-8"?>
<manifest package="com.myapp.app"
    android:versionCode="13"
    android:versionName="2.1.1" xmlns:android="http://schemas.android.com/apk/res/android">

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

    <supports-screens android:largeScreens="true"
        android:normalScreens="true" android:smallScreens="true"
        android:anyDensity="true" />

    <permission android:name="com.myapp.app.permission.C2D_MESSAGE"
        android:protectionLevel="signature" />

    <uses-permission android:name="android.permission.INTERNET" />

    <application
        <uses-library android:name="android.test.runner" />

        <activity android:name=".activity.ZonesActivity"                    
            android:label="@string/app_name"></activity>

        <instrumentation
            android:name="android.test.InstrumentationTestRunner"
            android:label="Tests for Android MyApp"
            android:targetPackage="com.application.androidmyapp" >
        </instrumentation>
    </application>
</manifest>

对不起,清单很大!

有人知道吗?

4

2 回答 2

3

如果您使用了当前平台上不可用的任何 API。(例如在旧手机上调用 ICS API)。系统将抛出这个相当具有误导性的异常。

于 2012-08-06T03:44:45.420 回答
0

就我而言,问题是我的类继承自一个仅在 API 24+ 中可用的类。

我继承自SensorEventCallback,而是通过实现SensorEventListener来修复它。

于 2020-06-20T08:53:00.420 回答