android studio 变慢 android studio太卡了怎么办 您所在的位置:网站首页 python太慢怎么办 android studio 变慢 android studio太卡了怎么办

android studio 变慢 android studio太卡了怎么办

2023-06-27 09:51| 来源: 网络整理| 查看: 265

问题记录:

2017年之前,我个人开发依然使用Eclipse2EE 来开发android java 和 javaWeb。毕竟Eclipse已经被广大开发者使用。但是由于后续工作重心在android端的开发,将项目迁移至androidstudio中。 迁移过程也是很多砍,总结可以查看我之前的一篇文章:Eclipse—》androidstudio项目迁移

今天来总结的是:在androidstudio中编译工程十分缓慢的解决办法。

1:先解决你的电脑硬件问题。如果太过垃圾的处理器以及运行内存的话,建议还是更换。

2:androidstudio 卡顿的问题

参考的是网上的一些文章总结:; 配置你的androidstudio的基本配置如下: androidstudio安装目录下 bin/studio64.exe.vmoptions 文件:

修改相应的一些配置:将相应参数设置调大一些:

-Xms2048m -Xmx2048m -XX:MaxPermSize=2048m -XX:ReservedCodeCacheSize=1024m -XX:+UseConcMarkSweepGC -XX:SoftRefLRUPolicyMSPerMB=50 -da -Djna.nosys=true -Djna.boot.library.path= -Djna.debug_load=true -Djna.debug_load.jna=true -Dsun.io.useCanonCaches=false -Djava.net.preferIPv4Stack=true -Didea.paths.selector=AndroidStudio2.2 -Didea.platform.prefix=AndroidStudio -Didea.jre.check=true

备注: 在bin目录下有两个关于 .vmoptions 文件,一个对应32位系统,一个对应64位系统

这种方式只能改变电脑在使用androidstudio的速度,也就是打开使用的时候不至于很卡,很慢。并不会改变在你运行Instance run 时候的速度。

3:提高Instance Run的速度。

之前我的项目不大,运行一次大概是37min,随便修改个参数也需要运行29min。很是无奈。之后的时间里,寻找解决办法。一遍忍受着龟速的编译速度完成工作开发,一边找寻如何处理的方法。其中滋味很是难受。

3.1:查询自己项目编译时哪一环节使用时间最多。

在androidstudio中,如图:

android studio 变慢 android studio太卡了怎么办_java

双击 Gradle/app/build/assembleRelease或者assembleDebug,这两个只是生成正式版或者测试版。没有什么问题

打开androidstudio中的run窗口如图:

android studio 变慢 android studio太卡了怎么办_java_02

然后会显示编译时每个环节中所需要的时间。因为写blog,所以这里不能直接贴出我公司项目中的运行编译实际图。但是这种方法在你遇到这种编译慢的问题上是通用的。

还有一点,run窗口显示的是这样的

android studio 变慢 android studio太卡了怎么办_java_03

点击一下箭头所指的按钮就可以了。

3.2:当你的项目编译完成之后,各个环节的编译运行时间便会明显的显示出来。然后你可以针对性的进行处理。

当你知道具体的问题后,处理起来也就相对容易了。技术问题直接可以问度娘。它知道的太多了。

因为每个人的问题都有所不同,上面的方法只是告诉你如何查找根本原因。授之以渔吧。希望能对大家有所帮助。

我项目中的解决方法:

1:配置gradle

修改你gradle中配置内容,一般情况下windows系统中gradle的安装目录环境在:

C:\Users[name].gradle 下:修改文件gradle.properties

# When set to true the Gradle daemon is to run the build. # TODO: disable daemon on CI, since builds should be clean and reliable on servers org.gradle.daemon=true # Specifies the JVM arguments used for the daemon process. # The setting is particularly useful for tweaking memory settings. # Default value: -Xmx10248m -XX:MaxPermSize=256m org.gradle.jvmargs=-Xmx2048m -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8 # 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 # Enables new incubating mode that makes Gradle selective when configuring projects. # Only relevant projects are configured which results in faster builds for large multi-projects. # http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:configuration_on_demand org.gradle.configureondemand=true

2:配置自己的android中的一些参数

android studio 变慢 android studio太卡了怎么办_android studio 变慢_04

android studio 变慢 android studio太卡了怎么办_编译速度_05

但是对于我的项目中,并没有起多大的作用罢了。

在自己的项目中build.gradle添加一些配置(即专业说法就是gradle脚本):

/*忽略方法数超过65535检查*/ android{ ... dexOptions { jumboMode = true preDexLibraries = false } /*关闭编译运行时检测*/ lintOptions{ checkReleaseBuilds false abortOnError false } }

即使经过上面的种种配置,但是我的项目编译速度依旧没有改善,也一直不知道原因。所以就使用上述的第三种方式,也是成功的方法: 查看所有编译过程中最耗时的环节:

所以我的项目整体完全编译下来最浪费时间的是由于这个步骤:

android studio 变慢 android studio太卡了怎么办_java_06

耗时超过35min。很尬。

具体原因在于自己使用了java1.8中的Lambda表达式的方式。所以在编译中会出现transformJackWithJackForDebug的超级耗时。

我试探性的将Lambda的配置取消。将自己项目中使用过的Lambda表达式的地方修改为正常表达式。整个项目编译运行3min21s.虽然没有达到秒编译的程度,但是相对之前的龟速,已经可以完成正常工作。

这里我的方法是取消掉Lambda使用,但是我觉得Lambda表达在一定程度上优化编译方式,书写方式,对于android中的兼容和检测提供了很大的帮助。所以在后面如果时间允许,还是希望能够使用Lambda表达式。之后找到一篇在使用Lambda表达式的条件下,如何加快编译速度的文章。有兴趣的朋友可以查看 在配置Lambda的情况下如何加快编译速度

因为是英文的,大致意思如下:

将你工程中的build.gradle中添加

dependencies { classpath 'com.android.tools.build:gradle:2.3.1' classpath 'me.tatarka:gradle-retrolambda:3.2.3' }

然后在你项目中的build.gradle文件添加

apply plugin: 'me.tatarka.retrolambda'

这个方法我目前还没有测试过。但是根据别人的经验应该可行。

最后:在Intance Run 的时候会出现如下的问题

android studio 变慢 android studio太卡了怎么办_java_07

解决办法 :将自己的app/proguard-rules.pro这个文件中添加:

-keepattributes EnclosingMethod -keepattributes InnerClasses -keepattributes EnclosingMethod -keepattributes InnerClasses -keepattributes InnerClasses -dontoptimize -keep class com.baidu.** {*;} -dontwarn com.baidu.**

新年的脚步慢慢的来临,一年又过去了,真不知道自己这一年到底收获了什么。也许很多,也许很少。但无论如何,以全新的姿态迎接新的一年。



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

      专题文章
        CopyRight 2018-2019 实验室设备网 版权所有