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

Posted

技术标签:

【中文标题】在 Android Studio 中优化构建时间的技巧?【英文标题】:Tips for optimizing build time in Android studio? 【发布时间】:2014-12-08 08:47:51 【问题描述】:

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

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

硬件/软件规格:

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

欢迎任何提示,cmets :)

编辑 1

添加分析结果:

<div class="tab" id="tab0">
<h2>Summary</h2>
<table>
<thead>
<tr>
<th>Description</th>
<th class="numeric">Duration</th>
</tr>
</thead>
<tr>
<td>Total Build Time</td>
<td class="numeric">8m44.29s</td>
</tr>
<tr>
<td>Startup</td>
<td class="numeric">1.813s</td>
</tr>
<tr>
<td>Settings and BuildSrc</td>
<td class="numeric">0.038s</td>
</tr>
<tr>
<td>Loading Projects</td>
<td class="numeric">0.009s</td>
</tr>
<tr>
<td>Configuring Projects</td>
<td class="numeric">5.889s</td>
</tr>

http://jsfiddle.net/gp6o04dL/

【问题讨论】:

我遇到了同样的问题,规格几乎相同。我对源代码所做的每一次更改都会导致长达 2 分钟的严重延迟,直到我可以在设备上运行它,这让我非常沮丧……最终我将项目迁移回 Eclipse……现在需要 11应用程序安装的秒数。 尝试使用--profile 标志从命令行构建,查看它放在build/reports/profile/ 中的分析报告,并将信息包含在您的问题中。 使用 gradlew build --profile 添加分析结果 【参考方案1】:

你可以试试……

文件 -> 设置 -> 选择 Gradle -> 全局 Gradle 设置 -> 离线工作

【讨论】:

【参考方案2】:

您可以做很多事情,其中​​之一就是禁用 Crashlytics 以进行调试。 在 build.gradle 中:

android 
  ...
  buildTypes 
    debug 
      ext.enableCrashlytics = false
    

在你初始化结构的类中:

Crashlytics crashlyticsKit = new Crashlytics.Builder()
    .core(new CrashlyticsCore.Builder().disabled(BuildConfig.DEBUG).build())
    .build();

Fabric.with(this, crashlyticsKit);

希望这会有所帮助。

参考:https://developer.android.com/studio/build/optimize-your-build.html

【讨论】:

以上是关于在 Android Studio 中优化构建时间的技巧?的主要内容,如果未能解决你的问题,请参考以下文章

ProGuard 优化通过了在 Android Studio 3.4.1 中突然生成构建时跳过的 5 条规则

Android 安装包优化使用 lib7zr.so 动态库处理压缩文件 ( 拷贝 lib7zr.so 动态库到 Android Studio 工程 | 配置 build.gradle 构建脚本 )(代

在 Android Studio 中构建时重复的类

如何优化 Android Studio 中所有文件的导入

无法在 Android Studio 中切换到调试构建变体

在 Android Studio 中构建 APK 文件时出错