Android WebView和需要获取本地文件的站点

时间:2017-06-21 00:41:50

标签: javascript android webview

我很难知道如何命名这个,但基本上我有一个WebView,允许用户静态指定一个网址,然后在WebView的应用旁边显示该页面。所有的罚款和花花公子 - 它的工作原理。但是,有一位用户指定www.streamable.com,允许用户上传视频,然后提供该视频的网址。

WebView加载www.streamable.com网站就好了,但是当他们点击"上传视频文件"时似乎没有做任何事情。按钮。在普通浏览器中,将显示以下内容(即使在移动设备上):

enter image description here

和正常弹出窗口(选择哪种机制后):

enter image description here

我访问了以下StackOverflow示例,但它们无法运行:

WebView blocking pop up windows?

How to display javascript popup in android webview

How to work with pop ups window in android webview

这是一些Javascript限制(尝试过这些选项),还是WebView强制执行我已经无意中发现的已知安全限制?

以下是我正在使用的代码:

            mWebView.setWebChromeClient(new WebChromeClient() {
            }); 
            mWebView.setWebViewClient(new WebViewClient() {
             @Override
             public boolean shouldOverrideUrlLoading (WebView view, String url) {
                 view.loadUrl(url);
                 return true;
             }
            }); 
            mWebView.getSettings().setJavaScriptEnabled(true);
            mWebView.getSettings().setAppCacheEnabled(true);
            mWebView.loadUrl("www.streamable.com");

提前感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

这不能直接回答你的问题,但可以提供帮助。前段时间我在一个特定的网页上遇到了类似的问题(该页面不在我的控制范围内),它在网络上工作,即使使用移动浏览器也没有使用WebView,我尝试了不同的方法使其工作,我不能制作它,对我来说其中一个原因是因为打开相机的权限(你可以检查你是否使用Android Lollipop或更新)。但最后我找到的最佳解决方案,以及我使用的而不是webview是

  

Chrome自定义标签

您可以在此处查看实施article

他们提到:

  

如果您托管自己的内容,WebView是一个很好的解决方案   在你的应用程序内如果您的应用将用户定向到您的网址之外的网址   域名,我们建议您使用Chrome自定义标签

您可以在之前提供的链接中查看所有详细原因。

由于您正在访问第三方网页,我认为这是可行的方法,并确保top:0; left:0; 网站可以正常运行。