我似乎已经尝试了互联网上各种文章中的所有设置,包括通过 -keep public class
排除我的所有类(class)。
应该使用什么设置才能不强制关闭?在这一点上,如果我能得到混淆,没有别的就好了。
以下是我尝试过的示例配置,但我的应用程序仍然强制关闭。有什么想法吗?
我关注了这篇文章以及其他文章:http://android-developers.blogspot.com/2010/09/proguard-android-and-licensing-server.html
仍然没有运气。任何帮助,将不胜感激。 谢谢
-optimizationpasses 5 -dontusemixedcaseclassnames -dontskipnonpubliclibraryclasses -dontpreverify -verbose -optimizations !code/simplification/arithmetic,!field/*,!class/merging/* -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 com.android.vending.licensing.ILicensingService -keepclasseswithmembernames class * { native ; } -keepclasseswithmembernames class * { public (android.content.Context, android.util.AttributeSet); } -keepclasseswithmembernames class * { public (android.content.Context, android.util.AttributeSet, int); } -keepclassmembers enum * { public static **[] values(); public static ** valueOf(java.lang.String); }
类似的选项:
-target 1.6 -optimizationpasses 5 -allowaccessmodification -dontusemixedcaseclassnames -dontskipnonpubliclibraryclasses -dontpreverify -verbose -dump class_files.txt -printseeds seeds.txt -printusage unused.txt -printmapping mapping.txt # The -optimizations option disables some arithmetic # simplifications that Dalvik 1.0 and 1.5 can't handle. -optimizations !code/simplification/arithmetic -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 View { public (android.content.Context); public (android.content.Context, android.util.AttributeSet); public (android.content.Context, android.util.AttributeSet, int); public void set*(...); } -keep public class com.android.vending.licensing.ILicensingService -keepclassmembers enum * { public static **[] values(); public static ** valueOf(java.lang.String); } -keep interface com.android.vending.licensing.* -keep public interface com.android.vending.licensing.ILicenseResultListener -keep public interface com.android.vending.licensing.ILicensingService -keepclassmembers enum * { public static **[] values(); public static ** valueOf(java.lang.String); }
最佳答案
只需在 proguard.cfg 文件中注释这一行并清理/重建您的项目:
#-keep public class com.android.vending.licensing.ILicensingService
关于Android ProGuard 设置与使用许可服务器不强制关闭的应用程序一起使用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3844363/