android-为什么proguard只会混淆没有扩展任何内容的类
作者:互联网
我试图用proguard混淆我的android应用程序.但问题是当我反编译apk时,它仅显示更改的变量名称,但类名称与源中的名称相同.仅更改了一个类的名称,而没有扩展任何其他类.我搜索了很多选项,但没有任何用处我在这里发布我的问题.
这是我的gradle文件代码:-
buildTypes {
release {
minifyEnabled true
proguardFiles getDefaultProguardFile('proguard-android.txt'),
'proguard-rules.pro'
}
}
并在我的proguard rules.pro文件中
-ignorewarnings
请在这件事上给予我帮助
谢谢:)
解决方法:
我不知道您的情况到底是什么问题,但是我已经通过以下Proguard规则解决了我的问题,它们是各种规则,可以帮助您保护应用程序
-dontskipnonpubliclibraryclassmembers
-dontshrink
-dontoptimize
-printmapping build/libs/output/obfuscation.map
-keepattributes
-adaptclassstrings
-dontnote
-dontwarn
# Keep Android classes
-keep class ** extends android.** {
<fields>;
<methods>;
}
# Keep serializable classes & fields
-keep class ** extends java.io.Serializable {
<fields>;
}
# Keep - Applications. Keep all application classes, along with their 'main'
# methods.
-keepclasseswithmembers public class * {
public static void main(java.lang.String[]);
}
# Also keep - Enumerations. Keep the special static methods that are required in
# enumeration classes.
-keepclassmembers enum * {
public static **[] values();
public static ** valueOf(java.lang.String);
}
-assumenosideeffects class android.util.Log {
public static *** d(...);
public static *** e(...);
public static *** w(...);
}
有关更多信息,您可以访问Proguard official site
标签:android,security,android-proguard 来源: https://codeday.me/bug/20191010/1886093.html