android - 如何处理 3rd 方 android 库中的库不匹配?

标签 android maven actionbarsherlock android-facebook

我正在编写一个同时使用 ActionBarSherlock 和 Facebook Android SDK 的 Android 应用程序。这两个库都在其 libs 文件夹中提供了 android-support-v4.jar:

https://github.com/facebook/facebook-android-sdk/blob/master/libs/android-support-v4.jar https://github.com/JakeWharton/ActionBarSherlock/blob/master/library/libs/android-support-v4.jar

但是,在 head 版本中,两个版本的支持 jar 是不同的。这会导致使用 Eclipse 构建我的应用程序失败。

我通过将它们作为 git 子模块包含在我的应用程序的存储库中来使用这两个库。一种解决方案是 fork 这些库之一,更新 fork 中的 android-support-v4.jar 版本,并将我的子模块指向 fork 。虽然这也许是正确的方法,但不知何故感觉不对。

在使用上述方法之前,我想知道是否还有其他选择。许多流行的 Android 库似乎都在使用 maven,使用 maven 是否是解决此问题的好方法,并且对一般的 android 应用程序来说是个好主意?

最佳答案

首先从所有(您的项目、FacebookSDK 等)中删除 android-support-v4.jar。

然后按照以下步骤:

右键单击项目 -> Android 工具 -> 添加支持库,然后再次右键单击项目 -> Android 工具 -> 修复项目属性,在 Facebook SDK 和其他库上执行相同的操作。

并清理构建您的所有项目(Facebook SDK、您的项目和库)。您已完成。

关于android - 如何处理 3rd 方 android 库中的库不匹配?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14227999/

相关文章:

java - SingleConnectionFactory - 未找到类 Spring 4.0.5

android - 找不到 fragment ID 的 View

java - Maven 对 Nexus 中 jar 的依赖

android - 谷歌云消息,服务不可用

android - 如何避免在 AdMob 的 XML 中复制/粘贴 adUnitId?用于测试和发布

java - 如何在弹出窗口中设置textview?

使用 maven 的 Java Cloudinary

android - 向上导航按钮在首选项 Activity 中不起作用

java - 具有不同大小的 ActionBar 图标

android - Titanium:在我的应用程序中打开图像