android微信支付之调起支付和支付结果页面回调

本文介绍了如何在Android应用中实现微信支付的回调页面,详细讲解了调起支付的代码步骤,包括在AndroidManifest.xml中正确注册回调Activity以及处理官方Demo中的WXPayEntryActivity。通过回调函数onResp,可以获取并处理支付完成后的结果信息。

开发板推荐:天空星STM32F407VET6开发板

超高性价比 STM32主控 | 超高主频 | 一板兼容百芯 | 比赛神器 | 沉金彩色丝印


之前搞微信支付一直不能够回调支付结果的回调页面,现在来说一下怎么成功回调页面

参照文档:调起支付的代码:

private void sendPayReq(String appid, String partnerid, String prepayid, String packageValue, String noncestr, int timestamp, String sign) {

        //微信注册APPID
        IWXAPI api = WXAPIFactory.createWXAPI(this,null);
        api.registerApp(appid);
        PayReq request = new PayReq();
        request.appId = appid;
        request.partnerId = partnerid;
        request.prepayId = prepayid;
        request.packageValue = packageValue;
        request.nonceStr= noncestr;
        request.timeStamp= timestamp+"";
        request.sign= sign;
        api.sendReq(request);

    }

支付完成后返回app需要回调页面显示支付结果需要做的事:

在androidmenifest.xml文件中注册一下(不能更改路径),然后将官方demo中的WXPayEntryActivity复制到自己的工程目录下,这里需要注意,复制的路径一定要准确

比如为com.example.app.wxapi.WXPayEntryActivity

<!--微信支付回调函数-->
        <activity
            android:name=".wxapi.WXPayEntryActivity"
            android:exported="true"
            android:screenOrientation="portrait" />

也可以复制以下代码,复制到以上的文件夹,然后在onResp回调函数中进一步操作:

package com.example.app.wxapi;

public class WXPayEntryActivity extends Activity implements IWXAPIEventHandler{

    private IWXAPI api;

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
	setContentView(R.layout.recharge_succeed);
		
    	api = WXAPIFactory.createWXAPI(this, Fields.WEICHAT_APP_ID);
        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(),"onReq",Toast.LENGTH_SHORT).show();
	}

	@Override
	public void onResp(BaseResp resp) {

		int code = resp.errCode;

		if (code == 0){

			//显示充值成功的页面和需要的操作
		}

		if (code == -1){
                       //错误
		
		}

		if (code == -2){
			
                       //用户取消			
		}

	}

	
}

微信支付开发文档


开发板推荐:天空星STM32F407VET6开发板

超高性价比 STM32主控 | 超高主频 | 一板兼容百芯 | 比赛神器 | 沉金彩色丝印

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值