Я получаю следующую ошибку от Retrofit при попытке проанализировать ответ API:
[java.lang.IllegalStateException: Expected BEGIN_OBJECT but was NUMBER at line 1 column 11 path $[0]]
JSON:
[ 7407718726019, 18738122, 18732587, 18737891, 18729099, 18731581, 18737081, 18731938, 18731885, 187, 18724725, 18747879, 18732512, 18732217, 18746712 ]
Нет ключа для этого списка.Может кто-нибудь, пожалуйста, помогите мне с решением этой проблемы.
Вот мой интерфейс определения API:
public interface RemoteInterface {
//Method for an api call
@GET("v0/topstories.json?print=pretty")
Call<List<Response>> getResponse();
}
Вот как я вызываю и обрабатываю API:
public class MainActivity extends AppCompatActivity {
private List<Response> responses;
RemoteInterface remoteInterface;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
remoteInterface = ApiClient.getApiClient().create(RemoteInterface.class);
Call<List<Response>> newsCall = remoteInterface.getResponse();
newsCall.enqueue(new Callback<List<Response>>() {
@Override
public void onResponse(Call<List<Response>> call, retrofit2.Response<List<Response>> response) {
Toast.makeText(MainActivity.this, (CharSequence) response.body
(), Toast.LENGTH_SHORT).show();
Log.d("response",response.body().toString());
}
@Override
public void onFailure(Call<List<Response>> call, Throwable t) {
Toast.makeText(MainActivity.this, "fail", Toast.LENGTH_SHORT).show();
Log.d("response",t.getMessage());
}
});
}
}