WXPayEntryActivity.java 1.79 KB
package com.whaty.nafmii.wxapi;

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.util.Log;

import com.polysoft.nafmii.wechat.WechatApi;
import com.tencent.mm.opensdk.constants.ConstantsAPI;
import com.tencent.mm.opensdk.modelbase.BaseReq;
import com.tencent.mm.opensdk.modelbase.BaseResp;
import com.tencent.mm.opensdk.openapi.IWXAPI;
import com.tencent.mm.opensdk.openapi.IWXAPIEventHandler;


public class WXPayEntryActivity extends Activity implements IWXAPIEventHandler {

    private static final String TAG = WXPayEntryActivity.class.getName();

    private IWXAPI api;

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        WechatApi.getInstance(this).handleIntent(getIntent(), this);
    }

    @Override
    protected void onNewIntent(Intent intent) {
        super.onNewIntent(intent);
        setIntent(intent);
        WechatApi.getInstance(this).handleIntent(intent, this);
    }

    @Override
    public void onReq(BaseReq req) {
    }

    @Override
    public void onResp(BaseResp resp) {
        Log.d(TAG, "onPayFinish, errCode = " + resp.errCode);
        if (resp.getType() != ConstantsAPI.COMMAND_PAY_BY_WX) {
            return;
        }

        int code = resp.errCode;
        if (code == BaseResp.ErrCode.ERR_OK) { // 支付成功
//            PayReceiver.sendBroadcast(this, PayResult.success(PayMode.WECHATPAY, null));
        } else if (code == BaseResp.ErrCode.ERR_USER_CANCEL) { // 用户取消
//            PayReceiver.sendBroadcast(this, PayResult.cancel(PayMode.WECHATPAY));
        } else { // 支付失败
            String errStr = resp.errStr;
//            PayReceiver.sendBroadcast(this, PayResult.fail(PayMode.WECHATPAY, errStr));
        }
        super.finish();
    }
}