意图startActivity ActionBarActivity时的NoClassDefFoundError

时间:2014-06-18 15:43:06

标签: android android-intent

Android minSdk = 15。

我有2节课。头等舱:

public class InitialActivity extends Activity
{
    // some code running AsyncTask tasks
    Intent startApp = new Intent(InitialActivity.this, MainFragmentActivity.class);
    startActivity(startApp);
}

第二课:

import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentManager;
import android.support.v4.app.FragmentPagerAdapter;
import android.support.v4.view.ViewPager;
import android.support.v7.app.ActionBar;
import android.support.v7.app.ActionBar.Tab;
import android.support.v7.app.ActionBarActivity;
import android.util.Log;
public class MainFragmentActivity extends ActionBarActivity
{
}

在清单中:

    <activity 
        android:name="com.example.myapp.afterlogin.MainFragmentActivity"
    />

当意图到达startActivity()时,应用程序崩溃了:

06-18 09:18:27.649: W/dalvikvm(24789): threadid=1: thread exiting with uncaught exception (group=0x41628d40)
06-18 09:18:27.650: E/AndroidRuntime(24789): FATAL EXCEPTION: main
06-18 09:18:27.650: E/AndroidRuntime(24789): Process: com.example.myapp, PID: 24789
06-18 09:18:27.650: E/AndroidRuntime(24789): java.lang.NoClassDefFoundError: com.example.myapp.afterlogin.MainFragmentActivity
06-18 09:18:27.650: E/AndroidRuntime(24789):    at com.example.myapp.beforelogin.InitialActivity.onResultsSucceeded(InitialActivity.java:238)
06-18 09:18:27.650: E/AndroidRuntime(24789):    at com.example.myapp.apis.GetJobList.onPostExecute(GetJobList.java:217)
06-18 09:18:27.650: E/AndroidRuntime(24789):    at com.example.myapp.apis.GetJobList.onPostExecute(GetJobList.java:1)
06-18 09:18:27.650: E/AndroidRuntime(24789):    at android.os.AsyncTask.finish(AsyncTask.java:632)
06-18 09:18:27.650: E/AndroidRuntime(24789):    at android.os.AsyncTask.access$600(AsyncTask.java:177)
06-18 09:18:27.650: E/AndroidRuntime(24789):    at android.os.AsyncTask$InternalHandler.handleMessage(AsyncTask.java:645)

但是,如果第二个班级(MainFragmentActivity)延伸ActivityFragment,则该应用不会崩溃。

1 个答案:

答案 0 :(得分:0)

ActionBarActivity是使用支持库操作栏功能的活动的基类。 (sdk 7+)
ActionBar API首先在Android 3.0(API级别11)中添加 所以你不需要使用ActionBarActivity。

从“活动”扩展并使用本指南如何使用操作栏和操作项。 https://developer.android.com/guide/topics/ui/menus.html#context-menu