public boolean shouldOverrideUrlLoading(WebView view, WebResourceRequest request) { String url = request.getUrl().toString(); Logger.msg("sdk > 21 shouldOverrideUrlLoading:"+url); if (url.startsWith("weixin:")){ startActivity(new Intent("android.intent.action.VIEW", Uri.parse(url))); finish(); return true; }else if(url.startsWith("alipays:") || url.startsWith("alipay")){ boolean visit = Util.isAliPayInstalled(mContext); if(visit){ Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(url)); startActivity(intent); finish(); }else { ToastUtil.getInstance(WFTPayActivity.this,"未检测到支付宝客户端,请安装后重试。").show(); } return true; } // ------- 处理结束 ------- if (!(url.startsWith("http") || url.startsWith("https"))) { return true; } Map<String,String> extraHeaders = new HashMap<String, String>(); extraHeaders.put("Referer", referer); view.loadUrl(url, extraHeaders); referer = url; // view.loadUrl(url); return true; }
安卓8.1系统,微信H5支付,webview白屏安卓8.1系统版本,微信H5支付通道,webview白屏,其他系统版本能正常拉起微信支付,不加extraHeaders.put("Referer", "商户申请H5时提交的授权域名");这个就会提示商家参数格式有误,请联系商家解决,加了就8.1系统会白屏 1. 当前调起H5支付的referer为空导致,一般是因为直接访问页面调起H5支付,请按正常流程进行页面跳转后发起支付,或自行抓包确认referer值是否为空 2. 如果是APP里调起H5支付,需要在webview中手动设置referer,如( Map extraHeaders = new HashMap(); extraHeaders.put("Referer", "商户申请H5时提交的授权域名");//例如 http://www.baidu.com ))
2021-03-31我们的公众号也出现这个问题
微信公众平台客服聊天回复感叹号[图片] [图片] 登录后发出的信息为感叹号, 但是客户可以接收到今天之前的消息历史丢失退出重登依然部分情况下提示登录超时复现: 浏览器扫码登录微信公众平台客服 问题小程序appid: wx1c91e15ebd6963f2
2020-11-03