AndroidSDK的tools中提供了混淆和还原的jar文件,当然也可以直接下载ProGuard相关的jar:
http://sourceforge.net/projects/proguard/
命令行使用比较简单,参照提示即可,但是如何在通过代码调用呢?如下所示,需要注意的是execute()执行后,需要通过如下方式将标准输出写到文件中。
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.PrintStream;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import proguard.retrace.ReTrace;
public class RetraceUtil {
private Logger m_logger = LoggerFactory.getLogger(this.getClass());
private String stackFile;
private String mapFile;
private String outFile;
private boolean append;
public RetraceUtil(String map,String proF,String out,boolean append)
{
this.mapFile = map;
this.stackFile = proF;
this.outFile = ou