【发布时间】:2016-07-01 18:50:01
【问题描述】:
我对 Android 编程比较陌生,我正在尝试创建一个 Google 地图项目。我在 Android Studio 中使用了模板选项,并添加了 API 的密钥。
我没有添加任何我自己的代码并保留模板代码,因为我只是想运行代码并查看它的外观,但是,当我尝试运行它时,我不断收到多 dex 错误在模拟器上导致构建失败。收到此错误对我来说很奇怪,因为我根本没有添加任何代码,并且正在使用来自 Android Studio 的 Google 地图模板。
有人知道为什么这个错误会出现在一个全新的项目上吗?我看到的错误贴在下面。
错误:.dex 文件中的方法引用数不能超过 64K。 通过https://developer.android.com/tools/building/multidex.html了解如何解决此问题
错误:任务 ':app:transformClassesWithDexForDebug' 执行失败。
com.android.build.api.transform.TransformException: com.android.ide.common.process.ProcessException: java.util.concurrent.ExecutionException: com.android.ide.common.process.ProcessException: org.gradle .process.internal.ExecException: Process 'command 'C:\Program Files\Java\jdk1.8.0_91\bin\java.exe'' 以非零退出值 2 结束
【问题讨论】:
-
您可能正在使用 compile 'com.google.android.gms:play-services:9.2.0' 编译所有播放服务 API... 现在我们可以选择性地编译 API 以避免 dex 限制64K。对于谷歌地图,使用 com.google.android.gms:play-services-maps:9.2.0...
-
^ 上面的评论就像一个魅力。谢谢。
-
有趣的是,谷歌甚至搞砸了 DEX 限制,我一直不明白为什么他们不能解决这个问题。
标签: android google-maps android-multidex