子类的 Pro Guard 混淆
Pro Guard obfuscation for subclass
我已经尝试对我的项目进行混淆。我想混淆每个代码,但 public void onClick(...
没有混淆。
这是我的代码
private void aa(boolean z) {
if (!z) {
fv a = new fv.a(this).a();
a.setTitle("Internet Connection");
a.setMessage("Koneksi Internet dibutuhkan untuk menggunakan aplikasi ini");
a.setButton(-2, "Buka pengaturan wifi", new OnClickListener(this) {
final /* synthetic */ MainActivity a;
{
this.a = r1;
}
public void onClick(DialogInterface dialogInterface, int i) {
this.a.startActivity(new Intent("android.settings.WIFI_SETTINGS"));
dialogInterface.dismiss();
}
});
a.show();
a.setCanceledOnTouchOutside(false);
}
能看到吗,public void onClick(...
还是原来的样子
这是我的proguard
-optimizations !code/simplification/arithmetic
-optimizationpasses 5
-allowaccessmodification
-useuniqueclassmembernames
-overloadaggressively
-repackageclasses '~'
-microedition
-dontwarn android.support.**
-printmapping out.map
-renamesourcefileattribute SourceFile
-assumenosideeffects class android.util.Log {
public static *** d(...);
public static *** i(...);
public static *** v(...);
}
"onClick()"无法重命名,因为它是系统接口class的实现。如果名称被更改,系统将不知道调用什么方法。您还注意到 "startActivity()" 和 "dismiss()" 也没有重命名。
我已经尝试对我的项目进行混淆。我想混淆每个代码,但 public void onClick(...
没有混淆。
这是我的代码
private void aa(boolean z) {
if (!z) {
fv a = new fv.a(this).a();
a.setTitle("Internet Connection");
a.setMessage("Koneksi Internet dibutuhkan untuk menggunakan aplikasi ini");
a.setButton(-2, "Buka pengaturan wifi", new OnClickListener(this) {
final /* synthetic */ MainActivity a;
{
this.a = r1;
}
public void onClick(DialogInterface dialogInterface, int i) {
this.a.startActivity(new Intent("android.settings.WIFI_SETTINGS"));
dialogInterface.dismiss();
}
});
a.show();
a.setCanceledOnTouchOutside(false);
}
能看到吗,public void onClick(...
还是原来的样子
这是我的proguard
-optimizations !code/simplification/arithmetic
-optimizationpasses 5
-allowaccessmodification
-useuniqueclassmembernames
-overloadaggressively
-repackageclasses '~'
-microedition
-dontwarn android.support.**
-printmapping out.map
-renamesourcefileattribute SourceFile
-assumenosideeffects class android.util.Log {
public static *** d(...);
public static *** i(...);
public static *** v(...);
}
"onClick()"无法重命名,因为它是系统接口class的实现。如果名称被更改,系统将不知道调用什么方法。您还注意到 "startActivity()" 和 "dismiss()" 也没有重命名。