android studio 改包名 耗时过久,总结解决 Android-Studio 编译耗时(好久、太长)问题...

本文介绍了解决Android Studio编译耗时过长的方法,涉及增大JVM内存、启用离线编译和配置Gradle daemon。通过修改gradle.properties,提升编译性能,适用于开发环境优化。
摘要由CSDN通过智能技术生成

首先通过搜索有关Android-Studio 编译耗时(好久、太长)问题的博客,速度确实有所改善。

一、暂时解决 Android-Studio 编译耗时(好久、太长)问题

简单描述一下我遇到的问题

2017年10月24日下午6点之前我的 android studio 编译器还是瞬间编译,但是之后我遇到的问题就让“怒发冲冠”,从6点到晚上10点从gradle的初始化编译到apk编译,我一共执行了3次,分别是2小时、48分钟、20分钟,一晚上好像什么都没干。虽然是在加班,但是这样不太好!

这么耗时,肿么办!然后在网上针对我的情况了解了一下,找到了一个适合我的,但是也不是长久的 解决问题,作为临时的解决方法。针对我的问题首先表明一下问题的所在:

Project 下的 gradle.properties

在你的电脑所能承受的范围内,尽量的把 org.gradle.jvmargs 她的值设置更大,这样运行编译的时候我们的 android studio 就会拥有足够的编译内存空间。

Offline work然后就是开启离线的代码编译模式。我们都知道,我们自己写的项目会依赖很多的第三方类库,有的是你每次进行项目的编译,她都会进行检测更新最新版本。这样导致你的编译器无论是在初次打开项目环境的初始化,或是运行项目编译,都会非常的慢。但是,请注意,如果是在我们已经完全初始化过了项目所需要的依赖内容。这时候,我们就可以开启“离线”代码编译模式。如此,android studio 就不会再到互联网上检测我们的依赖环境-或更新了。可以节约很多时间,具体操作设置请看

但是有一点要注意:如果有新的项目代码依赖,要关闭离线模式,进行在线代码环境初始化,之后再次开启就-ok

————————————————

三、Gradle开启daemon特性

1.配置Daemon,能够加速gradle的构建,为了获取这个性能提上,准备开启

可以同过添加gradle.properties文件来给Gradle添加一些附加配置

Windows下:

(window)/Users/”your pc_name”/.gradle

Linux下:(在home/${user}目录下创建gradle.properties)

touch ~/.gradle/gradle.properties && echo "org.gradle.daemon=true" >> ~/.gradle/gradle.properties

2 . Gradel Daemon将在Gradle3.0+的版本中默认开启

也可以在项目的gradle.properties中添加:

org.gradle.daemon = true

当你项目中有多个子module时,这个配置显得尤为重要,同样可以在项目的gradle.properties中添加:

org.gradle.parallel = true

还有一种方法,在运行时加上参数即可:

例如,运行build任务

gradle build  --daemon

原文链接:https://blog.csdn.net/lsziri/article/details/62883454

通过以上对比,排除使用第三方插件(包括收费),比较可靠的方案还是在如下方法:

1.修改C:\Users\{用户名}\.gradle下创建gradle.properties文件(即项目文件

gradle.properties)

## For more details on how to configure your build environment visit

# http://www.gradle.org/docs/current/userguide/build_environment.html

#

# Specifies the JVM arguments used for the daemon process.

# The setting is particularly useful for tweaking memory settings.

# Default value: -Xmx1024m -XX:MaxPermSize=256m

# org.gradle.jvmargs=-Xmx2048m -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8

org.gradle.jvmargs=-Xmx4096m -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8

#注意这个-Xmx后的参数大少根据实际计算机内存配置进行相应修改,当然开发电脑配置不能太低,多核,大内存8G及其以上是首选,

#

# When configured, Gradle will run in incubating parallel mode.

# This option should only be used with decoupled projects. More details, visit

# http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects

#并行编译

org.gradle.parallel=true#守护进程

org.gradle.daemon=true#开启孵化模式

org.gradle.configureondemand=true

#开启缓存android.enableBuildCache=true

#Tue Apr 23 03:16:33 CST 2019

systemProp.http.proxyHost=mirrors.neusoft.edu.cn

systemProp.http.proxyPort=80

2.首次需要在线下载相关库及工具外,一般进行离线编译可极大提高开发效率

打开Android Studio,选择菜单项 File->Settings,把 Offline Work打上勾。

09c3383530ef5e317a04c3094c6b5277.png

最后,保存,并重新打开Android Studio.你现在Gradle应该有了很大的提升。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
导致Android Studio编译项目变慢的因素有很多,包括但不限于以下几个方面: 1. **系统资源限制**:计算机硬件性能、内存大小以及CPU处理能力都会影响编译的速度。尤其是内存不足时,编译过程可能会变得非常缓慢。 2. **依赖库管理**:如果项目中包含了大量外部依赖库,特别是大型框架如Facebook的React Native或者Google的Flutter等,大量的依赖文件会增加编译的时间。 3. **项目结构复杂度**:项目层级深、文件数量多、模块众多的情况下,编译时间也会显著延长。 4. **缓存问题**:Android Studio使用的Gradle构建系统存在缓存机制。如果缓存配置不当,例如缓存了错误的结果,可能导致编译失败或者效率低下。 5. **代码质量**:冗余、未优化的代码也会影响编译速度。比如过多的循环嵌套、复杂的条件判断等都可能导致编译耗时较长。 6. **构建工具设置**:Gradle脚本、构建配置(build.gradle)、模块依赖配置等方面的不合理设定也可能导致编译变慢。 为了提高Android Studio编译速度,可以尝试以下几种策略: 1. **清理缓存**:定期清除Android Studio的构建缓存可以解决由于缓存错误而引起的问题。通过选择“File” -> “Invalidate Caches / Restart…”并勾选“Invalidate and restart”选项来进行操作。 2. **优化项目结构**:尽量减少依赖的引入数量,并考虑将大项目拆分为小的独立模块,每模块只包含相关的功能和组件。 3. **更新依赖版本**:保持Gradle插件、依赖库和其他构建工具的最新版本,因为新版本通常包含性能进。 4. **调整Gradle配置**:检查并优化`build.gradle`文件中的配置,合理地设置一些优化参数,如`maxParallelForks`(控制同时运行的任务数)。 5. **使用预编译工具**:有些第三方工具或服务可以在编译过程中提供额外的优化,例如D8 for APK优化等。 6. **升级硬件**:虽然这不是解决问题的根本办法,但对于长时间运行的大型项目来说,升级到更高性能的计算机确实能明显提升编译速度。 7. **避免不必要的构建任务**:明确理解并仅运行需要的构建任务,而不是每次都执行完整的构建流程。 以上措施有助于Android Studio编译性能,使其更高效地完成项目构建工作。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值