android technicolor - Méthode Gradle DSL non trouvée:'runProguard'




pas modem (5)

Je reçois une erreur après la mise à jour de mon dernier projet. Pas de problème dans mon code mais j'ai des problèmes avec build.gradle. Comment puis-je le réparer?

build.gradle code ici:

apply plugin: 'android'

android {
    compileSdkVersion 21
    buildToolsVersion '20.0.0'

    packagingOptions {
        exclude 'META-INF/DEPENDENCIES'
        exclude 'META-INF/LICENSE'
        exclude 'META-INF/LICENSE.txt'
        exclude 'META-INF/license.txt'
        exclude 'META-INF/NOTICE'
        exclude 'META-INF/NOTICE.txt'
        exclude 'META-INF/notice.txt'
        exclude 'META-INF/ASL2.0'
    }

    defaultConfig {
        applicationId 'com.xxx.axxx'
        minSdkVersion 14
        targetSdkVersion 19
        versionCode 6
        versionName '1.0'
    }
    buildTypes {
        release {
            runProguard false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
    productFlavors {
    }
}

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile 'com.android.support:appcompat-v7:19.+'
    compile files('libs/commons-codec-1.8.jar')
    compile files('libs/asmack-android-8-4.0.4.jar')
    compile 'com.android.support:support-v4:21.0.0'
    compile 'com.google.code.gson:gson:2.2.4'
    compile 'com.jakewharton:butterknife:5.1.1'
}

Sortie du message Gradle Sync:

Error:(27, 0) Gradle DSL method not found: 'runProguard()'
**Possible causes:
The project 'Atomic4Mobile' may be using a version of Gradle that does not contain the method.
**Gradle settings**
The build file may be missing a Gradle plugin.
**Apply Gradle plugin**

Answers

runProguard a été renommé minifyEnabled dans la version 0.14.0 (2014/10/31) ou plus dans Gradle.

Pour résoudre ce problème, vous devez remplacer runProguard par minifyEnabled dans le fichier build.gradle de votre projet.


L'utilisation de ' minifyEnabled ' au lieu de ' runProguard ' fonctionne correctement.

Previous code :

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

Current code :

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

J'espère que cela t'aides .


Si vous utilisez la version 0.14.0 ou supérieure du plugin gradle, vous devriez remplacer "runProguard" par "minifyEnabled" dans vos fichiers build.gradle.

runProguard a été renommé en minifyEnabled dans la version 0.14.0. Pour plus d'informations, tools.android.com/tech-docs/new-build-system



Ici, de Shawns répondre et le commentaire de SpunkerBaba, je suis sorti avec cette classe d'aide. Cela arrête le problème de l'ajout de ce que vous modifiez en ajoutant à votre URL.

package com.your.package;

public class Linkify {

    /**
     * @param textView
     *            textView who's text you want to change
     * @param linkThis
     *            a regex of what text to turn into a link
     * @param toThis
     *            the url you want to send them to
     */
    public static void addLinks(TextView textView, String linkThis, String toThis) {
        Pattern pattern = Pattern.compile(linkThis);
        String scheme = toThis;
        android.text.util.Linkify.addLinks(textView, pattern, scheme, new MatchFilter() {
            @Override
            public boolean acceptMatch(CharSequence s, int start, int end) {
                return true;
            }
        }, new TransformFilter() {

            @Override
            public String transformUrl(Matcher match, String url) {
                return "";
            }
        });
    }

}

Useage:

 Linkify.addLinks(profileTextView, "BlundellApps.com", "http://www.BlundellApps.com");




android gradle android-gradle