从Android Studio HTML文档打开外部应用程序中的本地PDF

时间:2017-04-27 00:56:32

标签: java android android-studio webview

目前制作一个WebView HTML应用程序,我的本地PDF文件链接(路径是相对的)不起作用。我只是希望它在外部应用程序中打开(不在WebView中)。我尝试过这个网站的多个PDF意图但没有成功。

我最初的<script src="https://code.jquery.com/jquery-2.1.4.min.js"></script> 高于Override,但一直在

public Boolean launchPDF

我需要这是所有PDF的一揽子声明,因为我有很多PDF。

的AndroidManifest.xml:

:method does not override or implement  method from a supertype

1 个答案:

答案 0 :(得分:0)

一种方法是使用my StreamProvider直接从assets/通过您的应用提供PDF文件。这不是很难设置,也不需要您在运行时复制任何数据。您可以在StreamProvider Uri中使用ACTION_VIEW - 提供的Intent。但是,在修复错误之前,这不适用于所有PDF查看器,特别是不属于Google云端硬盘应用的版本。

如果您想要更高的兼容性,请将资产复制到本地文件系统上的文件(例如,在getCacheDir()中),然后使用Android支持库中的FileProvider。除了必须进行复制之外,这与使用StreamProvider具有相同的基本效果。从文件服务,而不是直接从APK中获取资源,可以提高与PDF查看器的兼容性,但是由于处理content Uri值的错误,一些人可能仍然会出现小问题。

另一种选择是在您的应用中嵌入某种PDF查看功能。在this blog post中,我概述了三个选项。它们在兼容性和大小方面都有权衡,没有一个像独立的PDF查看器一样功能齐全。

或者,您可以找到一些工具将您的PDF转换为HTML / CSS /图片,将这些内容打包到您的应用中,并在WebView中显示这些内容。

相关问题