Я новичок в Android, но ранее я использовал AWS SDK для PHP, и у меня никогда не было такой проблемы. Я использую метод DescribeInstancesRequest для получения списка всех экземпляров и их статусов. Идея состоит в том, чтобы иметь список всех экземпляров с ToggleButton для операций start/stop. За AsyncTask я выполнение запроса на AWS, как это:Android AWS SDK возвращает только один экземпляр EC2 вместо списка
private class LoadInstancesListTask extends AsyncTask<DescribeInstancesRequest, Void, DescribeInstancesResult> {
private Context ctx;
public void setContext(Context ctx) {
this.ctx = ctx;
}
@Override
protected DescribeInstancesResult doInBackground(DescribeInstancesRequest... params) {
DescribeInstancesRequest request = params[0];
AmazonEC2AsyncClient client = new AmazonEC2AsyncClient(request.getRequestCredentials());
client.setEndpoint("ec2.us-east-1.amazonaws.com");
DescribeInstancesResult response = client.describeInstances(request);
return response;
}
@Override
protected void onPostExecute(DescribeInstancesResult response) {
Reservation reservation = response.getReservations().get(0);
Log.d(MainActivity.TAG, reservation.toString());
InstanceListAdapter adapter = new InstanceListAdapter(this.ctx, R.layout.instance_list_row_layout, reservation.getInstances());
setListAdapter(adapter);
}
}
Вещи я получаю экземпляр только 1 EC2 в ответ списке экземпляров вместо всех 4 В настоящее время я использую. У кого-то была аналогичная проблема или вы знаете другой способ получения списка экземпляров из AWS SDK?
Буду признателен за любую помощь - спасибо.
Я не знаю API Amazon, но с этим 'response.getReservations(). Get (0)' Я бы сказал, что вы только возвращаете индекс 0 из ответа, и это, вероятно, почему вы не получите все. – kaderud
@chrkad спасибо! Я думал, что все экземпляры попадают под одну оговорку, и, несмотря на то, что я проверил список экземпляров в одном заказе, я полностью забыл проверить, есть ли другие оговорки :) – NemanjaSRB