【发布时间】:2019-11-09 09:53:34
【问题描述】:
我希望从 URL 安全地下载或查看应用程序中的 PDF 和 android 文件。通过使用DownloadManager 或以URI 作为参数打开意图,我可以成功下载和打开PDF 文件。相同的代码将下载 doc 或 docx 文件,但是当我尝试在 android 模拟器上打开 doc \ docx 文件(直接来自下载)时,我得到“无法打开文件”。
这是打开意图并下载 docx\doc 文件的代码:
public void openWebPage(String url) {
Uri webpage = Uri.parse(url);
Intent intent = new Intent(Intent.ACTION_VIEW, webpage);
if (intent.resolveActivity(getPackageManager()) != null) {
startActivity(intent);
}
}
你知道为什么我无法打开这些 doc\docx 文件吗?
【问题讨论】:
-
您的模拟器上可能没有应用程序知道如何显示专有的 Microsoft 文档格式。或者,来自服务器的 MIME 类型不正确,并且您的模拟器上没有应用程序知道如何显示该 MIME 类型。
-
好的,所以要从应用程序打开文件,我是否需要依赖用户拥有类似谷歌文档的东西?
-
是的。这与桌面操作系统没有太大区别,您不能假设用户安装了 Microsoft Office 或 LibreOffice 或其他东西。
-
谢谢,虽然,我已经安装并登录了谷歌文档,我可以将文件复制到谷歌文档并从那里打开它,但我不能只从下载文件夹中打开它,即使当谷歌文档已安装。这似乎有点不同。有道理,谢谢