【发布时间】:2017-03-28 12:22:12
【问题描述】:
我正在尝试使用 web 视图呈现 PDF 链接。我尝试呈现的链接由我的应用上传到 firebase 数据库。
当链接在 iOS 设备上成功呈现时。它不在Android上。
我推测所有这些混乱背后的原因是 firebase 链接。
如果我尝试从网络呈现一个普通的 pdf 链接。
String pdf_sample = "http://www.adobe.com/devnet/acrobat/pdfs/pdf_open_parameters.pdf";
String googleDocs = "https://docs.google.com/viewer?url=";
Webviewz.getSettings().setJavaScriptEnabled(true);
Webviewz.loadUrl(googleDocs + pdf_sample);
导致成功的 PDF 渲染
但是,如果我依赖并尝试从我的 Firebase 数据库中显示和呈现 PDF 链接,我会通过 google docs 获得这个空白的深灰色背景和 NO PREVIEW AVAILABLE
的标志 String Firebase_link_failure = "https://firebasestorage.googleapis.com/v0/b/jouska-aabee.appspot.com/o/PDF_files%2F305?alt=media&token=b9cf2fa6-f6ff-4a3b-8908-9eac294c4668";
String googleDocs = "https://docs.google.com/viewer?url=";
Webviewz.getSettings().setJavaScriptEnabled(true);
Webviewz.loadUrl(googleDocs + Firebase_link_failure);
导致没有可用的预览
用户 sphippen 建议的解决方案成功了。在 firebase 链接上使用 UrlEncoder,成功呈现了 pdf。以下是所做的单个修改。
Webviewz.loadUrl(googleDocs+ URLEncoder.encode(firebase_link, "utf-8"));
【问题讨论】:
-
当我尝试使用该链接时,它会报告
The specified key does not exist.所以我不明白您为什么希望应用程序的行为有所不同?另外,您在哪里按照the docs 的指示致电storageRef.child("...").getDownloadUrl()? -
这主要是因为我之前删除了链接,对不起。
标签: java android-studio pdf firebase firebase-storage