微信支付最新消息提示你有支付消息未处理

微信支付Android版,怎么实现不弹出处理微信支付结果的Activity,又可以收到微信支付的结果? - 知乎14被浏览8110分享邀请回答public enum PayResult {success, fail, cancle, error}
调用者activity或fragment,
* 接收从{@link PaymentActivity}和{@link com.dayuangu.seller.wxapi.WXPayEntryActivity}
* 传来的支付结果,{@link PaymentActivity#setPayResult(Cons.PayResult)}
* @param payResultResult 枚举类型,四个结果{@link Cons.PayResult}
//在这里处理接收到的支付结果
public void onEventMainThread(Cons.PayResult payResultResult) {
Log.d(TAG,payResultResult+ "");
if (this == null)
switch (payResultResult) {
case success:
submitSuccessDialog();
case cancle:
showCommonDialog("用户取消");
case fail:
showCommonDialog("支付失败");
case error:
showCommonDialog("未知错误");
public class WXPayEntryActivity extends Activity implements IWXAPIEventHandler {
private static final String TAG = "微信回调";
private IWXAPI api;
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//这里的布局可以是个空的
setContentView(R.layout.activity_content);
Log.d(TAG, "oncreate");
api = WXAPIFactory.createWXAPI(this, Cons.APP_ID);
api.handleIntent(getIntent(), this);
protected void onNewIntent(Intent intent) {
super.onNewIntent(intent);
setIntent(intent);
api.handleIntent(intent, this);
public void onReq(BaseReq req) {
//在这个回调结果中将支付结果发送出去,然后结束掉自己
public void onResp(BaseResp resp) {
Log.d(TAG, "onPayFinish, errCode = " + resp.errCode + resp);
switch (resp.errCode) {
setPayResult(Cons.PayResult.success);
setPayResult(Cons.PayResult.fail);
setPayResult(Cons.PayResult.cancle);
private void setPayResult(Cons.PayResult payResultResult) {
EventBus.getDefault().post(payResultResult);
//结束掉中间那个Activity
ActivityCollector.removeLastActivity();
//结束掉自己
3添加评论分享收藏感谢收起13 条评论分享收藏感谢收起查看更多回答主题 : iOS 微信支付APP支付支付完成后,必须手动点击返回原APP才能收到支付完成信息的问题
级别: 新手上路
可可豆: 27 CB
威望: 17 点
在线时间: 21(时)
发自: Web Page
iOS 微信支付APP支付支付完成后,必须手动点击返回原APP才能收到支付完成信息的问题&&&
本帖被 阿花君霸占路人 从 公告活动区 移动到本区()
今天接手了一个APP,微信支付是我同事开发的,整个支付流程完全能走通了,但唯一存在一个技术漏洞就是:在支付页面调微信APP支付时,进入到了微信里面去支付,支付完成后会停在一个展示支付信息的页面,右上角会有一个返回原APP的按钮,用户必须点击这个返回按钮(查了两天都说必须手动返回,不能自动跳转),才能在AppDelegate里的:- (void)onResp:(BaseResp *)resp这个方法才会响应,响应才能拿到支付完成的信息。那么问题出现了,有这么一类用户,支付过后看见展示的支付信息是支付完成后,就不管了或者直接到后台去把APP杀死(我们的真实用户反应的),没点返回,那么我们就拿不到支付完成的消息。假如是订一张票的话,就会造成用户付钱了,没订到票。这种事情说到底是微信的原因还是我们自己下单的时机不对呢?
当你的代码敲得越来越快,成功就越来越进
级别: 新手上路
可可豆: 3 CB
威望: 3 点
在线时间: 106(时)
发自: Web Page
回 楼主(黑黑的黑黑) 的帖子
请问有解决方法了吗
级别: 新手上路
可可豆: 27 CB
威望: 17 点
在线时间: 21(时)
发自: Web Page
回 1楼(范命名) 的帖子
让你们后台给你一个异步回调的地址!你在调起微信支付时要传一个参数:notify_url 交易结果通知网站(接收微信支付异步通知回调地址),这个地址完美的运用起来就好了,在支付前你给后台把订单什么的提交过去,用户支付完成后,微信会自动访问你的那个异步通知地址,并告知支付结果,让你们后台在那个地址的访问中收到支付完成的消息后做相关处理就好。(注:一切的支付下单不要以移动端的支付完成为最终调用,会出问题的)
当你的代码敲得越来越快,成功就越来越进
级别: 新手上路
可可豆: 17 CB
威望: 17 点
在线时间: 368(时)
发自: Web Page
学习了。对我帮助很大。
关注本帖(如果有新回复会站内信通知您)
发帖、回帖都会得到可观的积分奖励。
按"Ctrl+Enter"直接提交
关注CocoaChina
关注微信 每日推荐
扫一扫 关注CVP公众号
扫一扫 浏览移动版(小朋友不乖)
(杭州微信开发)
第三方登录:

我要回帖

更多关于 微信支付消息通知设置 的文章

 

随机推荐