号簿助手 v4.6.31版本的 MD5 值为:9d7ff98a6bb5cc178eac2df4d1b2f0e0

以下内容为反编译后的 PayHelper.java 源代码,内容仅作参考


package com.ffcs.inapppaylib;

import android.app.Activity;
import android.content.Context;
import android.os.Handler;
import android.os.Message;
import com.chinatelecom.pim.core.IConstant;
import com.chinatelecom.pim.core.manager.impl.AndroidFeedbackManagerImpl;
import com.chinatelecom.pim.core.schema.Reports;
import com.ffcs.crypt.CryptSign;
import com.ffcs.inapppaylib.bean.Constants;
import com.ffcs.inapppaylib.bean.response.BaseResponse;
import com.ffcs.inapppaylib.bean.response.IValidatableResponse;

public class PayHelper {
    private static PayHelper B;
    private Context C;
    private String D;
    private String E;
    private int F = IConstant.VoiceRecognition.SAMPLE_8K;
    private CryptSign G = new CryptSign();
    private com.ffcs.inapppaylib.a.a H;
    private a v;
    private Handler x;

    private PayHelper(Context context) {
        this.C = context;
    }

    public static void a(PayHelper payHelper, IValidatableResponse iValidatableResponse) {
        if (payHelper.v.y) {
            if (iValidatableResponse != null) {
                iValidatableResponse.getRes_code();
            }
            payHelper.v.a(1, "支付失败!");
        }
        if (iValidatableResponse == null) {
            iValidatableResponse = new IValidatableResponse();
            iValidatableResponse.setRes_code(-1);
            iValidatableResponse.setRes_message("json数据解析出错!");
        }
        Message message = new Message();
        message.obj = iValidatableResponse;
        message.what = Constants.RESULT_VALIDATE_FAILURE;
        payHelper.x.sendMessage(message);
    }

    public static synchronized PayHelper getInstance(Context context) {
        PayHelper payHelper;
        synchronized (PayHelper.class) {
            if (B == null) {
                B = new PayHelper(context);
            }
            payHelper = B;
        }
        return payHelper;
    }

    public final void a(String str, com.ffcs.inapppaylib.a.b bVar) {
        com.ffcs.inapppaylib.b.d.a(this.C);
        com.ffcs.inapppaylib.b.d.getTimestamp();
        String signAuth = this.G.signAuth(this.C, "trade_id=" + str + "&timestamp=" + com.ffcs.inapppaylib.b.d.getTimestamp(), this.E);
        com.ffcs.inapppaylib.b.d dVar = new com.ffcs.inapppaylib.b.d();
        dVar.a("trade_id", str);
        dVar.a("sign", signAuth);
        new com.a.a.a(this.F).a(com.a.a.b.b.d.POST, "http://118.85.194.4:8083/iapSms/ws/v3.0.1/mix/refreshVerifyCode", dVar, new j(this, bVar));
    }

    public final void a(String str, String str2, com.ffcs.inapppaylib.a.a aVar) {
        this.H = aVar;
        String str3 = "trade_id=" + str + "&verifyCode=" + str2 + "&timestamp=" + com.ffcs.inapppaylib.b.d.getTimestamp();
        com.ffcs.inapppaylib.b.d dVar = new com.ffcs.inapppaylib.b.d();
        dVar.a("trade_id", str);
        dVar.a("sign", this.G.signAuth(this.C, str3, this.E));
        new com.a.a.a(this.F).a(com.a.a.b.b.d.POST, "http://118.85.194.4:8083/iapSms/ws/v3.0.1/mix/billing", dVar, new i(this));
    }

    public void checkPurchase() {
    }

    public void init(String str, String str2) {
        this.D = str;
        this.E = str2;
    }

    public void monthlyOrder(Activity activity, String str, Handler handler) {
    }

    public void pay(Activity activity, String str, String str2, Handler handler, String str3) {
        boolean z = false;
        this.x = handler;
        this.v = a.a(activity, handler);
        String d = com.ffcs.inapppaylib.b.e.d(str2.substring(0, 4));
        if (str2.length() == 11 && str2.matches("[0-9]+") && !d.equals(AndroidFeedbackManagerImpl.SUCCESS_RESULT)) {
            z = true;
        }
        if (!z) {
            Message message = new Message();
            BaseResponse baseResponse = new BaseResponse();
            baseResponse.setRes_code(-1);
            baseResponse.setRes_message("请输入联通和电信手机号");
            message.what = Constants.RESULT_VALIDATE_FAILURE;
            message.obj = baseResponse;
            handler.sendMessage(message);
            return;
        }
        this.v.a();
        com.ffcs.inapppaylib.b.d.a(this.C);
        String authSign = this.G.authSign(this.C, "app_id=" + this.D + "&pay_code=" + str + "&timestamp=" + com.ffcs.inapppaylib.b.d.getTimestamp() + "&state=" + str3 + "&phone=" + str2, this.E);
        com.ffcs.inapppaylib.b.d dVar = new com.ffcs.inapppaylib.b.d();
        dVar.a("app_id", this.D);
        dVar.a("sign", authSign);
        dVar.a(Reports.Report.STATE, str3);
        new com.a.a.a(this.F).a(com.a.a.b.b.d.POST, "http://118.85.194.4:8083/iapSms/ws/v3.0.1/mix/validate", dVar, new h(this));
    }

    public void quitPay() {
        if (this.v != null) {
            this.v.y = false;
            if (this.v.p != null) {
                this.v.p.cancel();
            }
            if (this.v.w != null) {
                this.v.w.cancel();
            }
        }
    }

    public void setOnPayListener(com.ffcs.inapppaylib.a.a aVar) {
        this.H = aVar;
    }

    public void settimeout(int i) {
        this.F = i;
    }
}