关于webview接入的一些问题记录

好记性不如烂笔头,记录一下接入一个第三方网贷H5遇到的一些问题

  • 关于设置UserAgent
    User Agent中文名为用户代理,是Http协议中的一部分,属于头域的组成部分,User Agent也简称UA。

是什么:它是一个特殊字符串头,是一种向访问网站提供你所使用的浏览器类型及版本,操作系统及版本,浏览器内核,等信息的标识。

什么用:通过这个标识,用户所访问的网站可以显示不同的排版从而为用户提供更好的体验或者进行信息统计;例如用手机访问谷歌和电脑访问是不一样的,这些是谷歌根据访问者的UA来判断的。
由于网贷对于风控的一些处理,访问的链接都需要添加UA所以对网页流量进行设置。

webview.getSettings() .setUserAgentString(webview.getSettings() .getUserAgentString()+"; 自定义标记");  
  • 关于重定向问题GoBack的回无法退问题
    由于跳转打开页面重定向了2次,点GoBack的是回不去的,所以就加一个判断
@Override
public void onBackPressed() {
    // 获取历史列表
    WebBackForwardList mWebBackForwardList = webView
            .copyBackForwardList();
    // 判断当前历史列表是否最顶端,其实canGoBack已经判断过
    if (mWebBackForwardList.getCurrentIndex() > 0) {

        // 获取历史列表
        String historyUrl = mWebBackForwardList.getItemAtIndex(
                mWebBackForwardList.getCurrentIndex() - 1).getUrl();
        if (historyUrl.contains(“重定向的页面链接”)) {
            this.finish();
        }
        webView.goBack();
    } else {
        this.finish();
    }
}

感觉不是一种完美的解决方案,但是一时没有想到更好的办法
- 关于一些js无法加载的问题
加载的时候一直无法加载网页,查看日志发现有这么一句话:

Error in mounted hook: "TypeError: Cannot set property 'rootUrl' of null",source:"xxx.js"

查找了下原因发现是需要手动开启DOM

webview.getSettings().setDomStorageEnabled(true);  
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值