gpt4 book ai didi

android - 如何在android中清空 Volley 请求队列

转载 作者:行者123 更新时间:2023-11-30 00:25:20 24 4
gpt4 key购买 nike

private void setupNotificationListener(){

StringRequest request = new StringRequest(Request.Method.GET, url, new Response.Listener<String>() {
@Override
public void onResponse(String s) {
flag=1;
//System.out.println(flag);
Map<String,Object> mapPost, mapContent;
Map<String,Object> mapTitle;

gson = new Gson();
list = (List) gson.fromJson(s, List.class);
postTitle = new String();
postContent=new String();


System.out.println("shiv class:"+list.size());
mapPost = (Map<String, Object>) list.get(0);
mapTitle = (Map<String, Object>) mapPost.get("title");
postTitle = (String) mapTitle.get("rendered");
mapContent = (Map<String, Object>) mapPost.get("content");
postContent = (String) mapContent.get("rendered");

if(!alreadyNotified(postTitle)){
Log.d("not notified","");
createNotif(postContent,postTitle);
saveNotificationKey(postTitle);
}else{
System.out.print("already notified");
}
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError volleyError) {
Log.d("Error","Error");
}
});

rQueue = Volley.newRequestQueue(NotifierService.this);
rQueue.add(request);

NotifierService.getInstance().getRequestQueue().getCache().clear();
}

这是我发送 volley 请求并从 url 解析 json 的整个函数。
现在我想在不增加请求队列的情况下每分钟获取一次 json。
有没有办法清空请求队列??

最佳答案

如果您想在发生错误时立即取消所有请求:

StringRequest request = new StringRequest(Request.Method.GET, url, new Response.Listener<String>() {
@Override
public void onResponse(String s) {
//....
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError volleyError) {
//....
mRequestQueue.cancelAll(new RequestQueue.RequestFilter() {
@Override
public boolean apply(Request<?> request) {
return true;
}
});
}
});

如果您想在离开 Activity 后立即取消所有请求,请将取消代码放入您的 onStop 方法中。您应该这样做,否则您将在一个可能已经完成的 Activity 中进行操作,并且在作业执行期间可能会造成内存泄漏

关于android - 如何在android中清空 Volley 请求队列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45477484/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com