我有一个完整的功能完整的应用程序,但是我想开始将它用作库项目并使用不同的图像等制作简单的不同版本。
这个项目引用了动作栏 sherlock,当我在新项目中引用它时,似乎抛出了一个 dex 类错误,两者都在使用 sherlock。
我是否应该从原始项目中删除 sherlock 依赖项并将其设置为新项目?这似乎也不起作用。
我看过无数的图书馆项目指南,但没有提到使用 ABS 或类似的东西?
多谢。
我有一个完整的功能完整的应用程序,但是我想开始将它用作库项目并使用不同的图像等制作简单的不同版本。
这个项目引用了动作栏 sherlock,当我在新项目中引用它时,似乎抛出了一个 dex 类错误,两者都在使用 sherlock。
我是否应该从原始项目中删除 sherlock 依赖项并将其设置为新项目?这似乎也不起作用。
我看过无数的图书馆项目指南,但没有提到使用 ABS 或类似的东西?
多谢。
有不同的方法可以解决这个问题。
首先,确保您拥有 Android 支持库。如果您想在每种情况下提供相同版本的支持库(在您的情况下是支持库的 ABS 版本),您可以将其包含在您的项目和所有库项目中。如果您最终得到不同的版本,那么您将在 logcat 上收到一条消息:
在依赖列表中找到了 android-support-v4.jar 的 2 个版本,但并非所有版本都相同(此时检查仅基于 SHA-1)。
但是,仅使用一个版本的支持库并将其添加到您的项目中可能更明智。(如果任何库项目需要它,他们可以在编译时从您的项目中获取它)
其次,至于 actionbarsherlock 库 - 我建议您仅将其包含在您的项目中(如果任何库项目需要它,他们可以在编译时从您的项目中获取它)。