我正在使用firebase,并且其中包含一些带有.pdf文件的Order-URL。 这是一张图片,显示了它: https://www.jqueryscript.net/demo/Basic-jQuery-Gallery-with-Paginated-Thumbnail-Navigation-ImageGallery-js/
我有这段代码:
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.fragment_wiki, container, false);
// Inflate the layout for this fragment
WebView webView = (WebView) view.findViewById(R.id.webView1);
webView.getSettings().setJavaScriptEnabled(true);
//FireBase Connection
StorageReference mStorageRef;
mStorageRef = FirebaseStorage.getInstance().getReference();
mStorageRef.getDownloadUrl();
String myPdfUrl = "https://firebasestorage.googleapis.com/v0/b/realtime-chat-46f4c.appspot.com/o/documents%2Fbf307aa5-79ae-4532-8128-ee394537b357.pdf?alt=media&token=2d0c5329-4717-4adc-9418-6614913e5bfa";
/* String url = "http://docs.google.com/gview?embedded=true&url=" + myPdfUrl;
webView.loadUrl(url);*/
try {
myPdfUrl = URLEncoder.encode(myPdfUrl,"UTF-8");
webView.loadUrl("https://docs.google.com/gview?embedded=true&url=" + myPdfUrl);
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
return view;
}
我想要的是: - 从链接获取firebase中Order-Url的所有文件名,我在上图中显示 - 按顺序获取每个文件名的下载路径的URL
当我只是复制下载URL时,我可以轻松地将其添加到代码中并加载文件。但是我想要它动态,意味着,总是,当我在firebase中的这个存储中添加一个文件时,应该检测并添加/删除它,等等。
我不想一直更改我的代码,只是为了添加新的download-url文件。
有人有经验,或者想过如何解决它?
非常感谢
答案 0 :(得分:1)
您的用例听起来像是使用Firebase's Cloud Functions的绝佳机会,尤其是Cloud Storage trigger部分。
基本思想是,您可以编写在发生某些事件时触发的代码。在您的情况下,事件是文件上传到您的" Order-Url"并且您只需要编写一些代码来记录这些文件的下载URL。
这种方法非常及时提前#34;作为替代方案,您可以使用Google Storage SDK或APIs查询Firebase存储用于文件的基础存储桶和文件夹。