转换到包括Facebook SDK的图书馆项目的问题

时间:2013-08-15 10:03:17

标签: android facebook dex

我有一个工作的应用程序,我现在已经转换为Eclipse中的库项目。当我尝试将库作为“项目引用”包含在空的应用程序中时(除了它从库中继承的其他功能之外没有其它功能),它无法构建。我收到了消息Unable to execute dex: Multiple dex files define Lcom/facebook/android/R$attr;

为了解决这个问题,我试图完全删除Android依赖项。但是后来我得到了库中类的“类未找到异常”。

是否可以删除Facebook依赖 而不 删除应用程序库依赖项?我试图删除facebooksdk.jar文件,但由于所有按钮都显示为灰色,因此无法执行此操作。 (见下面的屏幕截图)

attempt to delete facebooksdk.jar

我还尝试在“订单和导出”中取消选中“Android依赖关系”。这对问题没有影响。

欢迎您的建议。


仅供参考,我的项目有3个主要组成部分。所有3个都包含在同一个Eclipse项目文件夹中(参见屏幕截图):

Eclipse project view

  • 申请表“App_A”
  • Library_L(作为“A”中的项目引用包含在内)值得注意的是,当我将其作为非库项目运行时,Library_L执行得非常完美。
  • Facebook SDK 3.0.2(包含在Library_L中的项目参考中(参见屏幕截图) Library's Project References

1 个答案:

答案 0 :(得分:1)

  

项目参考用于包括图书馆项目(例如,Facebook SDK)。

documentation - 和秃顶家伙的书籍 - 向您展示如何将Android库项目附加到您的应用程序,它与“项目参考”无关。

同样,the documentation for the Facebook SDK会向您展示如何将Android库项目附加到您的应用中(请参阅步骤6)。它们遵循标准的Android库项目方法,也不涉及“项目引用”。

现在,可以想象有一个关于更新的Eclipse版本(我正在运行Indigo)的东西导致“Project References”将Android库项目显示为已检查 - 它在我的版本中没有这样做。

确保您已正确设置Android库项目,并查看这是否有助于解决您的问题。