API级别8的NoClassDefFoundError

时间:2014-03-21 23:51:53

标签: java android eclipse

我想让我的应用兼容较低的API级别。在第19级,一切正常,但在第8级,这一行导致NoClassDefFoundError:

Intent intent = new Intent(this, ActivityData.class);

我正在尝试打开的Activity使用android.app.actionBar,所以我认为这就是App崩溃的原因。但我不明白为什么抛出NoClassDefFoundError。有人对此有解释吗?

此外,虽然我选择API级别8作为最低限度,但eclipse并未将android.app.actionBar的导入标记为警告或错误。有没有选项让eclipse标记我的代码中与我选择的API不兼容的部分?

2 个答案:

答案 0 :(得分:1)

兄弟,你已经回答了这个问题。首先要理解的是,Eclipse不是Android的官方工具包。对于上面提到的问题,Eclipse无法帮助我们。因此,如果要使用ActionBar类

,则必须手动将api级别定义为11.

答案 1 :(得分:1)

考虑具有不同API级别的含义。如果操作栏在API级别11上发布,则API级别8没有必要的类和资源来使操作栏工作,这就是您获取NoClassDefFound错误的原因。