| [mw_shl_code=java,true]package com.jj.mobile.pay; 
 import android.app.Activity;
 import android.content.ComponentName;
 import android.content.Intent;
 import android.content.ServiceConnection;
 import android.content.pm.PackageInfo;
 import android.content.pm.PackageManager;
 import android.net.Uri;
 import android.os.Bundle;
 import android.os.Handler;
 import android.os.IBinder;
 import android.os.RemoteException;
 import android.util.Log;
 import android.widget.LinearLayout;
 import com.alipay.android.app.IAlixPay;
 import com.alipay.android.app.IAlixPay.Stub;
 import com.alipay.android.app.IRemoteServiceCallback;
 import com.alipay.android.app.IRemoteServiceCallback.Stub;
 import com.jj.mobile.JJLine;
 import com.jj.mobile.common.CommonAlertDialog;
 import com.jj.mobile.common.CommonAlertDialog.CommonAlertDialogBtnClickListener;
 import com.jj.mobile.common.CommonProgressDialog;
 import java.io.File;
 import java.io.FileOutputStream;
 import java.io.IOException;
 import java.io.InputStream;
 import java.io.OutputStream;
 import java.net.HttpURLConnection;
 import java.net.URL;
 import java.util.ArrayList;
 import java.util.List;
 import org.apache.http.client.entity.UrlEncodedFormEntity;
 import org.apache.http.message.BasicNameValuePair;
 import org.json.JSONException;
 import org.json.JSONObject;
 
 public class AlipayViewController
 extends LinearLayout
 {
 private static final int DIALOG_ID_ASK_DOWNLOAD_ALIPAY = 1;
 private static final int DIALOG_ID_CHECK_ALIPAY = 0;
 private static final int DIALOG_ID_DOWNLOAD = 2;
 private static final int DIALOG_ID_GUIDE_TO_BIND_NO_REG = 11;
 private static final int DIALOG_ID_WAIT_ORDER = 10;
 private static final String TAG = "AlipayViewController";
 public static final String VERSION = "version";
 public static final String actdata = "data";
 public static final String action = "action";
 public static final String actionUpdate = "update";
 public static AlipayViewController g_instance = null;
 public static final String partner = "partner";
 public static final String platform = "platform";
 public static final String server_url = "https://msp.alipay.com/x.htm";
 private Integer LOCK = Integer.valueOf(1);
 private int amount = 0;
 private IRemoteServiceCallback m_AlipayCallback = new IRemoteServiceCallback.Stub()
 {
 public boolean isHideLoadingScreen()
 throws RemoteException
 {
 return false;
 }
 
 public void payEnd(boolean paramAnonymousBoolean, String paramAnonymousString)
 throws RemoteException
 {}
 
 public void startActivity(String paramAnonymousString1, String paramAnonymousString2, int paramAnonymousInt, Bundle paramAnonymousBundle)
 throws RemoteException
 {
 Intent localIntent = new Intent("android.intent.action.MAIN", null);
 Log.i("AlipayViewController", "m_AlipayCallback, startActivity, packageName=" + paramAnonymousString1 + ", className=" + paramAnonymousString2 + ", iCallingPid=" + paramAnonymousInt);
 if (paramAnonymousBundle == null) {
 paramAnonymousBundle = new Bundle();
 }
 try
 {
 paramAnonymousBundle.putInt("CallingPid", paramAnonymousInt);
 localIntent.putExtras(paramAnonymousBundle);
 localIntent.setClassName(paramAnonymousString1, paramAnonymousString2);
 JJLine.instance.startActivity(localIntent);
 return;
 }
 catch (Exception localException)
 {
 for (;;)
 {
 localException.printStackTrace();
 }
 }
 }
 };
 private String m_AlipayDownloadUrl = null;
 private IAlixPay m_AlixPay = null;
 private ServiceConnection m_AlixPayConnection = new ServiceConnection()
 {
 public void onServiceConnected(ComponentName paramAnonymousComponentName, IBinder paramAnonymousIBinder)
 {
 Log.i("AlipayViewController", "onServiceConnected IN");
 synchronized (AlipayViewController.this.LOCK)
 {
 AlipayViewController.this.m_AlixPay = IAlixPay.Stub.asInterface(paramAnonymousIBinder);
 AlipayViewController.this.LOCK.notify();
 return;
 }
 }
 
 public void onServiceDisconnected(ComponentName paramAnonymousComponentName)
 {
 Log.i("AlipayViewController", "onServiceDisconnected IN");
 AlipayViewController.this.m_AlixPay = null;
 }
 };
 private CommonAlertDialog m_AskDownload = null;
 private CommonProgressDialog m_ProgressDialog = null;
 private boolean m_bAlipayOK = false;
 private boolean m_bPaying = false;
 private String m_strRet = null;
 private CommonAlertDialog m_toRegisterDialog = null;
 
 public AlipayViewController(Activity paramActivity)
 {
 super(paramActivity);
 g_instance = this;
 }
 
 private String SendAndWaitResponse(String paramString1, String paramString2)
 {
 String str = null;
 ArrayList localArrayList = new ArrayList();
 localArrayList.add(new BasicNameValuePair("requestData", paramString1));
 HttpURLConnection localHttpURLConnection = null;
 try
 {
 UrlEncodedFormEntity localUrlEncodedFormEntity = new UrlEncodedFormEntity(localArrayList, "utf-8");
 localHttpURLConnection = (HttpURLConnection)new URL(paramString2).openConnection();
 localHttpURLConnection.setConnectTimeout(15000);
 localHttpURLConnection.setReadTimeout(15000);
 localHttpURLConnection.setDoOutput(true);
 localHttpURLConnection.addRequestProperty("Content-type", "application/x-www-form-urlencoded;charset=utf-8");
 localHttpURLConnection.connect();
 OutputStream localOutputStream = localHttpURLConnection.getOutputStream();
 localUrlEncodedFormEntity.writeTo(localOutputStream);
 localOutputStream.flush();
 str = JJLine.convertStreamToString(localHttpURLConnection.getInputStream());
 Log.i("AlipayViewController", "SendAndWaitResponse, strResponse=" + str);
 return str;
 }
 catch (IOException localIOException)
 {
 Log.e("AlipayViewController", "SendAndWaitResponse ERROR, msg=" + localIOException.getMessage());
 localIOException.printStackTrace();
 return str;
 }
 finally
 {
 localHttpURLConnection.disconnect();
 }
 }
 
 private boolean checkAlipay()
 {
 Log.i("AlipayViewController", "test check alipay");
 boolean bool = checkAlipayExist();
 if (!bool)
 {
 askCreateDialog(0);
 new Thread(new Runnable()
 {
 public void run()
 {
 AlipayViewController.this.m_AlipayDownloadUrl = AlipayViewController.this.getAlipayURL();
 AlipayViewController.this.askDestroyDialog(0);
 Log.i("AlipayViewController", "getAlipayURL run, url=" + AlipayViewController.this.m_AlipayDownloadUrl);
 if (AlipayViewController.this.m_AlipayDownloadUrl != null)
 {
 JJLine.mHandler.post(new Runnable()
 {
 public void run()
 {
 AlipayViewController.this.askCreateDialog(1);
 }
 });
 return;
 }
 JJLine.mHandler.post(new Runnable()
 {
 public void run()
 {
 JJLine.prompt(JJLine.instance, "检查支付宝状态失败,请稍后重试!");
 }
 });
 }
 }).start();
 }
 return bool;
 }
 
 private boolean checkAlipayExist()
 {
 List localList = JJLine.instance.getPackageManager().getInstalledPackages(0);
 for (int i = 0;; i++)
 {
 int j = localList.size();
 boolean bool = false;
 if (i >= j) {}
 for (;;)
 {
 Log.i("AlipayViewController", "checkAlipayExist OUT, bRet=" + bool);
 return bool;
 if (!((PackageInfo)localList.get(i)).packageName.equalsIgnoreCase("com.alipay.android.app")) {
 break;
 }
 bool = true;
 }
 }
 }
 
 private String getAlipayURL()
 {
 try
 {
 JSONObject localJSONObject1 = new JSONObject();
 localJSONObject1.put("action", "update");
 JSONObject localJSONObject2 = new JSONObject();
 localJSONObject2.put("platform", "android");
 localJSONObject2.put("version", "0");
 localJSONObject2.put("partner", "");
 localJSONObject1.put("data", localJSONObject2);
 JSONObject localJSONObject3 = sendRequest(localJSONObject1.toString());
 Object localObject = null;
 if (localJSONObject3 != null)
 {
 boolean bool = localJSONObject3.getString("needUpdate").equalsIgnoreCase("true");
 localObject = null;
 if (bool)
 {
 String str = localJSONObject3.getString("updateUrl");
 localObject = str;
 }
 }
 return (String)localObject;
 }
 catch (JSONException localJSONException)
 {
 Log.e("AlipayViewController", "getAlipayURL ERROR, msg=" + localJSONException.getMessage());
 localJSONException.printStackTrace();
 }
 return null;
 }
 
 private int getEcaschemeId(int paramInt)
 {
 switch (paramInt)
 {
 default:
 return -1;
 case 1000:
 return 0;
 case 3000:
 return 38;
 case 10000:
 return 39;
 case 30000:
 return 40;
 }
 return 41;
 }
 
 private String getPrompt(int paramInt)
 {
 switch (paramInt)
 {
 default:
 return "亲!支付失败," + "请稍后重试!";
 case 9000:
 return "亲!恭喜您支付成功!请稍后查收!";
 case 4001:
 return "亲!支付失败," + "数据格式不正确!";
 case 4003:
 return "亲!支付失败," + "您绑定的支付宝账号被冻结或不允许支付!";
 case 4004:
 return "亲!支付失败," + "该用户已解除绑定!";
 case 4005:
 return "亲!支付失败," + "绑定失败或没有绑定!";
 case 4006:
 return "亲!支付失败," + "订单支付失败!";
 case 4010:
 return "亲!支付失败," + "请重新绑定账户!";
 case 6000:
 return "亲!支付失败," + "支付宝服务正在升级,请稍后重试!";
 }
 return "亲!支付失败," + "中途取消支付!";
 }
 
 private JSONObject sendRequest(String paramString)
 {
 Log.i("AlipayViewController", "sendRequest IN, content=" + paramString);
 try
 {
 JSONObject localJSONObject1 = new JSONObject(SendAndWaitResponse(paramString, "https://msp.alipay.com/x.htm"));
 localJSONObject2 = localJSONObject1;
 }
 catch (Exception localException)
 {
 for (;;)
 {
 localException.printStackTrace();
 JSONObject localJSONObject2 = null;
 }
 }
 if (localJSONObject2 != null) {
 Log.i("AlipayViewController", "sendRequest,  jsonResponse=" + localJSONObject2.toString());
 }
 return localJSONObject2;
 }
 
 private boolean urlDownloadToFile(String paramString1, String paramString2)
 {
 Log.i("AlipayViewController", "urlDownloadToFile IN, strurl=" + paramString1);
 bool = false;
 if (paramString1 != null) {}
 for (;;)
 {
 try
 {
 HttpURLConnection localHttpURLConnection = (HttpURLConnection)new URL(paramString1).openConnection();
 localHttpURLConnection.setConnectTimeout(15000);
 localHttpURLConnection.setReadTimeout(15000);
 localHttpURLConnection.setDoInput(true);
 localHttpURLConnection.connect();
 InputStream localInputStream = localHttpURLConnection.getInputStream();
 File localFile = new File(paramString2);
 localFile.createNewFile();
 localFileOutputStream = new FileOutputStream(localFile);
 arrayOfByte = new byte[1024];
 i = localInputStream.read(arrayOfByte);
 if (i > 0) {
 continue;
 }
 localFileOutputStream.close();
 localInputStream.close();
 bool = true;
 }
 catch (IOException localIOException)
 {
 FileOutputStream localFileOutputStream;
 byte[] arrayOfByte;
 int i;
 Log.e("AlipayViewController", "urlDownloadToFile ERROR, msg=" + localIOException.getMessage());
 localIOException.printStackTrace();
 bool = false;
 continue;
 }
 Log.i("AlipayViewController", "urlDownloadToFile OUT, bRet=" + bool);
 return bool;
 localFileOutputStream.write(arrayOfByte, 0, i);
 }
 }
 
 protected void askCreateDialog(int paramInt)
 {
 switch (paramInt)
 {
 }
 do
 {
 do
 {
 do
 {
 do
 {
 return;
 } while (this.m_ProgressDialog != null);
 this.m_ProgressDialog = new CommonProgressDialog(JJLine.instance);
 this.m_ProgressDialog.setMessage("正在检查支付宝状态,请稍候...");
 this.m_ProgressDialog.setCancelable(false);
 this.m_ProgressDialog.show();
 return;
 } while (this.m_AskDownload != null);
 this.m_AskDownload = new CommonAlertDialog(JJLine.instance);
 this.m_AskDownload.setTitle("提示");
 this.m_AskDownload.setMessage("支付宝功能需下载支付宝插件,请确认是否下载?");
 this.m_AskDownload.setButton1("确认", new CommonAlertDialog.CommonAlertDialogBtnClickListener()
 {
 public void onClick()
 {
 AlipayViewController.this.askDestroyDialog(1);
 new Thread(new Runnable()
 {
 public void run()
 {
 JJLine.mHandler.post(new Runnable()
 {
 public void run()
 {
 AlipayViewController.this.askCreateDialog(2);
 }
 });
 String str1 = JJLine.instance.getCacheDir().getAbsolutePath() + "/alipay.apk";
 boolean bool = AlipayViewController.this.urlDownloadToFile(AlipayViewController.this.m_AlipayDownloadUrl, str1);
 JJLine.mHandler.post(new Runnable()
 {
 public void run()
 {
 AlipayViewController.this.askDestroyDialog(2);
 }
 });
 if (bool) {}
 try
 {
 String str2 = "chmod 777 " + str1;
 Runtime.getRuntime().exec(str2);
 Intent localIntent = new Intent("android.intent.action.VIEW");
 localIntent.addFlags(268435456);
 localIntent.setDataAndType(Uri.parse("file://" + str1), "application/vnd.android.package-archive");
 JJLine localJJLine = JJLine.instance;
 if (localJJLine != null)
 {
 Log.i("AlipayViewController", "DIALOG_ID_ASK_DOWNLOAD_ALIPAY IN, start activity");
 localJJLine.startActivity(localIntent);
 }
 return;
 }
 catch (IOException localIOException)
 {
 for (;;)
 {
 localIOException.printStackTrace();
 }
 }
 }
 }).start();
 }
 });
 this.m_AskDownload.setButton2("", new CommonAlertDialog.CommonAlertDialogBtnClickListener()
 {
 public void onClick()
 {
 AlipayViewController.this.askDestroyDialog(1);
 }
 });
 this.m_AskDownload.show();
 return;
 } while (this.m_ProgressDialog != null);
 this.m_ProgressDialog = new CommonProgressDialog(JJLine.instance);
 this.m_ProgressDialog.setMessage("正在下载支付宝,请稍候...");
 this.m_ProgressDialog.show();
 return;
 } while (this.m_ProgressDialog != null);
 this.m_ProgressDialog = new CommonProgressDialog(JJLine.instance);
 this.m_ProgressDialog.setMessage("正在生成订单,请稍候...");
 this.m_ProgressDialog.show();
 }
 
 protected void askDestroyDialog(int paramInt)
 {
 switch (paramInt)
 {
 }
 do
 {
 do
 {
 do
 {
 return;
 } while (this.m_ProgressDialog == null);
 this.m_ProgressDialog.dismiss();
 this.m_ProgressDialog = null;
 return;
 } while (this.m_AskDownload == null);
 this.m_AskDownload.dismiss();
 this.m_AskDownload = null;
 return;
 } while (this.m_toRegisterDialog == null);
 this.m_toRegisterDialog.dismiss();
 this.m_toRegisterDialog = null;
 }
 
 public boolean callAlipay(final String paramString)
 {
 if (!this.m_bAlipayOK)
 {
 Log.e("AlipayViewController", "pay OUT, alipay not detect");
 JJLine.prompt(JJLine.instance, "支付宝未安装,无法支付!");
 }
 do
 {
 return false;
 Log.i("AlipayViewController", "callAlipay IN, param=" + paramString + ", m_bPaying=" + this.m_bPaying);
 } while (this.m_bPaying);
 this.m_bPaying = true;
 if (this.m_AlixPay == null) {
 JJLine.instance.bindService(new Intent(IAlixPay.class.getName()), this.m_AlixPayConnection, 1);
 }
 new Thread(new Runnable()
 {
 /* Error */
 public void run()
 {
 // Byte code:
 //   0: ldc 31
 //   2: ldc 33
 //   4: invokestatic 39        android/util/Log:i        (Ljava/lang/String;Ljava/lang/String;)I
 //   7: pop
 //   8: aload_0
 //   9: getfield 19        com/jj/mobile/pay/AlipayViewController$6:this$0        Lcom/jj/mobile/pay/AlipayViewController;
 //   12: aconst_null
 //   13: invokestatic 42        com/jj/mobile/pay/AlipayViewController:access$12        (Lcom/jj/mobile/pay/AlipayViewController;Ljava/lang/String;)V
 //   16: aload_0
 //   17: getfield 19        com/jj/mobile/pay/AlipayViewController$6:this$0        Lcom/jj/mobile/pay/AlipayViewController;
 //   20: invokestatic 45        com/jj/mobile/pay/AlipayViewController:access$0        (Lcom/jj/mobile/pay/AlipayViewController;)Ljava/lang/Integer;
 //   23: astore 11
 //   25: aload 11
 //   27: monitorenter
 //   28: aload_0
 //   29: getfield 19        com/jj/mobile/pay/AlipayViewController$6:this$0        Lcom/jj/mobile/pay/AlipayViewController;
 //   32: invokestatic 49        com/jj/mobile/pay/AlipayViewController:access$7        (Lcom/jj/mobile/pay/AlipayViewController;)Lcom/alipay/android/app/IAlixPay;
 //   35: ifnonnull +13 -> 48
 //   38: aload_0
 //   39: getfield 19        com/jj/mobile/pay/AlipayViewController$6:this$0        Lcom/jj/mobile/pay/AlipayViewController;
 //   42: invokestatic 45        com/jj/mobile/pay/AlipayViewController:access$0        (Lcom/jj/mobile/pay/AlipayViewController;)Ljava/lang/Integer;
 //   45: invokevirtual 52        java/lang/Object:wait        ()V
 //   48: aload 11
 //   50: monitorexit
 //   51: aload_0
 //   52: getfield 19        com/jj/mobile/pay/AlipayViewController$6:this$0        Lcom/jj/mobile/pay/AlipayViewController;
 //   55: invokestatic 49        com/jj/mobile/pay/AlipayViewController:access$7        (Lcom/jj/mobile/pay/AlipayViewController;)Lcom/alipay/android/app/IAlixPay;
 //   58: aload_0
 //   59: getfield 19        com/jj/mobile/pay/AlipayViewController$6:this$0        Lcom/jj/mobile/pay/AlipayViewController;
 //   62: invokestatic 56        com/jj/mobile/pay/AlipayViewController:access$8        (Lcom/jj/mobile/pay/AlipayViewController;)Lcom/alipay/android/app/IRemoteServiceCallback;
 //   65: invokeinterface 62 2 0
 //   70: aload_0
 //   71: getfield 19        com/jj/mobile/pay/AlipayViewController$6:this$0        Lcom/jj/mobile/pay/AlipayViewController;
 //   74: aload_0
 //   75: getfield 19        com/jj/mobile/pay/AlipayViewController$6:this$0        Lcom/jj/mobile/pay/AlipayViewController;
 //   78: invokestatic 49        com/jj/mobile/pay/AlipayViewController:access$7        (Lcom/jj/mobile/pay/AlipayViewController;)Lcom/alipay/android/app/IAlixPay;
 //   81: aload_0
 //   82: getfield 21        com/jj/mobile/pay/AlipayViewController$6:val$param        Ljava/lang/String;
 //   85: invokeinterface 66 2 0
 //   90: invokestatic 42        com/jj/mobile/pay/AlipayViewController:access$12        (Lcom/jj/mobile/pay/AlipayViewController;Ljava/lang/String;)V
 //   93: ldc 31
 //   95: new 68        java/lang/StringBuilder
 //   98: dup
 //   99: ldc 70
 //   101: invokespecial 73        java/lang/StringBuilder:<init>        (Ljava/lang/String;)V
 //   104: aload_0
 //   105: getfield 19        com/jj/mobile/pay/AlipayViewController$6:this$0        Lcom/jj/mobile/pay/AlipayViewController;
 //   108: invokestatic 77        com/jj/mobile/pay/AlipayViewController:access$10        (Lcom/jj/mobile/pay/AlipayViewController;)Ljava/lang/String;
 //   111: invokevirtual 81        java/lang/StringBuilder:append        (Ljava/lang/String;)Ljava/lang/StringBuilder;
 //   114: invokevirtual 85        java/lang/StringBuilder:toString        ()Ljava/lang/String;
 //   117: invokestatic 39        android/util/Log:i        (Ljava/lang/String;Ljava/lang/String;)I
 //   120: pop
 //   121: aload_0
 //   122: getfield 19        com/jj/mobile/pay/AlipayViewController$6:this$0        Lcom/jj/mobile/pay/AlipayViewController;
 //   125: iconst_0
 //   126: invokestatic 89        com/jj/mobile/pay/AlipayViewController:access$6        (Lcom/jj/mobile/pay/AlipayViewController;Z)V
 //   129: aload_0
 //   130: getfield 19        com/jj/mobile/pay/AlipayViewController$6:this$0        Lcom/jj/mobile/pay/AlipayViewController;
 //   133: invokestatic 49        com/jj/mobile/pay/AlipayViewController:access$7        (Lcom/jj/mobile/pay/AlipayViewController;)Lcom/alipay/android/app/IAlixPay;
 //   136: aload_0
 //   137: getfield 19        com/jj/mobile/pay/AlipayViewController$6:this$0        Lcom/jj/mobile/pay/AlipayViewController;
 //   140: invokestatic 56        com/jj/mobile/pay/AlipayViewController:access$8        (Lcom/jj/mobile/pay/AlipayViewController;)Lcom/alipay/android/app/IRemoteServiceCallback;
 //   143: invokeinterface 92 2 0
 //   148: getstatic 98        com/jj/mobile/JJLine:instance        Lcom/jj/mobile/JJLine;
 //   151: aload_0
 //   152: getfield 19        com/jj/mobile/pay/AlipayViewController$6:this$0        Lcom/jj/mobile/pay/AlipayViewController;
 //   155: invokestatic 102        com/jj/mobile/pay/AlipayViewController:access$9        (Lcom/jj/mobile/pay/AlipayViewController;)Landroid/content/ServiceConnection;
 //   158: invokevirtual 106        com/jj/mobile/JJLine:unbindService        (Landroid/content/ServiceConnection;)V
 //   161: getstatic 110        com/jj/mobile/JJLine:mHandler        Landroid/os/Handler;
 //   164: new 112        com/jj/mobile/pay/AlipayViewController$6$1
 //   167: dup
 //   168: aload_0
 //   169: invokespecial 115        com/jj/mobile/pay/AlipayViewController$6$1:<init>        (Lcom/jj/mobile/pay/AlipayViewController$6;)V
 //   172: invokevirtual 121        android/os/Handler:post        (Ljava/lang/Runnable;)Z
 //   175: pop
 //   176: return
 //   177: astore 12
 //   179: aload 11
 //   181: monitorexit
 //   182: aload 12
 //   184: athrow
 //   185: astore 5
 //   187: ldc 31
 //   189: new 68        java/lang/StringBuilder
 //   192: dup
 //   193: ldc 123
 //   195: invokespecial 73        java/lang/StringBuilder:<init>        (Ljava/lang/String;)V
 //   198: aload 5
 //   200: invokevirtual 126        java/lang/Exception:getMessage        ()Ljava/lang/String;
 //   203: invokevirtual 81        java/lang/StringBuilder:append        (Ljava/lang/String;)Ljava/lang/StringBuilder;
 //   206: invokevirtual 85        java/lang/StringBuilder:toString        ()Ljava/lang/String;
 //   209: invokestatic 129        android/util/Log:e        (Ljava/lang/String;Ljava/lang/String;)I
 //   212: pop
 //   213: aload 5
 //   215: invokevirtual 132        java/lang/Exception:printStackTrace        ()V
 //   218: aload_0
 //   219: getfield 19        com/jj/mobile/pay/AlipayViewController$6:this$0        Lcom/jj/mobile/pay/AlipayViewController;
 //   222: iconst_0
 //   223: invokestatic 89        com/jj/mobile/pay/AlipayViewController:access$6        (Lcom/jj/mobile/pay/AlipayViewController;Z)V
 //   226: aload_0
 //   227: getfield 19        com/jj/mobile/pay/AlipayViewController$6:this$0        Lcom/jj/mobile/pay/AlipayViewController;
 //   230: invokestatic 49        com/jj/mobile/pay/AlipayViewController:access$7        (Lcom/jj/mobile/pay/AlipayViewController;)Lcom/alipay/android/app/IAlixPay;
 //   233: aload_0
 //   234: getfield 19        com/jj/mobile/pay/AlipayViewController$6:this$0        Lcom/jj/mobile/pay/AlipayViewController;
 //   237: invokestatic 56        com/jj/mobile/pay/AlipayViewController:access$8        (Lcom/jj/mobile/pay/AlipayViewController;)Lcom/alipay/android/app/IRemoteServiceCallback;
 //   240: invokeinterface 92 2 0
 //   245: getstatic 98        com/jj/mobile/JJLine:instance        Lcom/jj/mobile/JJLine;
 //   248: aload_0
 //   249: getfield 19        com/jj/mobile/pay/AlipayViewController$6:this$0        Lcom/jj/mobile/pay/AlipayViewController;
 //   252: invokestatic 102        com/jj/mobile/pay/AlipayViewController:access$9        (Lcom/jj/mobile/pay/AlipayViewController;)Landroid/content/ServiceConnection;
 //   255: invokevirtual 106        com/jj/mobile/JJLine:unbindService        (Landroid/content/ServiceConnection;)V
 //   258: getstatic 110        com/jj/mobile/JJLine:mHandler        Landroid/os/Handler;
 //   261: new 112        com/jj/mobile/pay/AlipayViewController$6$1
 //   264: dup
 //   265: aload_0
 //   266: invokespecial 115        com/jj/mobile/pay/AlipayViewController$6$1:<init>        (Lcom/jj/mobile/pay/AlipayViewController$6;)V
 //   269: invokevirtual 121        android/os/Handler:post        (Ljava/lang/Runnable;)Z
 //   272: pop
 //   273: return
 //   274: astore 7
 //   276: ldc 31
 //   278: new 68        java/lang/StringBuilder
 //   281: dup
 //   282: ldc 134
 //   284: invokespecial 73        java/lang/StringBuilder:<init>        (Ljava/lang/String;)V
 //   287: aload 7
 //   289: invokevirtual 126        java/lang/Exception:getMessage        ()Ljava/lang/String;
 //   292: invokevirtual 81        java/lang/StringBuilder:append        (Ljava/lang/String;)Ljava/lang/StringBuilder;
 //   295: invokevirtual 85        java/lang/StringBuilder:toString        ()Ljava/lang/String;
 //   298: invokestatic 129        android/util/Log:e        (Ljava/lang/String;Ljava/lang/String;)I
 //   301: pop
 //   302: aload 7
 //   304: invokevirtual 132        java/lang/Exception:printStackTrace        ()V
 //   307: goto -49 -> 258
 //   310: astore_1
 //   311: aload_0
 //   312: getfield 19        com/jj/mobile/pay/AlipayViewController$6:this$0        Lcom/jj/mobile/pay/AlipayViewController;
 //   315: iconst_0
 //   316: invokestatic 89        com/jj/mobile/pay/AlipayViewController:access$6        (Lcom/jj/mobile/pay/AlipayViewController;Z)V
 //   319: aload_0
 //   320: getfield 19        com/jj/mobile/pay/AlipayViewController$6:this$0        Lcom/jj/mobile/pay/AlipayViewController;
 //   323: invokestatic 49        com/jj/mobile/pay/AlipayViewController:access$7        (Lcom/jj/mobile/pay/AlipayViewController;)Lcom/alipay/android/app/IAlixPay;
 //   326: aload_0
 //   327: getfield 19        com/jj/mobile/pay/AlipayViewController$6:this$0        Lcom/jj/mobile/pay/AlipayViewController;
 //   330: invokestatic 56        com/jj/mobile/pay/AlipayViewController:access$8        (Lcom/jj/mobile/pay/AlipayViewController;)Lcom/alipay/android/app/IRemoteServiceCallback;
 //   333: invokeinterface 92 2 0
 //   338: getstatic 98        com/jj/mobile/JJLine:instance        Lcom/jj/mobile/JJLine;
 //   341: aload_0
 //   342: getfield 19        com/jj/mobile/pay/AlipayViewController$6:this$0        Lcom/jj/mobile/pay/AlipayViewController;
 //   345: invokestatic 102        com/jj/mobile/pay/AlipayViewController:access$9        (Lcom/jj/mobile/pay/AlipayViewController;)Landroid/content/ServiceConnection;
 //   348: invokevirtual 106        com/jj/mobile/JJLine:unbindService        (Landroid/content/ServiceConnection;)V
 //   351: getstatic 110        com/jj/mobile/JJLine:mHandler        Landroid/os/Handler;
 //   354: new 112        com/jj/mobile/pay/AlipayViewController$6$1
 //   357: dup
 //   358: aload_0
 //   359: invokespecial 115        com/jj/mobile/pay/AlipayViewController$6$1:<init>        (Lcom/jj/mobile/pay/AlipayViewController$6;)V
 //   362: invokevirtual 121        android/os/Handler:post        (Ljava/lang/Runnable;)Z
 //   365: pop
 //   366: aload_1
 //   367: athrow
 //   368: astore_2
 //   369: ldc 31
 //   371: new 68        java/lang/StringBuilder
 //   374: dup
 //   375: ldc 134
 //   377: invokespecial 73        java/lang/StringBuilder:<init>        (Ljava/lang/String;)V
 //   380: aload_2
 //   381: invokevirtual 126        java/lang/Exception:getMessage        ()Ljava/lang/String;
 //   384: invokevirtual 81        java/lang/StringBuilder:append        (Ljava/lang/String;)Ljava/lang/StringBuilder;
 //   387: invokevirtual 85        java/lang/StringBuilder:toString        ()Ljava/lang/String;
 //   390: invokestatic 129        android/util/Log:e        (Ljava/lang/String;Ljava/lang/String;)I
 //   393: pop
 //   394: aload_2
 //   395: invokevirtual 132        java/lang/Exception:printStackTrace        ()V
 //   398: goto -47 -> 351
 //   401: astore 14
 //   403: ldc 31
 //   405: new 68        java/lang/StringBuilder
 //   408: dup
 //   409: ldc 134
 //   411: invokespecial 73        java/lang/StringBuilder:<init>        (Ljava/lang/String;)V
 //   414: aload 14
 //   416: invokevirtual 126        java/lang/Exception:getMessage        ()Ljava/lang/String;
 //   419: invokevirtual 81        java/lang/StringBuilder:append        (Ljava/lang/String;)Ljava/lang/StringBuilder;
 //   422: invokevirtual 85        java/lang/StringBuilder:toString        ()Ljava/lang/String;
 //   425: invokestatic 129        android/util/Log:e        (Ljava/lang/String;Ljava/lang/String;)I
 //   428: pop
 //   429: aload 14
 //   431: invokevirtual 132        java/lang/Exception:printStackTrace        ()V
 //   434: goto -273 -> 161
 // Local variable table:
 //   start        length        slot        name        signature
 //   0        437        0        this        6
 //   310        57        1        localObject1        Object
 //   368        27        2        localException1        Exception
 //   185        29        5        localException2        Exception
 //   274        29        7        localException3        Exception
 //   177        6        12        localObject2        Object
 //   401        29        14        localException4        Exception
 // Exception table:
 //   from        to        target        type
 //   28        48        177        finally
 //   48        51        177        finally
 //   179        182        177        finally
 //   0        28        185        java/lang/Exception
 //   51        121        185        java/lang/Exception
 //   182        185        185        java/lang/Exception
 //   226        258        274        java/lang/Exception
 //   0        28        310        finally
 //   51        121        310        finally
 //   182        185        310        finally
 //   187        218        310        finally
 //   319        351        368        java/lang/Exception
 //   129        161        401        java/lang/Exception
 }
 }).start();
 return true;
 }
 
 public void pay(int paramInt) {}
 }
 [/mw_shl_code]
 
 本人小白初学逆向,求大神帮忙分析一下支付验证是通过网络还是服务器验证的。求大神支招
 
 
 |