首页 > 开发 > iOS > 正文

有关UIWebView微信支付返回值的问题

2017-09-08 13:45:08  来源:网友分享

在AppDelegate.m的微信支付回调代码- (BOOL)application:(UIApplication *)app openURL:(NSURL *)url options:(NSDictionary*)options中设了断点,发现提示其实有,就是直接被秒跳过了,在App上才观察不到。问题是我之前有让js端做了延迟展示提示,可是依然无效。。有没有什么办法来让他正常显示呢?


用webview做APP支付的时候遇到个问题:确认支付跳转到微信支付页面,然后跳回APP页面,这个时候我传值给后端,然后后端返回一个提示给我。可是提示一直没有显示出来。
但是当我先手动跳回APP再跳到支付页面点取消之后自动跳回到APP,又会正常显示
可是为什么会出现直接返回不弹出提示,要先手动后台进入一次APP再进入微信支付然后正常返回才能弹出提示呢?有没有大神懂的帮忙分析下,弄了一天了。。

此处是微信支付返回后上传给js网页端的代码,js收到后展示提示,即后面的“支付失败,请重试”

解决方案

以上问题已解决,经由微信支付完成回调- (BOOL)application:(UIApplication *)app openURL:(NSURL *)url options:(NSDictionary*)options后即刻展示“支付失败”HUD,可能因为iPhone从微信支付跳转回App跳转时间过慢,当正式跳转并展示App的时候,HUD已经展示结束。可以通过延时展示0.5s左右成功展示HUD。