【问题标题】:how to deobfuscation of android project [closed]如何对android项目进行去混淆[关闭]
【发布时间】:2014-02-21 05:24:47
【问题描述】:

我反编译了一个 apk,但结果项目中有 2000 多个错误。我认为这是由于混淆。任何人都可以指导我如何对这个项目进行反混淆或以其他方式获得无错误的源代码吗?

在下面的反编译类中,我在中断 Missing_BLOCK_LABEL 时遇到错误

public String FunTargetBetData(String s)
{
    String s1 = "";
    URL = ipList.SetUrlPath();
    if (URL == "" || s == "")
    {
        break MISSING_BLOCK_LABEL_134;
    }
    SoapPrimitive soapprimitive;
    try
    {
        SoapObject soapobject = new SoapObject("http://tempuri.org/", "FTargetBetDataProcess");
        soapobject.addProperty("indatastr", Encrypt(s, encryptKey));
        SoapSerializationEnvelope soapserializationenvelope = new SoapSerializationEnvelope(110);
        soapserializationenvelope.dotNet = true;
        soapserializationenvelope.setOutputSoapObject(soapobject);
        soapserializationenvelope.encodingStyle = "http://schemas.xmlsoap.org/soap/encoding/";
        (new HttpTransportSE(URL, TimeOut)).call("http://tempuri.org/AndIService1/FTargetBetDataProcess", soapserializationenvelope);
        soapprimitive = (SoapPrimitive)soapserializationenvelope.getResponse();
    }
    catch (SocketTimeoutException sockettimeoutexception)
    {
        sockettimeoutexception.printStackTrace();
        Log.d("FunTargetBetData SocketTimeoutException", sockettimeoutexception.toString());
        return "";
    }
    catch (Exception exception)
    {
        exception.printStackTrace();
        Log.d("FunTargetBetData Error", exception.toString());
        return "";
    }
    if (soapprimitive == null)
    {
        break MISSING_BLOCK_LABEL_134;
    }
    s1 = soapprimitive.toString();
    s1.trim();
    return s1;
}

【问题讨论】:

    标签: android reverse-engineering deobfuscation


    【解决方案1】:

    要反混淆,您需要在混淆时生成的 mapping.txt 文件。因此,只有生成了映射文件才能这样做。

    【讨论】:

    • 感谢 Bishwash 先生,但我没有 mapping.txt 文件。有没有其他办法?
    • 据我所知,没有 mapping.txt 就无法反混淆。
    猜你喜欢
    • 2017-09-21
    • 2016-02-08
    • 2021-12-26
    • 2022-01-18
    相关资源
    最近更新 更多