2017-07-16 1 views
1

J'ai activé minifyEnabled à vrai, mais après cela, je ne suis pas en mesure de générer apk signé.Impossible de générer APk signé après avoir défini minifyEnabled vrai

Il montre avertissement et erreur:

Warning:com.fasterxml.jackson.databind.ext.DOMSerializer: can't find referenced class org.w3c.dom.bootstrap.DOMImplementationRegistry 
Warning:okio.DeflaterSink: can't find referenced class org.codehaus.mojo.animal_sniffer.IgnoreJRERequirement 
Warning:okio.Okio: can't find referenced class java.nio.file.Files 
Warning:okio.Okio: can't find referenced class java.nio.file.Path 
Warning:okio.Okio: can't find referenced class java.nio.file.OpenOption 
Warning:okio.Okio: can't find referenced class java.nio.file.Path 
Warning:okio.Okio: can't find referenced class java.nio.file.OpenOption 
Warning:okio.Okio: can't find referenced class org.codehaus.mojo.animal_sniffer.IgnoreJRERequirement 
Warning:okio.Okio: can't find referenced class java.nio.file.Path 
Warning:okio.Okio: can't find referenced class java.nio.file.OpenOption 
Warning:okio.Okio: can't find referenced class java.nio.file.Path 
Warning:okio.Okio: can't find referenced class java.nio.file.OpenOption 
Warning:okio.Okio: can't find referenced class org.codehaus.mojo.animal_sniffer.IgnoreJRERequirement 
Warning:retrofit2.Platform$Java8: can't find referenced method 'boolean isDefault()' in library class java.lang.reflect.Method 
Warning:retrofit2.Platform$Java8: can't find referenced class java.lang.invoke.MethodHandles$Lookup 
Warning:retrofit2.Platform$Java8: can't find referenced class java.lang.invoke.MethodHandle 
Warning:retrofit2.Platform$Java8: can't find referenced class java.lang.invoke.MethodHandles 
Warning:retrofit2.Platform$Java8: can't find referenced class java.lang.invoke.MethodHandle 
Warning:retrofit2.Platform$Java8: can't find referenced class java.lang.invoke.MethodHandles$Lookup 
Warning:retrofit2.Platform$Java8: can't find referenced class org.codehaus.mojo.animal_sniffer.IgnoreJRERequirement 
Warning:there were 27 unresolved references to classes or interfaces. 
Warning:there were 1 unresolved references to library class members. 
Warning:Exception while processing task java.io.IOException: Please correct the above warnings first. 
Error:Execution failed for task ':app:transformClassesAndResourcesWithProguardForRelease'. 
> Job failed, see logs for details 

Maintenant, quand j'ai mis minifyEnabled false, il me permettra de générer signé apk mais je veux mettre le mettre à true.

Comment puis-je résoudre ce problème?

+0

S'il vous plaît voir la façon dont vous configurez votre Proguard à la bibliothèque le cas échéant est à l'origine d'un problème. Vérifiez ce https://stackoverflow.com/questions/33589318/error-building-apk-when-minifyenabled-true –

Répondre

0

Ceci est un problème avec okio et proguard.

Suivez this link pour une explication détaillée Mais en bref, il semble que vous ayez besoin d'ajouter ces lignes au fichier proguard-rules dans votre projet.

-dontwarn okhttp3.** 
-dontwarn okio.** 
+0

Voir aussi ce post https://stackoverflow.com/questions/36737073/how-to-fix-warning- cant-find-classe en référence android-Eclipse-proguard-RUL/37745414 # 37745414 – ApriOri

+0

j'ai défini: classe '-keep com.fasterxml.jackson.databind.ObjectMapper { public; protégé ; } -keep classe com.fasterxml.jackson.databind.ObjectWriter { public ** writeValueAsString (**); } -keepnames classe com.fasterxml.jackson. ** {*; } -dontwarn com.fasterxml.jackson.databind. ** -dontwarn okhttp3. ** -dontwarn Okio. ** -dontwarn retrofit2.Platform $ Java8' mais après toute erreur résolue mais l'application ne peut pas à appelé toutes les fonctions – deepak

1

Ajoutez ces lignes dans le fichier ProGuard règles:

-dontwarn okhttp3.** 
-dontwarn okio.** 
-dontwarn com.fasterxml.jackson.databind.** 

Reference

+0

j'ai défini: '-keep class com.fasterxml.jackson.databind.ObjectMapper { public ; protégé ; } -keep classe com.fasterxml.jackson.databind.ObjectWriter { public ** writeValueAsString (**); } -keepnames classe com.fasterxml.jackson. ** {*; } -dontwarn com.fasterxml.jackson.databind. ** -dontwarn okhttp3. ** -dontwarn Okio. ** -dontwarn retrofit2.Platform $ Java8' mais après toute erreur résolue mais l'application ne peut pas appeler toutes les fonctions. – deepak

+0

@deepak https://stackoverflow.com/a/11249755/6244429 –

+0

Toujours pas de travail !!!! – deepak