我需要在应用加载的网页(通过(without "http://")
容器)中捕获格式错误的链接WebView
并正确格式化(adding "http://")
我通过覆盖
public boolean shouldOverrideUrlLoading(WebView view, String url).
if(url.startsWith("/")){
url = "http://www.domain.com" + url;
}
一切都很好但我意识到在API 19中它无法根据to this guide调用shouldOverrideUrlLoading
方法。
但是他们没有说出要调用哪种方法来决定它是有效还是无效的网址。
解决方案就是从页面中获取所有网页内容以加载,查找和替换格式错误的链接,然后加载" new"对于这么少的东西来说,页面似乎很费力。
有谁知道要覆盖哪种方法(拦截来自WebView的点击)?
答案 0 :(得分:-1)
Google在KitKat中有一些关于shouldOverrideUrlLoading()
的{{3}}:
在请求资源和解析使用自定义URL方案的链接时,新WebView会应用其他限制。对于 例如,如果实现了诸如shouldOverrideUrlLoading()之类的回调 或者shouldInterceptRequest(),然后WebView仅调用它们才有效 网址。
如果您使用的是自定义网址方案或基本网址,请注意您的应用对这些回调的接听次数较少或未能 在Android 4.4上加载资源,确保请求指定有效 符合RFC 3986的URL。