相关疑难解决方法(0)

无法执行dex:方法ID不在[0,0xffff]:65536中

我以前见过各种版本的dex erros,但这个版本是新的.清理/重启等无济于事.图书馆项目似乎完好无损,依赖似乎正确联系在一起.

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
Run Code Online (Sandbox Code Playgroud)

要么

Cannot merge new index 65950 into a non-jumbo instruction
Run Code Online (Sandbox Code Playgroud)

要么

java.util.concurrent.ExecutionException: com.android.dex.DexIndexOverflowException: method ID not in [0, 0xffff]: 65536
Run Code Online (Sandbox Code Playgroud)

tl;博士:Google的官方解决方案终于来了!

http://developer.android.com/tools/building/multidex.html

只有一个小提示,你可能需要这样做以防止在执行dex-ing时内存不足.

dexOptions {
        javaMaxHeapSize "4g"
}
Run Code Online (Sandbox Code Playgroud)

还有一种巨型模式可以以不太可靠的方式解决这个问题:

dexOptions {
        jumboMode true
}
Run Code Online (Sandbox Code Playgroud)

更新:如果您的应用程序很胖并且您的主应用程序中有太多方法,则可能需要按照应用程序重新设置应用程序

http://blog.osom.info/2014/12/too-many-methods-in-main-dex.html

android dex

341
推荐指数
7
解决办法
14万
查看次数

在Eclipse中为Android启用ProGuard

关于ProGuard for Android的新文档说,要在项目主目录的default.properties文件中添加一行.但是,在打开此文件时,我在顶部阅读:

# This file is automatically generated by Android Tools. 
# Do not modify this file -- YOUR CHANGES WILL BE ERASED! 
Run Code Online (Sandbox Code Playgroud)

我错过了什么吗?

另外,有没有办法让ProGuard仅用于Eclipse的生产构建(即,在导出成品时)?

eclipse obfuscation android proguard

112
推荐指数
3
解决办法
9万
查看次数

Android ART运行时是否与Dalvik具有相同的方法限制限制?

Android ART运行时是否与Dalvik具有相同的方法限制限制?目前,主要dex文件中有64k方法的限制

android dalvik dex-limit art-runtime

41
推荐指数
2
解决办法
9507
查看次数

标签 统计

android ×3

art-runtime ×1

dalvik ×1

dex ×1

dex-limit ×1

eclipse ×1

obfuscation ×1

proguard ×1