android - "no preview available"在 android webview 的谷歌文档中查看 pdf

标签 android webview google-docs

在使用 google 文档链接在 android 的 webview 中打开 pdf 时:-

webView.loadUrl("http://docs.google.com/gview&embedded=true&url=" + getIntent().getStringExtra(CONSTANT.pdfurl));

对于一些pdf

"no preview availbale"

发生在 WebView 中 ,并且对于某些 pdf 它总是会发生,我知道这个问题已经被问过好几次并且已经看过所有的 stackoverflow 和互联网但找不到任何令人满意的解释。

如何知道在 google docs 中查看 pdf 时出现“无法预览”以及如何解决此问题

the progress bar stops automatically without showing any content sometimes

这是我的完整实现代码:-

webView.getSettings().setJavaScriptEnabled(true);
webView.getSettings().setBuiltInZoomControls(true);

progressBar.setVisibility(View.VISIBLE);

webView.loadUrl("http://docs.google.com/gview&embedded=true&url=" + getIntent().getStringExtra(CONSTANT.pdfurl));

webView.setWebViewClient(new WebViewClient() {

            @Override
            public void onPageStarted(WebView view, String url, Bitmap favicon) {

                super.onPageStarted(view, url, favicon);
                progressBar.setVisibility(View.VISIBLE);

            }

            @Override
            public boolean shouldOverrideUrlLoading(WebView view, String url) {
                view.loadUrl(url);
                return false;
            }
            @Override
            public void onPageFinished(WebView view, String url) {
                // do your stuff here
                progressBar.setVisibility(View.GONE);
                webView.setVisibility(View.VISIBLE);
            }

            @Override
            public void onReceivedError(WebView view, int errorCode,
                                        String description, String failingUrl) {
                view.loadUrl("about:blank");
                Toast.makeText(getApplicationContext(), "Error occured, please check newtwork connectivity", Toast.LENGTH_SHORT).show();
                super.onReceivedError(view, errorCode, description, failingUrl);
            }

   });

我确定的一件事是,在 http 网站中它比 https 网站更频繁地发生。如何解决这个问题?

有什么方法可以在不更改网站的情况下将 url 从 http 转换为 https 吗?

最佳答案

检查您的 pdf 路径,它可能会像 ( https://docs.google.com/gview?embedded=true&url=null) 一样为空

或者用intent打开pdf我觉得很简单

Intent browserIntent = new Intent(Intent.ACTION_VIEW, Uri.parse(pdf_url));
startActivity(browserIntent);

关于android - "no preview available"在 android webview 的谷歌文档中查看 pdf,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47881539/

相关文章:

android - 自定义水平进度条

android - 可绘制限定符,位图在 HTC with Android 4+ 屏幕旋转后未正确更改

java - 无法在 Facebook 中使用 WebviewHitResults 抓取 webview 中的图像 URL

javascript - 以编程方式单击 Windows UWP WebView 中的 anchor

sql - 在线协作架构设计(利用谷歌文档?)

javascript - 通过更新谷歌表格中的行在谷歌驱动器中创建文件夹

google-sheets - 从 Split() 获取第一项

android - 签名 apk 可以在 Android Studio 中运行,但为什么相同的 keystore 不能在命令行上运行?

android - 保存的图像需要几分钟才能出现在图库中

macos - 如何在 Cocoa 中打开 safari/chrome 浏览器的外部链接