我已将pdf文件上传到firebase存储,在将pdf文件上传到firebase存储后,我收到了下载网址。现在我想在我的android应用程序中打开webview中的pdf文件。
以下是我将pdf文件上传到firebase存储后的网址。
以下是我在webview中打开pdf的方法
private void loadWebUrl(String url) {
myWebView.setBackgroundColor(Color.TRANSPARENT);
myWebView.getSettings().setJavaScriptEnabled(true);
settings.setAllowFileAccessFromFileURLs(true);
settings.setAllowUniversalAccessFromFileURLs(true);
settings.setBuiltInZoomControls(true);
//url = "http://narsun.pk/profile.pdf";
if (url!=null&&!url.isEmpty()) {
myWebView.loadUrl("https://docs.google.com/viewerng/viewer?url="+url);
//myWebView.loadUrl("http://drive.google.com/viewerng/viewer?embedded=true&url="+url);
}else {
Utils.showToast(mActivity,"Sorry No Pdf url Exist!");
mActivity.onBackPressed();
}
}
请帮助我,我错了!感谢
答案 0 :(得分:3)
迟到但您应该对您的网址进行编码,
try {
url=URLEncoder.encode(url,"UTF-8");
myWebView.loadUrl("https://docs.google.com/gview?embedded=true&url="+url);
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
答案 1 :(得分:0)
我认为您将文件上传到 firebase 时的问题,您应该添加上传文件的元数据 在您的情况下,您应该定义 StorageMetadata 并设置“application/pdf”的 contentType
此代码来自 iOS 应用
FIRStorageMetadata* metadata = [[FIRStorageMetadata alloc] init];
metadata.contentType = @"application/pdf";
然后当您将数据放入 firebase 时,在上传功能中添加此元数据