当前位置: 首页 > 知识库问答 >
问题:

通过Gradle和Android Studio2.0构建和运行应用程序的速度较慢

廖夜洛
2023-03-14

我有一个多项目(2个模块),它的建设需要大约1/2分钟每次。当我在Android Studio按下Run的时候,我每次都要等待才能重建app,慢得不得了。每次都用了6/8分钟。

在Android Studio中有没有可能实现构建过程的自动化?或者对于如何让这个过程更快,你有什么建议吗?

这是我的build.gradle文件(应用程序模块):

allprojects {
    repositories {
        mavenCentral()
        maven {  url "https://jitpack.io" }
        maven { url 'http://clinker.47deg.com/nexus/content/groups/public' }
    }
}

apply plugin: 'com.android.application'

dependencies {
    compile 'com.dlazaro66.qrcodereaderview:qrcodereaderview:1.0.0'
    compile fileTree(dir: 'libs', include: '*.jar')
    compile('com.fortysevendeg.swipelistview:swipelistview:1.0-SNAPSHOT@aar') {
        transitive = true
    }
    compile 'com.android.support:multidex:1.0.1'
    compile 'com.github.nirhart:parallaxscroll:1.0'

    compile 'com.github.amlcurran.showcaseview:library:5.0.0'
    compile 'com.android.support:support-v4:22.0.1'
    compile 'com.android.support:appcompat-v7:22.0.1'
    compile 'com.android.support:design:22.2.+'
    compile 'com.rengwuxian.materialedittext:library:2.1.4'
    compile 'com.nineoldandroids:library:2.4.0'
    compile 'com.daimajia.easing:library:1.0.1@aar'
    compile 'com.daimajia.androidanimations:library:1.1.3@aar'
    compile 'com.pnikosis:materialish-progress:1.7'
    compile 'com.github.fenjuly:ArrowDownloadButton:9e15b85e8a'
    compile 'ch.acra:acra:4.5.0'
    compile 'com.yalantis:contextmenu:1.0.5'
        compile project(':locationlib')
    }

    configurations {
        compile.exclude group: 'javax.inject', module: 'javax.inject'
    }

    android {
        compileSdkVersion 22
        buildToolsVersion '22.0.1'

    compileOptions {

        encoding "UTF-8"
        sourceCompatibility JavaVersion.VERSION_1_7
        targetCompatibility JavaVersion.VERSION_1_7
    }
    lintOptions {
        abortOnError false
    }

    dexOptions {
        javaMaxHeapSize "8g"
        jumboMode true
    }


    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }

    packagingOptions {
        exclude 'META-INF/DEPENDENCIES.txt'
        exclude 'META-INF/DEPENDENCIES'
        exclude 'META-INF/dependencies.txt'
        exclude 'META-INF/LICENSE.txt'
        exclude 'META-INF/LICENSE'
        exclude 'META-INF/license.txt'
        exclude 'META-INF/LGPL2.1'
        exclude 'META-INF/NOTICE.txt'
        exclude 'META-INF/NOTICE'
        exclude 'META-INF/notice.txt'
        exclude 'META-INF/INDEX.LIST'
        exclude 'META-INF/ASL2.0'

    }
    defaultConfig {
        targetSdkVersion 22
        renderscriptTargetApi 19
        renderscriptSupportModeEnabled false
        multiDexEnabled true
    }
    productFlavors {
    }

    afterEvaluate {
        tasks.matching {
            it.name.startsWith('dex')
        }.each { dx ->
            if (dx.additionalParameters == null) {
                dx.additionalParameters = []
            }
            dx.additionalParameters += '--multi-dex'

        }
    }
   } 
-Xms256m
-Xmx1280m
-XX:MaxPermSize=350m
-XX:ReservedCodeCacheSize=240m
-XX:+UseConcMarkSweepGC
-XX:SoftRefLRUPolicyMSPerMB=50
-ea
-XX:-OmitStackTraceInFastThrow
-Djna.nosys=true
-Djna.boot.library.path=

-Djna.debug_load=true
-Djna.debug_load.jna=true
-Dsun.io.useCanonCaches=false
-Djava.net.preferIPv4Stack=true
-XX:+HeapDumpOnOutOfMemoryError
-XX:-OmitStackTraceInFastThrow
-Didea.paths.selector=AndroidStudioPreview2.0
-Didea.platform.prefix=AndroidStudio

共有1个答案

尉迟宇定
2023-03-14

您应该使用Android Studio1.5.1,它比以前版本的Android Studio1.5.1快得多。

 类似资料:
  • 我有申请。我通过 或调试 它起作用了。我如何将'-xmx'参数传递到我运行的应用程序(调试)中?有没有可能做到这一点而不影响文件? 这是我将它作为一个普通的Java应用程序运行的时候 在第二种情况下,当我使用-xms、-xmx作为普通Java应用程序运行应用程序时,提交的内存大小约为3.5GiB,因为我传递了参数。

  • 我们已经使用jmap在Java 6下运行的大型多服务器应用程序上测量堆大小大约2年了。我们每分钟测量一次。每次测量所用的时间(经过的时间)不到1秒。 我们现在正在Java 7下测试同一个应用程序。现在突然之间,jmap通常需要10秒、20秒,有时甚至更长时间,而且它似乎慢了下来(甚至可能停止!)在那段时间里,JVM。 我们在jmap输出中看到的唯一区别(Java6和Java7之间)是关于有多少字符

  • 问题内容: 我将尝试第一个AngularJS项目,并且在后端使用Node.js是有意义的,尽管这意味着同时从头开始学习AngularJS和Node.js。 我想要弄清楚的第一件事是一个好的文件结构。到目前为止,我的纯HTML / CSS模板具有以下目录结构… (_site是PSD等的工作目录。) 我发现一个Node.js的一个例子的目录结构/ AngularJS应用程式这里 .... …表示以下目

  • 我正在尝试运行,但它似乎没有按应有的方式工作。我正在尝试以下命令: 创建react应用程序我的应用程序 cd我的应用程序 npm启动 如果您可以帮助此处输入图像描述,那么在尝试运行时会出现以下错误

  • 目前,我的网络应用程序运行在两个基于云的视窗2012 R2服务器上——一个运行Tomcat,一个运行SQL服务器Express。视窗服务器是4GB英特尔XEON(R)CPU E5-2660 v2@2.20 Gghz 我正在Azure的PaaS(平台即服务)上测试我的应用程序。我用Tomcat 9.0创建了一个Linux Web应用程序来保存应用程序(P1V2),用Azure SQL Server保

  • 问题内容: 我正在尝试使用Gradle构建相对简单的JavaFX应用程序。但是,我不知道该怎么做。 我是Gradle的新手,对于简单的(非javafx)项目,我已经成功使用了插件,并构建和打包了库和命令行应用程序。 但是,关于JavaFX,我完全陷入困境。我已经阅读了这篇文章,该文章建议使用该插件,但是我只能找到该插件的源代码,但是没有关于如何实际使用它的文档(在文章中,他们只是从远程URL应用它