最近在项目中集成微信支付,支付流程成功,在返回支付结果时,回调了WXPayEntryActivity页面,执行了WXPayEntryActivity的OnCreate方法,但是却不回调onResp方法。
求教各位大神怎么解决。
应该需要在onCreate方法中调用如下语句吧?
api = WXAPIFactory.createWXAPI(this, UtilConstants.WEIXINAPPID);
api.handleIntent(getIntent(), this);
你可以仔细对一下微信开放平台上下下来的demo ,看有没有哪里漏了
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// setContentView(R.layout.pay_result);
api = WXAPIFactory.createWXAPI(this, Constans.WXID);
api.handleIntent(getIntent(), this);
}
@Override
protected void onNewIntent(Intent intent) {
super.onNewIntent(intent);
setIntent(intent);
api.handleIntent(intent, this);
}
可能是路径不对?WXPayEntryActivity只能放在你的主包名/wxapi目录里面,如你的项目是com.a.b,那么这个activity必须放在com.a.b.wxapi.WXPayEntryActivity,此Activity名称和路径名称都不能乱写。另外微信支付的例子不能运行第二次,运行第二次就不能运转了,注册之后再自己项目里面可以正常。
在支付之前
private IWXAPI wxapi;
wxapi = WXAPIFactory.createWXAPI(this, ConstantValues.WX_APP_ID); //微信ap_pid
wxapi.registerApp(ConstantValues.WX_APP_ID);
最近在做微信 支付宝 银联支付 有问题 可以问我 望采纳
都对为什么还是没回调onResp方法