2014-12-16 22 views
7

Nie mogę wygenerować podpisanego pliku APK dla mojej aplikacji, utknąłem z błędem java.io.IOException Wykonywanie nie powiodło się dla zadania: 'app: proguardRelease' Mam to, co myślę, że jest podstawowy plik Gradle patrz niżejWykonywanie Androida nie powiodło się dla aplikacji zadania: proguardRelease

apply plugin: 'com.android.application' 

android { 
    compileSdkVersion 21 
    buildToolsVersion "21.1.1" 

    defaultConfig { 
     applicationId "com.okason.clients" 
     minSdkVersion 16 
     targetSdkVersion 21 
     versionCode 1 
     versionName "1.0" 
    } 
    buildTypes { 
     release { 
      minifyEnabled true 
      proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' 
     } 
    } 
} 

dependencies { 
    compile fileTree(dir: 'libs', include: ['*.jar']) 
    compile 'com.google.api-client:google-api-client:1.19.0' 
    compile 'com.google.android.gms:play-services:6.1.71' 
    compile 'com.android.support:support-v4:21.0.0' 
    compile 'com.android.support:appcompat-v7:21.0.0' 
} 

wygenerowany plik Proguard-rules.pro jest pusty amd nie dotknął plik PROGUARD-android.txt w SDK. Próbowałem nawet skopiować ten plik do katalogu głównego aplikacji, aby znaleźć się w tej samej lokalizacji co plik app.gradle bez powodzenia.

Próbowałem uruchomić to polecenie gradlew.bat assembleRelease na ten [SO Question][1] z sukcesem. Proszę, niech ktoś obejrzy i powie mi, co robię źle. Zaktualizowałem SDK i Android Studio do najnowszych wersji.

+0

Jaki jest dokładny błąd, który otrzymujesz? Istnieje wiele IOExceptions. –

+0

Oto błąd Wykonanie nie powiodło się dla zadania: "app: proguardRelease –

Odpowiedz

8

rozwiązał ten problem przez ustawienie minifyEnabled wierny minifyEnabled fałszywego w pliku app.gradle

+36

Ale to tylko wyłącza Proguard, prawda? Co się stanie, jeśli nadal chcę włączyć proguard? – Suragch

+0

Odpowiedź Sinenesa na temat używania -nowarn powinna być zaakceptowaną odpowiedzią. Nie to. – Logic1

+0

poprawne rozwiązanie powinno zostać rozwiązane: proguard enable – amorenew

2

myślę Sir można uniknąć błędów bez wyłączania PROGUARD. Sprawdź ten answer przez Sir Eric Schlenz w odniesieniu do tego problemu. Aby dostać się do punktu, w którym kompilacja przejdzie przez progu, musisz dodać pozycje -dontwarn dla pakietów, na które skarżyłeś się do pliku proguard-project.txt.

Powiązane problemy