gpt4 book ai didi

android - 如何解决 Dalvik 编译器对 64K 方法的限制问题?

转载 作者:IT老高 更新时间:2023-10-28 22:03:10 27 4
gpt4 key购买 nike

我和我的团队从另一个团队继承了一个大型 Android 项目。据报道,包含所有库的整个应用程序有大约 35000 个方法。我们现在的任务是在需要使用 Protocol Buffers 的应用中实现一个新服务。

问题是生成的 .jar 文件包含所有必需的 .proto 文件创建另外几个 35000 个方法,即 70000 个方法。如果您不知道,Android 编译器对每个 .dex 文件有 65536 个方法的限制。我们显然超出了该限制,并且在尝试编译应用程序时遇到以下错误:

Unable to execute dex: method ID not in [0, 0xffff]: 65536
Conversion to Dalvik format failed: Unable to execute dex: method ID not in [0, 0xffff]: 65536

是的,应用程序架构可能应该进行重组,但这需要时间。目前,我们正在尝试找出一个临时解决此问题的解决方案。

有什么建议吗?

最佳答案

您可以使用另一个 DEX 文件。这就是你的做法:

http://android-developers.blogspot.co.il/2011/07/custom-class-loading-in-dalvik.html

关于android - 如何解决 Dalvik 编译器对 64K 方法的限制问题?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15436956/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com