我正在尝试使用proguard来混淆非常简单的“Hello World”应用程序的源代码,我正在使用Eclipse IDE。Proguard-必须自定义proguard-project.txt才能混淆源代码?
我所采取的2个步骤迄今如下:
1. Removed comment in project.properties file to enable Proguard
2. Right clicked on project>Android tools>Export unsigned Application Project
我然后用于apktool以查看从所提取的APK的源代码。
我注意到Proguard并没有模糊应用程序中的源代码。它只是混淆了ActionBarActivity超类和XML Layout名称。如下所示:
package com.example.proguardtesttt;
import android.os.Bundle;
import android.support.v7.a.f;
import android.view.Menu;
import android.view.MenuInflater;
import android.view.MenuItem;
public class MainActivity extends f
{
protected void onCreate(Bundle paramBundle)
{
super.onCreate(paramBundle);
setContentView(2130903064);
}
public boolean onCreateOptionsMenu(Menu paramMenu)
{
getMenuInflater().inflate(2131492864, paramMenu);
return true;
}
public boolean onOptionsItemSelected(MenuItem paramMenuItem)
{
if (paramMenuItem.getItemId() == 2131034172)
return true;
return super.onOptionsItemSelected(paramMenuItem);
}
}
为什么会发生这种情况?我怎样才能确保混淆我所有的源代码呢?
注意:我几乎可以确定Proguard已启用,因为.apk比没有启用proguard的相同.apk小300kb。