美文网首页iOS随记
“页面上有一个或多个错误。”、“支付验证签名失败”AND“Web

“页面上有一个或多个错误。”、“支付验证签名失败”AND“Web

作者: 脚踏实地的小C | 来源:发表于2017-11-16 20:19 被阅读18次

    1.页面上有一个或多个错误。

    今天上架APP时遇到的,一开始不懂啥原因,因为之前好好打就一个5.5寸的,后面发现原来是苹果爸爸给你添加了N个截图,你不添加还不行。所以你要做的就是把那些截图按相对应的加上就好,只要你在5.5那添加后,在其他的尺寸勾上未展开的选项就好。先点击“在媒体管理中查看所有尺寸”,你会看到:
    iPhone:5.8英寸(可选)、5.5英寸、4.7英寸、4英寸、3.5英寸


    iPad:12.9英寸、9.7英寸

    2.WebView中使用H5支付

    当我在iOS APP内用WebView使用H5的微信支付时,刚开始它是不跳转,我就在WebView的代理中如下操作:

    -(void)webView:(WKWebView *)webView decidePolicyForNavigationAction:(WKNavigationAction *)navigationAction decisionHandler:(void (^)(WKNavigationActionPolicy))decisionHandler {
    NSString *urlString = [[navigationAction.request URL] absoluteString];
    urlString = [urlString stringByReplacingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
    if ([urlString containsString:@"weixin://wap/pay?"]) {
    decisionHandler(WKNavigationActionPolicyCancel);
    //解决wkwebview weixin://无法打开微信客户端的处理
    NSURL *url = [NSURL URLWithString:urlString];
    [[UIApplication sharedApplication]openURL:url options:@{UIApplicationOpenURLOptionUniversalLinksOnly: @NO} completionHandler:^(BOOL success) {
    }];
    }
    decisionHandler(WKNavigationActionPolicyAllow);
    ? }
    

    不过虽然这样可以调起微信支付,可是返回时你却是回到Safari中去,而不是APP中,网上找了很多也没找到解决的,不过后面就暴力解决,在这个代理中跟后台商量好,获取相关的参数使用APP支付。这样就可以解决了,不过这种方法总觉得怪怪的,不过因为急着上线,所以就暂时先用这个,以后找到更好的解决方法在更新下。

    3.支付验证签名失败

    当你从后台获取微信支付的签名时,一定要让后台重新生成签名,不能用之前统一下订单时的签名,不然绝对会报这个问题。

    参考文献:

    iOS App内webview调用微信H5支付,支付成功不能返回APP
    关于微信APP支付,提示支付验证签名失败

    相关文章

      网友评论

        本文标题:“页面上有一个或多个错误。”、“支付验证签名失败”AND“Web

        本文链接:https://www.haomeiwen.com/subject/uqervxtx.html