在我的应用程序中,功能如下:
首先我使用Volley创建JsonObjectRequest。这将返回JSON数据。 在这里,我使用this技术进行回调,以确保我得到响应,然后进一步处理它。
根据我上面收到的JSON数据(1),我得到了多个URL,我需要从中获取更多数据。在上面第一个请求(1)的onResponse中,我正在调用一个创建新请求队列的方法,并创建所有这些单独URL的请求并将其添加到该请求队列。我的最终目标是在从此步骤获取所有数据后显示数据,即多个URL。
发生了什么: 我能够从上面的(1)中获取数据并正确显示,但它不等待从上面的步骤(2)下载数据。我想我不能在(1)的请求队列中添加(2)中的请求,因为首先我需要来自请求1的URL来处理请求2.
我如何在申请中等待步骤(2)完成数据下载?
如果问题不明确,请告诉我。我会尝试添加更多细节。
答案 0 :(得分:2)
你可以尝试其中一种......
不确定你是否喜欢这个,但只是想一想。
call("url", callback(){
++counter;
if(counter == DESIRED_VALUE )
displayData();
});
counter是AtomicInteger