2013-02-26 133 views
6

我想将我的应用程序与各种文件存储服务集成在一起。我遵循Drive sdk的快速入门说明,它为我的项目libs目录添加了一堆jar。此外,Dropbox的SDK需要罐的下面的列表:解决Drive和Dropbox依赖冲突的安全方法?

  • 共享记录-1.1.1.jar
  • 的Dropbox,Android的SDK-1.5.3.jar
  • 的HttpClient-4.0.3。罐子
  • 的HttpCore-4.0.1.jar
  • httpmime-4.0.3.jar
  • JSON-简单1.1.jar

一旦所有的这些添加到我的项目,我得到以下错误,当我尝试运行:

敏捷装载机]无法执行DEX:多DEX文件定义 Lorg /阿帕奇/ HTTP /实体/ MIME/FormBodyPart;

如果我删除为Dropbox添加的httpmime jar,我的项目运行良好。但这是解决冲突的安全方法吗?有没有其他方法可以用来构建我的项目并包含所有需要的罐子?

+0

在另一个SDK中是httpmine jarfile吗? – 2013-02-26 19:00:13

回答

0

假设没有版本冲突,这将工作正常。将httpmime-4.0.3.jar与Drive添加到libs目录的httpmime jar进行比较。如果他们是一样的,那就没问题。如果它们不同,那么你必须找出两者之间的差异,并确保它们不会发生变化。作为最后的手段,您还可以在有选择地使用ProGuard进行混淆的jar中将其中一个SDK与其所需的httpmime版本重新打包,尽管这很麻烦。

0

如果您使用Eclipse进行开发,请考虑使用Google Plugin for Eclipse。它提供了将Google的任何SDK添加到您的应用的方法。所有的罐子都会自动添加。