首先:
是的,StackOverflow 中有很多解决方案,但在我的情况下它们都不起作用。
- 我在 SmartGWT.mobile 中构建了应用程序
- 我将配置文件和所有需要的文件附加到这个构建中,以便为 PhoneGap 做准备
- 应用程序是通过 build.phonegap.com 站点构建的。
- 它在 Android 4.1.1 上运行良好
我想要:
将文件下载到本地文件系统,它是一个 PDF 文件 -使用以下方法可以正常工作:
var fileTransfer = new FileTransfer(); fileTransfer.download(.....
在本机应用程序(例如 Adobe Reader)中打开 PDF,无论是安装在 android 上的 PDF -它不工作:
我试过了:
(1)
cordova.exec("ChildBrowserCommand.showWebPage", encodeURI(theFile.toURL()) );
(2)
window.plugins.childBrowser.showWebPage(encodeURI(theFile.toURL()));
(3)
window.open(encodeURI(theFile.toURL()), '_blank', 'location=yes');
(4) 甚至 HTML5 插件,用于通过 firefox 打开 PDF
所有带有“file://”的变体,前面没有“./”,依此类推。
childBrowser 只显示白屏,每次在前面添加“http://”,window.open - 相同。
我终于找到了一些有趣的东西,比如 WebIntent,所以我做到了:
window.plugins.webintent.startActivity({
action: window.plugins.webintent.ACTION_VIEW,
type: "application/pdf",
url: encodeURI(theFile.toURL().substring(7))},
function() {},
function() {alert('Failed to open URL via Android Intent')}
);
但它不起作用,因为 phonegap-build 没有附加类文件并且它找不到 WebIntent 类
我在 config.xml 中声明了这个插件:
<gap:plugin name="com.borismus.webintent.WebIntent" />
你知道为什么它不工作,或者我在做什么?也许你知道其他打开文件的方法,就像在本机应用程序中一样,它应该很简单
我只想让我的应用程序下载并(在本机应用程序中)为用户显示 PDF。