2016-02-16 13 views
7

Badam funkcję "natychmiastowego uruchomienia" w Android Studio. Ale wygląda na to, że nie działa z proguardem. Czy jest ktoś, kto wie dlaczego i jak je połączyć?Natychmiastowe uruchamianie nie działa z proguardem

Moja okolica: Android Studio 2.0 Beta 4

Moja najwyższym poziomie build.gradle

buildscript { 
    repositories { 
     mavenCentral() 
     jcenter() 
    } 
    dependencies { 
     classpath 'com.android.tools.build:gradle:2.0.0-beta4' 
    } 
} 

allprojects { 
    repositories { 
     maven { url "http://dl.bintray.com/populov/maven" } 
     mavenCentral() 
     jcenter() 
    } 
} 

build.gradle dla modułu:

apply plugin: 'com.android.application' 

android { 
    compileSdkVersion 23 
    buildToolsVersion "23.0.2" 

    defaultConfig { 
     minSdkVersion 17 
     targetSdkVersion 23 
    } 
    buildTypes { 
     debug { 
      minifyEnabled false 
      proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' 
     } 
    } 
} 

dependencies { 
    compile 'com.android.support:appcompat-v7:23.1.1' 
} 

widzę niektóre po „instatn uruchom "zadania w gradle konsoli przy powyższym ustawieniu. I pojawia się żółty piorun z przyciskiem run.

:TestIR:transformClassesWithInstantRunVerifierForDebug 
:TestIR:transformClassesWithInstantRunForDebug 
:TestIR:transformClasses_enhancedWithInstant+reloadDexForDebug 
:TestIR:generateDebugInstantRunAppInfo 
:TestIR:transformClassesWithInstantRunSlicerForDebug 
Dexing C:\git\android\TestIR\build\intermediates\transforms\instantRunSlicer\debug\folders\1\5\slice_1 took 328 
Dexing C:\git\android\TestIR\build\intermediates\transforms\instantRunSlicer\debug\folders\1\5\slice_0 took 340 
Dexing C:\git\android\TestIR\build\intermediates\transforms\instantRunSlicer\debug\folders\1\5\slice_2 took 331 
Dexing C:\git\android\TestIR\build\intermediates\transforms\instantRunSlicer\debug\folders\1\5\slice_5 took 321 
Dexing C:\git\android\TestIR\build\intermediates\transforms\instantRunSlicer\debug\folders\1\5\slice_3 took 456 

Ale jeśli ustawić „minifyEnabled” to prawda, nie ma „instant run” zadaniem w Gradle pocieszyć więcej, albo żółty przycisk piorun.

Czy mimo to można je połączyć? usuń

+0

Dlaczego w ogóle działa proguard z funkcją run? Powinien działać tylko dla podpisanej aplikacji, prawda? –

+0

Jedną rzeczą, o której myślałem, to stworzenie typu buildu, który ma "minifyEnabled false" i testowanie tylko na nowszych urządzeniach podczas rozwijania, a następnie przełączania na debugowanie jednego – Mike

+1

@TaylorCourtney, gdy twój minsdk jest wystarczająco niski, musisz biegać progu po prostu, aby osiągnąć limit dex. Nie musisz go używać do zaciemniania, chyba że jest w produkcji, ale musisz przyciąć dodatkowe metody do testowania na starszych urządzeniach. – Mike

Odpowiedz

2

Zgodnie z oficjalną wersją this Strona programisty Androida, Android Studio wyłącza ProGuard podczas korzystania z Instant Run. enter image description here

0

1.Go do 'konfiguracje run/debug' Android konfiguracji aplikacji

2. Odtworzenie androidem konfiguracja aplikacji

3.Go do różne zakładki, odznacz 'wymuszenie zatrzymania aplikacji przed uruchomieniem działania '

+0

W '' minifyEnabled true' nie widzisz nawet przycisku uruchomienia z błyskawicą do natychmiastowego uruchomienia. Jedyny sposób, w jaki udało mi się to pokazać, to wyłączyć proguard, chyba że jest więcej kroków do tego, których brakuje – Mike

Powiązane problemy