You can access JSONArray and JSONObject using retrofit 2.0 in android. Here you want to access JSONArray using a modification for which you must do the following:
Interface Class:
package com.androidtutorialpoint.retrofitandroid;
import java.util.List;
import retrofit.Call;
import retrofit.http.GET;
public interface RetrofitArrayAPI {
@GET("api/RetrofitAndroidArrayResponse")
Call> getStudentDetails();
}
- . , JSONArray , :
void getRetrofitArray() {
Retrofit retrofit = new Retrofit.Builder()
.baseUrl(url)
.addConverterFactory(GsonConverterFactory.create())
.build();
RetrofitArrayAPI service = retrofit.create(RetrofitArrayAPI.class);
Call> call = service.getStudentDetails();
call.enqueue(new Callback>() {
@Override
public void onResponse(Response> response, Retrofit retrofit) {
try {
List StudentData = response.body();
for (int i = 0; i<StudentData.size(); i++) {
if (i == 0) {
text_id_1.setText("StudentId : " + StudentData.get(i).getStudentId());
text_name_1.setText("StudentName : " + StudentData.get(i).getStudentName());
text_marks_1.setText("StudentMarks : " + StudentData.get(i).getStudentMarks());
} else if (i == 1) {
text_id_2.setText("StudentId : " + StudentData.get(i).getStudentId());
text_name_2.setText("StudentName : " + StudentData.get(i).getStudentName());
text_marks_2.setText("StudentMarks : " + StudentData.get(i).getStudentMarks());
}
}
} catch (Exception e) {
Log.d("onResponse", "There is an error");
e.printStackTrace();
}
}
@Override
public void onFailure(Throwable t) {
Log.d("onFailure", t.toString());
}
});
}
POJO:
package com.androidtutorialpoint.retrofitandroid;
public class Student {
private int StudentId;
private String StudentName;
private String StudentMarks;
private int inStock;
public int getStudentId() {
return StudentId;
}
public void setStudentId(int bookId) {
this.StudentId = StudentId;
}
public String getStudentName() {
return StudentName;
}
public void setStudentName(String name) {
this.StudentName = StudentName;
}
public String getStudentMarks() {
return StudentMarks;
}
public void setStudentMarks(String price) {
this.StudentMarks = StudentMarks;
}
}
, JSONArray URL Retrofit 2.0 .
, .
: :
AndroidTutorialPoint 2.0