android webview 加载本地html js,android – webview加载包含.js的本地html文件

首先,我认为你不太可能真的想要从资产中访问HTML和JavaScript文件,因为一旦打包并签署了应用程序,资产就不能(也不应该)更新.这意味着,使用资产中的HTML和JavaScript,您无法更新它们.解决该问题的方法是将HTML和JavaScript保存在内部或外部存储中,并从那里使用它.

其次,如果您使用我刚才解释过的方法,则不能再使用WebView.loadUrl()方法,而是需要使用WebView.loadDataWithBaseUrl()方法.像这样:

webView.loadDataWithBaseURL("http://some_url/", "some_data", "text/html", "utf-8", null);

然后,“some_data”将尝试作为HTML页面加载,如this previous SO answer所示.当它尝试加载JavaScript资源时,如/scripts/lib.js,它将被解析为http:// some_url / scripts / lib .js,WebView将尝试加载该资源.当然它不能,这就是为什么你(在Java中)需要扩展WebViewClient类,并为shouldInterceptRequest(WebView wv,String url)方法提供实现.

当尝试在网页中提取任何资源时,将调用’thehouldInterceptRequest’,并将其返回值用作资源.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值