我的应用程序使用 ActionBarSherlock,并且一切正常(在遇到 Dalvik 错误 1 等问题之后)。现在我想使用 Android 支持 v4 库中的一个类,但找不到要导入的类。如果我将 v4 库(在 ABS 的属性下)设置为已导出,它会起作用,但随后我会收到 Dalvik 错误 1(已添加)错误。
如何使用这两个库?
最佳答案
如果您仍然遇到 ABS 问题,这可能会有所帮助:
- 使用 ABS 和支持库从头开始创建一个新项目效果很好,但我现有的项目在升级 ADT 后无法正常工作,无论如何(主要 Activity 的 ClassNotFoundException)
- 我在ABS库项目和引用项目中添加了最新版本的支持库,但仍然出现异常
- 最后,我比较了新项目和现有项目的所有配置文件,发现了以下差异:
现有项目:
<classpath>
<classpathentry kind="src" path="src"/><classpathentry kind="src" path="gen"/>
<classpathentry kind="con" path="com.android.ide.eclipse.adt.ANDROID_FRAMEWORK"/>
<classpathentry kind="con" path="com.android.ide.eclipse.adt.LIBRARIES"/>
<classpathentry exported="true" kind="con" path="com.android.ide.eclipse.adt.DEPENDENCIES"/>
<classpathentry kind="output" path="bin/classes"/>
</classpath>
新建(工作)项目:
<classpath>
<classpathentry kind="src" path="src"/><classpathentry kind="src" path="gen"/>
<classpathentry kind="con" path="com.android.ide.eclipse.adt.ANDROID_FRAMEWORK"/>
<classpathentry exported="true" kind="con" path="com.android.ide.eclipse.adt.LIBRARIES"/>
<classpathentry kind="con" path="com.android.ide.eclipse.adt.DEPENDENCIES"/>
<classpathentry kind="output" path="bin/classes"/>
</classpath>
请注意,属性 exported
在 XML 文件的不同节点上设置为 true。调整现有项目中的 XML 文件解决了我的问题。
希望这可以帮助其他人不要像我一样浪费时间:)
编辑:代码格式化
关于android - 在 ADT 17 之后,如何使用 ActionBarSherlock 和 Android Support v4 库?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10766802/