【发布时间】:2019-04-30 01:00:22
【问题描述】:
我有一个 Android 应用程序,我想在其中显示来自其各自 URL 的 pdf、excel、docx、txt 格式的文件。我可以使用外部应用程序显示这些文件,但为此,文件首先下载并存储在设备上,然后再显示。我不想下载,我尝试使用 Google 文档查看器在 WebView 中显示文件,但由于文件是私有的,它们不会显示。我尝试过类似以下的方法:-
mDocumentUrl = mIntent.getStringExtra(Constant.DOCUMENT_URL);
wvDocumentReader.getSettings().setJavaScriptEnabled(true);
wvDocumentReader.setWebViewClient(new WebViewClient(){
@Override
public void onPageStarted(WebView view, String url, Bitmap favicon)
{
super.onPageStarted(view, url, favicon);
wvProgressBar.setVisibility(View.VISIBLE);
}
@Override
public boolean shouldOverrideUrlLoading(WebView view, WebResourceRequest request)
{
view.loadUrl(request.getUrl().toString());
return true;
}
@Override
public void onPageFinished(WebView view, String url)
{
super.onPageFinished(view, url);
wvProgressBar.setVisibility(View.GONE);
}
});
wvDocumentReader.loadUrl("http://docs.google.com/gview?embedded=true&url="+ mDocumentUrl);
任何人都可以建议一个库或解决方法来实现这一点吗?任何帮助表示赞赏。
【问题讨论】:
-
当然不能显示私人文件。这不应该工作,这是一件好事!
-
@finki 当然。我们还有一个 iOS 应用程序,其中文档链接在 WebView 中打开,但在显示它之前,仅在成功登录时才要求登录,然后显示文档。现在,Android WebView 要求登录,成功登录后,文档将下载到设备。我试图避免下载
-
@MahendraGohil 我在我的问题中提到了同样的问题,我已经尝试过该问题中给出的答案。但我的文件是私密的,因此无法使用。
标签: android pdf webview document docx