在 Android 浏览器中运行的页面在 Web View 中不起作用

Page that works in Android Browser doesn't work in WebView

本文关键字:Web View 不起作用 Android 浏览器 运行      更新时间:2023-09-26

我们正在设计一个应用程序,作为其功能的一部分,需要让用户与此页面进行交互:

http://m.bridgestonetire.com/catalog

此页面在设备浏览器中运行良好,以前在我们的网络视图中工作,但现在用户无法单击"年份/制造/型号"按钮。 页面上的其他功能是可单击的。

在这里搜索类似的问题时,答案似乎总是围绕更改底层网页,这是我们不能做的。 我们可以做些什么来使我们的 Web 视图与该页面更兼容? 网页视图设置如下:

protected void onCreate(Bundle savedInstanceState) {
    // TODO Auto-generated method stub
    super.onCreate(savedInstanceState);
    setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
    getActionBar().hide();
    Constants.setCViewAndRenderFonts(this, R.layout.web_layout);
    adviser = (WebView)findViewById(R.id.tireAdvisor);
    WebViewClient tclient = new WebViewClient() {
        @Override
        public boolean shouldOverrideUrlLoading(WebView view, String url) {
            L.d( "loading url: " + url);
            view.loadUrl(url);
            return true;
        }
    };
    adviser.setWebViewClient(tclient);
    adviser.getSettings().setJavaScriptEnabled(true);
    adviser.getSettings().setSupportZoom(true);
    adviser.getSettings().setUseWideViewPort(false);
    adviser.getSettings().setLoadWithOverviewMode(true);
    adviser.getSettings().setGeolocationEnabled(true);
    adviser.setVerticalScrollBarEnabled(false);
    adviser.setHorizontalScrollBarEnabled(false);
    adviser.getSettings().setAppCacheEnabled(true);
    adviser.getSettings().setUserAgentString("Mozilla/5.0 (Windows NT 6.2; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/30.0.1599.17 Safari/537.36");
    String mobileUrl = "http://m.bridgestonetire.com/catalog";
    String desktopUrl = "http://m.bridgestonetire.com/catalog";
    adviser.loadUrl(desktopUrl);
    adviser.setBackgroundColor(0x00000000);
    adviser.setLayerType(WebView.LAYER_TYPE_SOFTWARE, null);
    adviser.clearCache(true);
    adviser.clearFormData();
    android.webkit.CookieManager.getInstance().removeAllCookie();

我已经意识到你在网页中使用JQuery,并且"data-href"尝试打开的链接是一个.json文件。

例如"制作"选项:

<input type="hidden" name="make" value="" data-href="http://m.bridgestonetire.com/bin/fst/api/vehicle/1/make.json" />