我的 iPad App 在 Phone Gap 中有一个奇怪的问题。问题是我必须通过链接在我的应用程序中打开 PDF 文档,当我单击打开 PDF 的链接时,它会显示没有反向链接的 PDF 文档。
因此,当我通过链接在我的应用程序中打开 PDF 文档时,它会将我带入死胡同,我无法返回我的应用程序的主页。
我的问题是,当我打开一个可以带我回到主页的 PDF 时,我如何才能拥有一个顶栏?iPad 的任何内部元素可能是什么?
非常感谢。
尝试使用 In App Browser 插件。
如果您使用的是更高版本的 Phonegap / Cordova 版本(2.8.0、2.9.0 等),它应该随附 - 无需安装其他任何东西。
http://docs.phonegap.com/en/2.9.0/cordova_inappbrowser_inappbrowser.md.html#InAppBrowser
它将允许您在覆盖您的应用程序的新“窗口”中打开 PDF。它有一个“完成”按钮,用户可以使用它来关闭它并在完成后返回您的应用程序。
您可以使用应用内浏览器打开 PDF,使用如下内容:
window.open('http://whitelisted-url.com/pdftoopen.pdf', '_blank');
即该_blank
选项触发应用内浏览器插件。如果您_system
改用它,它可能会在 iBooks 中打开它(只是在那里猜测 - 不能 100% 确定它是否会使用 iBooks)。
尝试https://docs.google.com/viewer?url=
在 URL 中添加前缀
像,window.open('https://docs.google.com/viewer?url=http://www.example.com/example.pdf&embedded=true', '_blank', 'location=yes');
尝试使用以下步骤从 URL 打开任何类型的文档:
使用此代码:
handleDocumentWithURL(function() { console.log('success'); }, function(error) { console.log('failure'); if (error == 53) { console.log('没有应用程序处理这个文件类型。'); } }, ' http://www.example.com/path/to/document.pdf ');
它适用于我在 Android 和 IOS 上。我用它来打开图像和PDF文件。
Android:如果可用,它会使用系统应用程序打开文件,否则会给出错误,您可以处理。
IOS:它在弹出窗口中打开文件,如使用完成按钮和选项按钮的视图。
它不显示您的文档 URL。
谢谢asgeo1,
我通过使用解决了它window.open()
。
<a href="#" onclick="window.open('http://12example.pdf', '_blank', 'location=no');"><img src="images/samplens.jpg" border="0" /></a>
希望能帮助到你。
我最终使用了WebIntent
如此处所述。棘手的部分是修改 WebIntent.java 以正确识别文件类型:
String type = obj.has("type") ? obj.getString("type") : null;
// New code starts
Uri uri = obj.has("url") ? Uri.parse(obj.getString("url")) : null;
String extension = MimeTypeMap.getFileExtensionFromUrl(obj.getString("url"));
if(extension != null){
MimeTypeMap mimeTypeMap = MimeTypeMap.getSingleton();
type = mimeTypeMap.getMimeTypeFromExtension(extension);
}
// New code ends
JSONObject extras = obj.has("extras") ? obj.getJSONObject("extras") : null;