gpt4 book ai didi

android - Eclipse 到 Android Studio 导入

转载 作者:塔克拉玛干 更新时间:2023-11-02 18:55:50 25 4
gpt4 key购买 nike

我正在按照 Android 官方网站的建议将所有源代码移动到 AS。但是,体验不是很好。正如描述的那样非常缓慢 here .但这不是我现在的最终问题。

我已经解决了很多问题,例如将 compileSdkVersion 更新为 23 以便 99 这种错误:

Error:(13) Error retrieving parent for item: No resource found that matches the given name 'android:TextAppearance.Material.Inverse'.

可以纠正。但是随着我的前进,问题不断增加。现在我有这个 64k Dex 问题。

Error:The number of method references in a .dex file cannot exceed 64K. Learn how to resolve this issue at https://developer.android.com/tools/building/multidex.html

我在使用 Eclipse 时从未遇到过这个 Dex 问题。我在 AS 中的源代码与在 Eclipse 中时的源代码完全相同。唯一的区别是那些只需要在 AS 上工作的 gradle 更改。知道为什么会突然出现 Dex 问题吗?如果我将 multiDexEnabled 设置为 true,会有什么影响?

最佳答案

首先,确保在导入后重建项目(Build - Clean,Builde - Rebuild Probject)。使用限制方法引用修复此问题:

android {

defaultConfig {
...

// Enabling multidex support.
multiDexEnabled true
}
...
}

dependencies {
compile 'com.android.support:multidex:1.0.0'
}

同时更新 Java 中的 Application.class 以支持 MultiDex。查看完整信息 here !

更新:

这个选项在 Eclipse 上被忽略,因为方法引用限制可以从环境中计算出来(比如我们的例子中的 AS)。为什么这个选项不包含在 Gradle 构建中 - 仍然是个问题......

Android 应用程序 (APK) 文件包含 Dalvik 可执行 (DEX) 文件形式的可执行字节码文件,其中包含用于运行您的应用程序的已编译代码。 Dalvik Executable 规范将单个 DEX 文件中可以引用的方法总数限制为 65,536——包括 Android 框架方法、库方法和您自己的代码中的方法。在计算机科学的上下文中,术语 Kilo, K 表示 1024(或 2^10)。因为 65,536 等于 64 X 1024,所以此限制称为“64K 引用限制”。

Source AS Doc

关于android - Eclipse 到 Android Studio 导入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39642030/

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