gpt4 book ai didi

Android WebView 有时显示浏览器选择屏幕

转载 作者:行者123 更新时间:2023-11-30 04:05:39 26 4
gpt4 key购买 nike

在创建我的 Activity 时,我将触发一个加载处理程序(同时显示一个微调器),除此之外,我在该处理程序代码中对三个私有(private) WebView 对象调用 loadURL。

这样做的目的是预缓存这些网页,然后根据按钮触摸事件显示每个网页。实际加载和显示工作正常,除了有时(还看不到模式)我(或我的测试人员)无缘无故地看到浏览器选择屏幕(例如 Chrome/Firefox)。

所以我的第一个问题是什么会导致这种情况,以及如何防止这种情况发生?

否则您将如何执行以下操作:

  1. 预缓存三个网页的结果(简单的 HTML、没有图像的表格等)。
  2. 依靠按钮触摸在屏幕上以布局显示网页的结果(每次都是相同的布局,因此当触摸按钮 2 时,相应的网页会替换前一个网页)。

最佳答案

从不喜欢回答我自己的问题,但因为唯一的答案与问题无关。

问题似乎是由重定向引起的,正在加载的网页实际上并没有重定向,但服务器正在从子域执行内部重定向。我使用以下代码解决了这个问题。

this.wvBasic.setWebViewClient(new WebViewClient() {
private String pendingUrl;

@Override
public void onPageStarted(WebView view, String url, Bitmap favicon) {
if (pendingUrl == null) {
pendingUrl = url;
}
}

@Override
public void onPageFinished(WebView view, String url) {
if (!url.equals(pendingUrl)) {
Log.d(TAG, "Detected HTTP redirect " + pendingUrl + "->" + url);
pendingUrl = null;
}
}
});
this.wvBasic.getSettings().setJavaScriptEnabled(false);

关于Android WebView 有时显示浏览器选择屏幕,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11725886/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com