找出Android WebView用Javascript加载URL的错误

Find out error of Android WebView loading an URL with Javascript

本文关键字:URL 错误 加载 Javascript Android WebView 找出      更新时间:2023-09-26

我使用Android WebView来显示一个URL,它包含一个图片库,带有一种lightbox特性,可以使用Javascript详细显示图像。

当我在浏览器应用程序中调用这个URL时,它加载得很好,并按预期工作。但是当我在Android应用程序的WebView中加载相同的URL时,图像概述被加载,但当我点击图像以获得lightbox时,它没有显示。

WebView webView = (WebView) rootView.findViewById(R.id.fragment_image_detail_webview);
        String imageDetailUrl = getResources().getString(R.string.json_page_url) + imageGallery.get("detailLink");
        webView.loadUrl(imageDetailUrl);
        webView.getSettings().setJavaScriptEnabled(true);
        webView.setWebViewClient(new InsideWebViewClient());

所以JavaScript应该被启用。应用程序内部浏览器的行为似乎不同于应用程序浏览器!

关于如何缩小错误,有什么想法吗?

谢谢

         wv = (WebView)findViewById(R.id.webView1);
      WebSettings webSettings = wv.getSettings();
        wv.getSettings().setJavaScriptEnabled(true);
        wv.getSettings().setBuiltInZoomControls(true);

        wv.loadUrl("http://www.accelfrontline.com");

尝试将这些行添加到onCreate()

super.init();
WebView webView=new WebView(this);
webView.getSettings().setJavaScriptEnabled(true);
//Add these lines according to your requirements
webView.getSettings().setDomStorageEnabled(true);       
webView.getSettings().setSaveFormData(true);
webView.getSettings().setAllowContentAccess(true);
webView.getSettings().setAllowFileAccess(true);
webView.getSettings().setAllowFileAccessFromFileURLs(true);
webView.getSettings().setAllowUniversalAccessFromFileURLs(true);
//webView.getSettings().setSupportMultipleWindows(true);        
webView.getSettings().setSupportZoom(true);     
webView.setWebViewClient(new WebViewClient());
webView.setClickable(true);
webView.setWebChromeClient(new WebChromeClient());      
webView.loadUrl("Your webpage link");          
setContentView(webView);

最后所有建议的解决方案都不适合我。所以我为这个图像实现了一个本地图库。我使用这个教程全屏图像滑块作为构建我自己的参考。