如何使用快速的Android网络库在Android中显示Json结果
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何使用快速的Android网络库在Android中显示Json结果相关的知识,希望对你有一定的参考价值。
我正在使用快速android网络库。 Json的回应正在发挥作用。我在logcat中得到了整个json字符串。如何在此库中的textview或listview中的textview或jsonarray中显示特定的json对象或字符串。请帮助,在此先感谢。
JSONObject json = new JSONObject();
try {
json.put("email", loggedInUser);
} catch (JSONException e) {
e.printStackTrace();
}
Log.e("JSON", json.toString());
AndroidNetworking.post(Constants.read_profile)
.addBodyParameter("json", json.toString())
.setTag("test")
.setPriority(Priority.MEDIUM)
.build()
.getAsJSONObject(new JSONObjectRequestListener() {
@RequiresApi(api = Build.VERSION_CODES.JELLY_BEAN)
@Override
public void onResponse(JSONObject response) {
Log.e("READ", response.toString());
}
@Override
public void onError(ANError anError) {
Log.e("READ", anError.toString());
}
});
答案
尝试使用GSON进行json解析。我正在您现有的代码中实现GSON代码。
在app gradle实现'com.google.code.gson:gson:2.8.1'中添加此内容
对于JSONObject响应
getAsJSONObject(new JSONObjectRequestListener() {
@RequiresApi(api = Build.VERSION_CODES.JELLY_BEAN)
@Override
public void onResponse (JSONObject response){
Log.e("READ", response.toString());
if (response != null) {
Gson gson = new Gson();
Type type = new TypeToken<YourModelClass>() {
}.getType();
YourModelClass result = gson.fromJson(response.toString(), type);
}
}
@Override
public void onError (ANError anError){
Log.e("READ", anError.toString());
}
});
对于JSONArray响应
@Override
public void onResponse (JSONArray response){
Log.e("READ", response.toString());
if (response != null) {
Gson gson = new Gson();
Type type = new TypeToken<List<YourModelClass>>() {
}.getType();
List<YourModelClass> result = gson.fromJson(response.toString(), type);
}
}
以上是关于如何使用快速的Android网络库在Android中显示Json结果的主要内容,如果未能解决你的问题,请参考以下文章
我的Android进阶之旅在Android中使用MediaPipe库在实时视频源上实现人脸网格Face Mesh的绘制
我的Android进阶之旅在Android中使用MediaPipe库在实时视频源上实现人脸网格Face Mesh的绘制
如何使用 Retrofit 库在 Android 中下载文件?
如何使用 Leanback 库在 Android TV 中创建顶部导航栏