transformClassesAndResourcesWithproguardforrelease' erreur dans Android
Salut, je suis de la difficulté à créer de la version pour mon projet. J'ai été essayer beaucoup de choses sur Progaurd à travers, de SORTE que /Google aide, mais je ne suis pas encore capable de créer la version.
Quelqu'un peut-il m'aider? J'ai toujours ce problème:
Error:Execution failed for task ':app:transformClassesAndResourcesWithProguardForRelease'. > java.io.IOException: Please correct the above warnings first.
Voici les détails de l'erreur: http://justpaste.it/perror désolé, j'ai dû mettre un lien parce que c'est énorme.
Ici sont des dépendances:
//compile fileTree(dir: 'libs', include: ['*.jar'])
testCompile 'junit:junit:4.12'
compile 'com.android.support:appcompat-v7:23.1.1'
compile 'com.android.support:design:23.1.1'
compile 'com.rengwuxian.materialedittext:library:2.1.4'
compile 'com.squareup.picasso:picasso:2.5.2'
compile 'com.nostra13.universalimageloader:universal-image-loader:1.9.4'
compile 'org.apache.httpcomponents:httpcore:4.4.1'
compile 'com.squareup.retrofit:retrofit:1.9.0'
compile 'com.loopj.android:android-async-http:1.4.8'
compile 'com.android.support:cardview-v7:23.1.1'
compile 'com.android.support:recyclerview-v7:23.1.1'
compile project(':pageIndicator')
compile 'com.github.neopixl:PixlUI:v1.0.6'
compile 'com.github.bumptech.glide:glide:3.6.1'
Mon progaurd fichier:
# You can edit the include path and order by changing the ProGuard
# include property in project.properties.
#
# For more details, see
# http://developer.android.com/guide/developing/tools/proguard.html
# Add any project specific keep options here:
# If your project uses WebView with JS, uncomment the following
# and specify the fully qualified class name to the JavaScript interface
# class:
-dontwarn com.google.code.**
-dontwarn org.apache.**
-dontwarn jp.wasabeef.recyclerview.**
-dontwarn com.nostra13.universalimageloader.**
-dontwarn org.acra.**
#wasabeef recyclerview
-keep class jp.wasabeef.recyclerview.** { *; }
-keepattributes Signature
#HTTP Legacy
-keep class org.apache.** { *; }
-keepattributes Signature
#Universal Image Loader
-keep class com.nostra13.universalimageloader.** { *; }
-keepattributes Signature
#Acra
-keep class org.acra.** { *; }
-keepattributes Signature
#Support libraries
-keep class com.android.** { *; }
-keepattributes Signature
# Keep the annotations
-keepattributes *Annotation*
-allowaccessmodification
-keepattributes *Annotation*
-renamesourcefileattribute SourceFile
-keepattributes SourceFile,LineNumberTable
-repackageclasses ''
-dontnote com.android.vending.licensing.ILicensingService
# Explicitly preserve all serialization members. The Serializable interface
# is only a marker interface, so it wouldn't save them.
-keepclassmembers class * implements java.io.Serializable {
static final long serialVersionUID;
private static final java.io.ObjectStreamField[] serialPersistentFields;
private void writeObject(java.io.ObjectOutputStream);
private void readObject(java.io.ObjectInputStream);
java.lang.Object writeReplace();
java.lang.Object readResolve();
}
# Preserve all native method names and the names of their classes.
-keepclasseswithmembernames class * {
native <methods>;
}
-keepclasseswithmembernames class * {
public <init>(android.content.Context, android.util.AttributeSet);
}
-keepclasseswithmembernames class * {
public <init>(android.content.Context, android.util.AttributeSet, int);
}
# Preserve static fields of inner classes of R classes that might be accessed
# through introspection.
-keepclassmembers class **.R$* {
public static <fields>;
}
# Preserve the special static methods that are required in all enumeration classes.
-keepclassmembers enum * {
public static **[] values();
public static ** valueOf(java.lang.String);
}
-keep public class * {
public protected *;
}
-keep class * implements android.os.Parcelable {
public static final android.os.Parcelable$Creator *;
}
-keep class com.splunk.** { *; }
-keep public class * extends android.app.Activity
-keep public class * extends android.app.Application
-keep public class * extends android.app.Service
-keep public class * extends android.content.BroadcastReceiver
-keep public class * extends android.content.ContentProvider
-keep public class * extends android.app.backup.BackupAgentHelper
-keep public class * extends android.preference.Preference
-keep public class com.android.vending.licensing.ILicensingService
-keepclasseswithmembernames class * {
native <methods>;
}
-keepclasseswithmembers class * {
public <init>(android.content.Context, android.util.AttributeSet);
}
-keepclasseswithmembers class * {
public <init>(android.content.Context, android.util.AttributeSet, int);
}
-keepclassmembers class * extends android.app.Activity {
public void *(android.view.View);
}
-keepclassmembers enum * {
public static **[] values();
public static ** valueOf(java.lang.String);
}
-keep class * implements android.os.Parcelable {
public static final android.os.Parcelable$Creator *;
}
-keep class com.splunk.** { *; }
-dontwarn rx.**
-dontwarn okio.**
-dontwarn com.squareup.okhttp.**
-keep class com.squareup.okhttp.** { *; }
-keep interface com.squareup.okhttp.** { *; }
-keep class org.apache.http.** { *; }
-dontwarn org.apache.http.**
-dontwarn android.net.**
-dontwarn retrofit.**
-dontwarn retrofit.appengine.UrlFetchClient
-keep class retrofit.** { *; }
-keepclasseswithmembers class * {
@retrofit.http.* <methods>;
}
-keepattributes Signature
-keepattributes *Annotation*
-keep class sun.misc.Unsafe { *; }
#your package path where your gson models are stored
-keep class com.ylg.others.** { *; }
ressembler problème avec gradle fichier
Ce genre de question a déjà été le cas lors de la version du SDK, gradle de version et de build version des outils sont incompatibles: stackoverflow.com/questions/33877134/... j'ai été confronté au même problème, et n'ont pas été en mesure de le résoudre. J'ai temporairement fixé par la mise en
si nous faisons cela, il ne sera pas Obscurcir mon code de droit?
u ne trouver la solution à ce problème?
Nope. Avez-vous une chance de l'obtenir?
Ce genre de question a déjà été le cas lors de la version du SDK, gradle de version et de build version des outils sont incompatibles: stackoverflow.com/questions/33877134/... j'ai été confronté au même problème, et n'ont pas été en mesure de le résoudre. J'ai temporairement fixé par la mise en
minifyEnabled
à false
.si nous faisons cela, il ne sera pas Obscurcir mon code de droit?
u ne trouver la solution à ce problème?
Nope. Avez-vous une chance de l'obtenir?
OriginalL'auteur Sanjana Nair | 2015-11-30
Vous devez vous connecter pour publier un commentaire.
Dans votre ProGuard fichier ajouter:
-ignorewarnings
comme :
Vous n'avez pas à spécifier un paquet comme
com.viewpagerindicator.**
, cela va supprimer tous les avertissements et toutes lesGradle Console
dirai tout simplement comme :OriginalL'auteur
Dans votre ProGuard fichier ajouter:
-dontwarn com.viewpagerindicator.**
Si vous ouvrez le lien que vous avez fourni et de la recherche pour "Avertissement" environ les deux tiers vers le bas, vous pouvez voir le message:
Warning:com.viewpagerindicator.LinePageIndicator: can't find referenced method 'float ceil(float)' in library class android.util.FloatMath
Si il y a des avertissements ProGuard va s'arrêter et vous demander de résoudre en premier, ou si votre code fonctionne, vous pouvez choisir de les ignorer avec
dontwarn
.Mise à jour 05/01/2017
Si l'avertissement dit
in program class
il est probable que votre compilé les fichiers de classe sont incompatible, essayez de supprimer tous les et et la reconstruction de votre projet.Si l'avertissement dit
in library class
votre compilé les fichiers de classe sont incompatibles avec les bibliothèques. Essayez de recompiler les fichiers de classe ou la mise à niveau des bibliothèques à la cohérence des versions.Vous pouvez en lire plus ici.
^ Je suis désespérément à essayer de comprendre pourquoi ProGuard ramasse ces références manquantes mais la régularité de construire n'est pas, et combien la menace qu'ils sont.
Merci cela a fonctionné pour moi
OriginalL'auteur Daniel Stanley
Ce qui m'a aidé a été de mettre à jour toutes les dépendances à la dernière version.
OriginalL'auteur beretis
Dans mon cas, le proguard fichier a été totalement ignorée, car le projet est constitué de plusieurs modules. Selon cette réponse, la solution a été de définir les éléments suivants dans la gradle du module à l'origine du problème:
Ce qui semble inclure le proguard du module dans l'application de proguard. Maintenant, mon
dontwarn
les déclarations sont prises en considération.OriginalL'auteur Raslanove