问题标签 [android-multidex]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
4156 浏览

android - Multidex 与 Android 2.3 (API 9)

谁能告诉我android 2.3是否支持multi dex?

我四处搜寻,但找不到这方面的信息。我的项目具有与此相同的配置:https ://github.com/mustafa01ali/MultiDexTest

项目构建没有问题,但最终的 apk 无法安装在 2.3 或更低版本的设备中。

安装时出现错误

在 Android Studio 中,这出现在 logcat 中:

0 投票
1 回答
5353 浏览

android - Android Multidex 和支持库

我在启用 multidex 时遇到问题。我正在使用 Android Studio,我在 DrawerLayoutWidget 上收到“找不到类”。这是设置

构建.gradle

activity_main.xml

这是我的目录错误

我尝试了各种构建工具版本和支持版本。但我无法修复这个错误。但是,如果我将 multiDeskEnabled 更改为 false 则一切正常。因此,使用 multiDeskEnabled 时,相同的依赖项不起作用。

当我搜索解决方案时,我发现很少有建议来保持更改与 Eclipse 相关的构建顺序等。但我找不到任何适用于 Android 的解决方案。任何人都可以帮助我摆脱这个问题吗?

0 投票
2 回答
557 浏览

android - 在 Android Studio 中优化构建时间的技巧?

我在 android studio 的构建时间很糟糕,我想知道您是否有任何优化技巧。以下是我目前正在开发的应用程序的一些详细信息:

  • 65k 功能限制问题,使用支持 pkg 中的最新 multidex 修复
  • 使用大约 10-15 个库
  • 使用 1-2 个本机库 (.so)
  • 尝试使用 pre-dex 技巧,结果各不相同。
  • 集成 twitter Fabric之前的构建时间~ 1 分 30 秒
  • 集成 twitter fabric 4m30sec - 14m30sec的构建时间

硬件/软件规格:

  • i7 4240
  • 16GB 内存
  • 250GB 固态硬盘

任何提示,评论都是最受欢迎的:)

编辑 1

添加了分析结果:

http://jsfiddle.net/gp6o04dL/

0 投票
1 回答
6001 浏览

android - Android Studio 更新到 1.0 损坏了 MultiDex

嗨有类似的错误,如重复条目。

FAILURE:构建失败并出现异常。

  • 出了什么问题:任务 ':eBooks:packageAllDebugClassesForMultiDex' 执行失败。

    java.util.zip.ZipException:重复条目:android/support/annotation/AttrRes.class

  • 尝试:使用 --stacktrace 选项运行以获取堆栈跟踪。使用 --info 或 --debug 选项运行以获得更多日志输出。

构建失败

总时间:1 分 46.13 秒

谁能告诉我如何找到重复的类文件在 jar 文件中的可用位置以及如何获得如下输出

com.squareup.okhttp:okhttp:1.6.0 | | | +--- com.intellij:annotations:+ -> 12.0

0 投票
1 回答
4018 浏览

android - 在 Android Studio 中使用 MultiDex 功能时,有没有办法限制主 dex 文件中的方法数量

当我如文档所述在 Android Studio 中启用MultiDex 功能时,它会自动拆分为两个或多个 dex 文件。我无法配置它。而且似乎在主 dex 文件中,方法的数量非常接近限制(65536)。

问题是如何配置它,使主 dex 文件中的方法数量减少到一定数量,比如 60k。我必须把apk上传到amazon appstore,amazon的人会在主dex文件中添加一些方法,使其超过65536的限制。

0 投票
1 回答
116 浏览

android - 转换为 Dalvik 格式时出错,android 中的 multidex 失败?

每当我尝试导入 lib-c2callsdkres 库时,然后给出这样的错误,[2015-01-05 18:29:30 - Dex Loader] Unable to execute dex: method ID not in [0, 0xffff]: 65536 [2015- 01-05 18:29:30 - TestApp] 转换为 Dalvik 格式失败:无法执行 dex:方法 ID 不在 [0, 0xffff] 中:65536 有时给我 multidex 错误。

如何解决此错误。请建议我。

谢谢你。

0 投票
1 回答
4570 浏览

android - 安卓多索引实现

我有这个错误。

错误:任务“:myApp:createDebugMainDexClassList”执行失败。com.android.ide.common.internal.LoggedErrorException:无法运行命令:java -Xmx1024M -cp \android-sdk\build-tools\19.1.0\lib\dx.jar com.android.multidex.ClassReferenceListBuilder myApp\build \intermediates\multi-dex\debug\componentClasses.jar myApp\build\intermediates\multi-dex\debug\allclasses.jar

错误代码:1 输出:错误:无法找到或加载主类 com.android.multidex.ClassReferenceListBuilder

我正在尝试使用 multidex 库,因为我的应用程序超过了 65000 方法,因为我正在使用Link描述的外部库,我已经在 mainfest 和 build.gradle 文件中添加了这些行,任何提示都将不胜感激。谢谢

几次启动后编辑我得到了这个错误。

错误:任务“:myApp:dexDebug”执行失败。com.android.ide.common.internal.LoggedErrorException:无法运行命令:\android-sdk\build-tools\21.1.0\dx.bat --dex --no-optimize --multi-dex --main- dex-list myApp\build\intermediates\multi-dex\debug\maindexlist.txt --output myApp\build\intermediates\dex\debug --input-list=myApp\build\intermediates\tmp\dex\debug\inputList。 txt ,,错误代码:3。

输出:意外的顶级错误:java.lang.OutOfMemoryError:Java 堆空间

我试图增加文件'studio64.exe.vmoptions'中的Xms1024m -Xmx1024m的大小,但它仍然没有帮助,我还尝试了设置>编译器>虚拟机选项Xms1024m -Xmx1024m

0 投票
3 回答
10258 浏览

android - 在 Android 的 ant 中启用 `--multi-dex` 选项

为 gradle 构建系统启用 multi-dex 选项很容易,但我还没有找到如何为 ant 构建启用此选项的示例。这个怎么存档?

0 投票
1 回答
17498 浏览

java - Android - MultiDex 安装

通过导入外部库,我已经超过了 65k 方法限制。我启用了 ProGuard,但仍然出现同样的错误。

在阅读了谷歌官方文档之后,似乎我应该配置一个 MultiDex 支持。我正在使用 Eclipse Indigo IDE 构建我的项目,并且没有 build.gradle 文件。使用 SDK 管理器,我安装了 'Android Support Repository' Rev. 11 和 'Android Support Library' Rev. 21.0.3。我添加了

属性到我的清单文件,现在我正在尝试实现

但是,无法解析“MultiDex”类。根据 Google 官方文档,这个 jar 应该位于 /extras/android/support/multidex/ /support/ 目录下没有 /multidex/ 目录。

如何下载和安装 MulitDex 支持库?

0 投票
1 回答
1663 浏览

android - 如何使 gradle 命令行构建从干净的构建中安装 multidex?

我在尝试从干净的构建(用于 Jenkins CI)中对我们的 Android 项目进行命令行构建时遇到问题。如果我在 Android Studio 中打开项目并运行Tools > Android > Sync Project with Gradle Files,我随后可以从命令行构建。但是,如果我尝试从命令行运行./gradlew build而不先在 Android Studio 中打开项目,则会收到以下构建失败:

据我所知,我的 Gradle 脚本中指定了所有正确的依赖项:

还有我的应用级 Gradle 脚本:

另外,.gitignore 的一些内容:

为什么无法从干净的命令行构建中找到 multidex,我该如何解决这个问题?