package com.test;import android.content.Context;
import android.os.Handler;
import android.os.Message;public abstract class Action
{
protected Context context;
private int errorCode = 2;
private int loadingCode = 0;
private Logger log = Logger.getLogger(getClass());
private int successCode = 1; public Action(Context paramContext, int paramInt1, int paramInt2, int paramInt3)
{
this.context = paramContext;
this.loadingCode = paramInt1;
this.successCode = paramInt2;
this.errorCode = paramInt3;
} protected abstract Message getMsgFromCache(Params paramParams)
throws Exception; protected abstract Message getMsgFromMasterServer(Params paramParams)
throws Exception; protected abstract Message getMsgFromSlaveServer(Params paramParams)
throws Exception; protected abstract Message parser(String paramString)
throws Exception; public Message run(Params paramParams)
{
try
{
Message localMessage3 = getMsgFromMasterServer(paramParams);
return localMessage3;
}
catch (Exception localException1)
{
localException1.printStackTrace();
try
{
Message localMessage2 = getMsgFromSlaveServer(paramParams);
return localMessage2;
}
catch (Exception localException2)
{
localException2.printStackTrace();
try
{
Message localMessage1 = getMsgFromCache(paramParams);
return localMessage1;
}
catch (Exception localException3)
{
localException3.printStackTrace();
}
}
}
return null;
} public void run(final Handler paramHandler, final Params paramParams)
{
new Thread()
{
public void run()
{
paramHandler.sendEmptyMessage(Action.this.loadingCode);
try
{
Message localMessage5 = Action.this.getMsgFromMasterServer(paramParams);
if (localMessage5 != null)
{
paramHandler.sendMessage(localMessage5);
return;
}
}
catch (Exception localException1)
{
Action.this.log.e(localException1);
try
{
Message localMessage4 = Action.this.getMsgFromSlaveServer(paramParams);
localObject2 = localMessage4;
if (localObject2 != null)
{
paramHandler.sendMessage((Message)localObject2);
return;
}
}
catch (Exception localException2)
{
while (true)
{
Object localObject2;
Action.this.log.e(localException2);
try
{
Message localMessage3 = Action.this.getMsgFromCache(paramParams);
localObject2 = localMessage3;
}
catch (Exception localException3)
{
Action.this.log.e(localException3);
localObject2 = null;
}
}
}
}
finally
{
if (0 != 0)
paramHandler.sendMessage(null);
while (true)
{
throw localObject1;
Message localMessage2 = new Message();
localMessage2.what = Action.this.errorCode;
localMessage2.obj = "链接失败";
paramHandler.sendMessage(localMessage2);
return;
Message localMessage1 = new Message();
localMessage1.what = Action.this.errorCode;
localMessage1.obj = "链接失败";
paramHandler.sendMessage(localMessage1);
}
Message localMessage6 = new Message();
localMessage6.what = Action.this.errorCode;
localMessage6.obj = "链接失败";
paramHandler.sendMessage(localMessage6);
}
}
}
.start();
}
}
就是下面的run方法不知道怎么组合反编译androidrun
import android.os.Handler;
import android.os.Message;public abstract class Action
{
protected Context context;
private int errorCode = 2;
private int loadingCode = 0;
private Logger log = Logger.getLogger(getClass());
private int successCode = 1; public Action(Context paramContext, int paramInt1, int paramInt2, int paramInt3)
{
this.context = paramContext;
this.loadingCode = paramInt1;
this.successCode = paramInt2;
this.errorCode = paramInt3;
} protected abstract Message getMsgFromCache(Params paramParams)
throws Exception; protected abstract Message getMsgFromMasterServer(Params paramParams)
throws Exception; protected abstract Message getMsgFromSlaveServer(Params paramParams)
throws Exception; protected abstract Message parser(String paramString)
throws Exception; public Message run(Params paramParams)
{
try
{
Message localMessage3 = getMsgFromMasterServer(paramParams);
return localMessage3;
}
catch (Exception localException1)
{
localException1.printStackTrace();
try
{
Message localMessage2 = getMsgFromSlaveServer(paramParams);
return localMessage2;
}
catch (Exception localException2)
{
localException2.printStackTrace();
try
{
Message localMessage1 = getMsgFromCache(paramParams);
return localMessage1;
}
catch (Exception localException3)
{
localException3.printStackTrace();
}
}
}
return null;
} public void run(final Handler paramHandler, final Params paramParams)
{
new Thread()
{
public void run()
{
paramHandler.sendEmptyMessage(Action.this.loadingCode);
try
{
Message localMessage5 = Action.this.getMsgFromMasterServer(paramParams);
if (localMessage5 != null)
{
paramHandler.sendMessage(localMessage5);
return;
}
}
catch (Exception localException1)
{
Action.this.log.e(localException1);
try
{
Message localMessage4 = Action.this.getMsgFromSlaveServer(paramParams);
localObject2 = localMessage4;
if (localObject2 != null)
{
paramHandler.sendMessage((Message)localObject2);
return;
}
}
catch (Exception localException2)
{
while (true)
{
Object localObject2;
Action.this.log.e(localException2);
try
{
Message localMessage3 = Action.this.getMsgFromCache(paramParams);
localObject2 = localMessage3;
}
catch (Exception localException3)
{
Action.this.log.e(localException3);
localObject2 = null;
}
}
}
}
finally
{
if (0 != 0)
paramHandler.sendMessage(null);
while (true)
{
throw localObject1;
Message localMessage2 = new Message();
localMessage2.what = Action.this.errorCode;
localMessage2.obj = "链接失败";
paramHandler.sendMessage(localMessage2);
return;
Message localMessage1 = new Message();
localMessage1.what = Action.this.errorCode;
localMessage1.obj = "链接失败";
paramHandler.sendMessage(localMessage1);
}
Message localMessage6 = new Message();
localMessage6.what = Action.this.errorCode;
localMessage6.obj = "链接失败";
paramHandler.sendMessage(localMessage6);
}
}
}
.start();
}
}
就是下面的run方法不知道怎么组合反编译androidrun
想把逻辑完全还原需要多试几次。