结合使用 Google 的云端硬盘 API 和电子表格 API 会导致"Unable to execute dex: Multiple dex files define..."错误



为了将我的应用程序与GDrive集成,我遵循了https://developers.google.com/drive/quickstart-android

在本教程的第3步中,本教程建议安装Google Eclipse插件来处理库设置(该插件让您选择要使用的Google API,并为您创建/libs文件夹,包括jar)。本教程展示了如何拍摄照片并将其上传到Google Drive。

在完成教程后,我决定扩展示例:由于我的应用程序与Google电子表格一起使用,我在示例中添加了电子表格API(使用Google Eclipse插件)。

该应用程序正在编译,但在运行时我确实得到了以下错误:

Conversion to Dalvik format failed: Unable to execute dex: Multiple dex files define Ljavax/annotation/CheckForNull;

我的感觉是,有些库是冲突的,但这些库都是使用GoogleEclipse插件计算的?这是怎么可能的,我应该如何解决这个问题?

我的(生成的)libs文件夹如下(包含Google Drive API v2和电子表格API):

gdata-client-1.0.jar
gdata-spreadsheet-3.0.jar
gdata-spreadsheet-meta-3.0.jar
google-api-client-1.12.0-beta.jar
google-api-client-android-1.12.0-beta.jar
google-api-services-drive-v2-rev55-1.12.0-beta.jar
google-collect-1.0-rc1.jar
google-http-client-1.12.0-beta.jar
google-http-client-android-1.12.0-beta.jar
google-http-client-gson-1.12.0-beta.jar
google-http-client-jackson-1.12.0-beta.jar
google-http-client-jackson2-1.12.0-beta.jar
google-oauth-client-1.12.0-beta.jar
gson-2.1.jar
guava-jdk5-13.0.jar
jackson-core-2.0.5.jar
jackson-core-asl-1.9.9.jar
jsr305-1.3.9.jar
jsr305.jar

谢谢你的帮助,Peter

我也遇到了同样的问题。从libs文件夹中删除jsr305.jar为我解决了这个问题。

删除bin和gen文件夹并构建项目

检查添加到项目的多个私有库

检查是否将多个播放服务添加到您的项目

相关内容

最新更新