我的用户将一些图片上传到Backendless的FileStorage。 这是上传顺序:
Backendless.Files.Android.upload(image1_scaled, Bitmap.CompressFormat.PNG,
100, "profileImage", "images", new AsyncCallback<BackendlessFile>() {
@Override
public void handleResponse(BackendlessFile response) {
fileMapping.profile_url = response.getFileURL();
Backendless.Data.of(FileMapping.class).save(fileMapping,
new AsyncCallback<FileMapping>() {
@Override
public void handleResponse(FileMapping response) {
toast_error("Image stored");
}
@Override
public void handleFault(BackendlessFault fault) {
System.out.println("ERROR" + fault.getCode());
}
});
}
@Override
public void handleFault(BackendlessFault fault) {
}
});
这完美无瑕。现在我需要使用API获取图像以显示它。
所以我需要进行BackendlessCollection<FileMapping> userFiles = Backendless.Data.of(FileMapping.class)
调用才能从该表中接收回来的URL。然后据说用url做一个httpRequest来取回字节数据。
我能解决的是使用什么样的 .find 方法?我 .findById()?如果是这样,我会使用什么ID? &#34;路径&#34;,&#34;名称&#34; &#34;表&#34;等等?
有没有人可以在这里展示一个适合我案例的例子,还有一个存储网址的表格等等? 感谢。
答案 0 :(得分:4)
你就是这样的(为了简单起见显示同步调用,但请务必将其更改为Android上的Async):
#include <boost/circular_buffer.hpp>
#include <queue>
#include <deque>
#include <iostream>
class YourClass
{
public:
YourClass(bool needs_infinite_amount_of_data) :
needs_infinite_amount_of_data(needs_infinite_amount_of_data),
queue(),
queue_with_circular_buffer(boost::circular_buffer<int>(needs_infinite_amount_of_data ? 0 : 100))
{
}
void Operation()
{
if (needs_infinite_amount_of_data)
{
Operation(queue);
}
else
{
Operation(queue_with_circular_buffer);
}
}
private:
template <class Container>
static void Operation(Container& container)
{
container.push(1);
std::cout << container.front() << "\n";
}
bool needs_infinite_amount_of_data;
std::queue<int> queue;
std::queue<int, boost::circular_buffer<int>> queue_with_circular_buffer;
};
int main()
{
YourClass obj(false);
obj.Operation();
}