gpt4 book ai didi

java - Android-volley:如何获取字符串响应值并将其分配到 volley StringRequest 方法之外?

转载 作者:太空宇宙 更新时间:2023-11-04 10:16:29 28 4
gpt4 key购买 nike

当我在调试器中运行该方法时,数据按预期显示,但是每当我尝试使用它执行任何操作时,parentObject 的值都会返回为 null。

我只是想从服务器获取响应并将其存储为 JSONObject 以便在其他地方重用。

public void jsonParse() {
String url = "http://178.128.166.68/getUserInfo.php";

StringRequest request = new StringRequest(Request.Method.POST, url, new Response.Listener<String>() {
@Override
public void onResponse(String response) {
try {
/*
the data appears as expected within the debugger however
returns null when i attempt to use it elsewhere
*/
parentObject = new JSONArray(response);

} catch (JSONException e) {
e.printStackTrace();
}
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {

}
}) {
@Override
protected Map<String, String> getParams() {
Map<String, String> params = new HashMap<String, String>();
params.put("phone", phone);
params.put("password", password);

return params;
}
};
mQueue.add(request);


}

最佳答案

StringRequest request = new StringRequest(Request.Method.POST, url,  new Response.Listener<String>() {
@Override
public void onResponse(String response) {
try {
JSONObject obj = new JSONObject(response);
parentObject = new JSONArray(obj);
for (int i = 0; i < parentObject.length(); i++) {
JSONObject parObj = (JSONObject) parArray.get(i);
ModelClass modelClass = new ModelClass()// you have to create a model
modelClass.set1Parameter(parObj.getString("1Parameter"));
modelClass.set2Parameter(parObj.getString("2Parameter"));
arrayList.add(modelClass)//In your arraylist save the data


}



} catch (JSONException e) {
e.printStackTrace();
}
}

关于java - Android-volley:如何获取字符串响应值并将其分配到 volley StringRequest 方法之外?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51663827/

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