微信支付

 

1

public class WXPayEntryActivity extends Activity implements IWXAPIEventHandler {

    private IWXAPI api;

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        // setContentView(R.layout.pay_result);

        api = WXAPIFactory.createWXAPI(this, "wxb3852e6a6b7d9516",true);
        api.handleIntent(getIntent(), this);
    }

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

    @Override
    public void onReq(BaseReq req) {

        Toast.makeText(getApplicationContext(), "成功", Toast.LENGTH_LONG).show();

    }
  //支付结果
    @Override
    public void onResp(BaseResp resp) {
        if (TextUtils.isEmpty(resp.openId)) {
            Log.i("xml", "啥也没有");
        }

        if (resp.getType() == ConstantsAPI.COMMAND_PAY_BY_WX) {
            //  AlertDialog.Builder builder = new AlertDialog.Builder(this);
            //builder.setTitle("微信支付提示");
            switch (resp.errCode) {
                case 0://支付成功h
                    Toast.makeText(getApplicationContext(), "支付成功", Toast.LENGTH_SHORT).show();//builder.setMessage("支付成功.");

                    break;

                case -1://支付失败,一般是后端签名失败等问题
                    Toast.makeText(getApplicationContext(), "支付失败", Toast.LENGTH_SHORT).show();
                    // builder.setMessage("支付失败,请清理微信缓存或重新安装.");
                    break;

                case -2://用户取消了支付

                    Toast.makeText(getApplicationContext(), "支付已取消.", Toast.LENGTH_SHORT).show();
                    //builder.setMessage("支付已取消.");
                    break;
            }

            //  builder.show();
        }

        finish();
    }
}

 

 

2

 

public class PayActivity extends BaseActivity<PresenterPay> implements Ipay {

    private IWXAPI api;
    private int userId;
    private String sessionId;
    int PayType = 1;
    @Override
    public void getOrderSuccsees(PayBaen payBaen) {
        PayReq request = new PayReq();
        request.appId = "wxb3852e6a6b7d9516";
        request.partnerId =payBaen.getPartnerId();
        request.prepayId  = payBaen.getPrepayId();
        request.packageValue =  payBaen.getPackageValue();
        request.nonceStr =   payBaen.getNonceStr();
        request.timeStamp =  payBaen.getTimeStamp();
        request.sign= payBaen.getSign();
        api.sendReq(request);
        Toast.makeText(PayActivity.this, payBaen.getMessage(), Toast.LENGTH_SHORT).show();
    }

    @Override
    public void getError(Throwable throwable) {
        Toast.makeText(PayActivity.this, throwable.getMessage(), Toast.LENGTH_SHORT).show();
    }

    @Override
    protected void initData() {

    }

    @Override
    protected void initListener() {

    }

    @Override
    protected void initView() {
        api = WXAPIFactory.createWXAPI(this,null);
        // 将该app注册到微信
        api.registerApp("wxb3852e6a6b7d9516");//wx8d99aede85c725a5  wxb3852e6a6b7d9516

        Intent intent = getIntent();
        final String orderId = intent.getStringExtra("orderId");
        Button bt_pay =  findViewById(R.id.bt_pay);
        bt_pay.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                //微信支付 专入订单号
                wechatPay(orderId);
            }
        });

    }

    @Override
    protected PresenterPay providerPresenter() {
        return new PresenterPay(this);
    }

    @Override
    protected int providerLayout() {
        return R.layout.activity_pay;
    }
    //微信支付
    private void wechatPay(String orderId) {

        SharedPreferences sharedPreferences = getSharedPreferences("Movie",MODE_PRIVATE);
        userId = sharedPreferences.getInt("userId", 0);
        sessionId = sharedPreferences.getString("sessionId", "");

        presenter.getPay(userId,sessionId, PayType,orderId);

    }
}

 

 

PayBaen

 

package com.bw.movie.mvp.cinema.view.activity.bean;

import com.bw.movie.base.IView;

/**
* Created by hasee on 2018/9/5.
*/

public class PayBaen implements IView {

    /**
     * appId : wxb3852e6a6b7d9516
     * message : 支付成功
     * nonceStr : WQ72A7mNfUaA05Gw
     * partnerId : 1510865081
     * prepayId : wx07084938610450dcaad697243945045542
     * sign : 94F2FD993AB97C002E6CE898B04B578A
     * status : 0000
     * timeStamp : 1533602976
     * packageValue : Sign=WXPay
     */

    private String appId;
    private String message;
    private String nonceStr;
    private String partnerId;
    private String prepayId;
    private String sign;
    private String status;
    private String timeStamp;
    private String packageValue;

    public String getAppId() {
        return appId;
    }

    public void setAppId(String appId) {
        this.appId = appId;
    }

    public String getMessage() {
        return message;
    }

    public void setMessage(String message) {
        this.message = message;
    }

    public String getNonceStr() {
        return nonceStr;
    }

    public void setNonceStr(String nonceStr) {
        this.nonceStr = nonceStr;
    }

    public String getPartnerId() {
        return partnerId;
    }

    public void setPartnerId(String partnerId) {
        this.partnerId = partnerId;
    }

    public String getPrepayId() {
        return prepayId;
    }

    public void setPrepayId(String prepayId) {
        this.prepayId = prepayId;
    }

    public String getSign() {
        return sign;
    }

    public void setSign(String sign) {
        this.sign = sign;
    }

    public String getStatus() {
        return status;
    }

    public void setStatus(String status) {
        this.status = status;
    }

    public String getTimeStamp() {
        return timeStamp;
    }

    public void setTimeStamp(String timeStamp) {
        this.timeStamp = timeStamp;
    }

    public String getPackageValue() {
        return packageValue;
    }

    public void setPackageValue(String packageValue) {
        this.packageValue = packageValue;

    }
}

 

支付签名

 

172.17.8.100/media/movie_keystore.zip

 

//依赖   或者j包

 

//j包

compile files('libs/SocialSDK_WeiXin_1.jar')
compile files('libs/SocialSDK_WeiXin_2.jar')

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

梦想不上班

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值