Как я делаю (упрощенный псевдокод):
Код: Выделить всё
Запрос_к_api_чтобы_получить_список_id_моих_друзей (new Listener() {
...
@Override
public void onComplete() {
Запрос_к_api_чтобы_получить_фотки+имена_и_фамилии_друзей (new Listener() {
...
@Override
public void onComplete() {
//инициилизирую адаптер, с помощью которого и вывожу на экран мой список
}
Вопросы такие: является ли мой подход вообще правильным? Вроде с vk api другое как-то не особо приходит в голову. Единственное что: при обращении к api я использую BatchRequest - это формально правильно (потому что я получаю инфу для большого кол-ва друзей
....). Но заметил по логам, что скорость этого Batchrequest-a весьма мала.
Пару лет назад она измерялась десятками запросов в секунду. А теперь за секунду несколько штук всего пролетает. И я думаю, как это можно ускорить. Как в официальном приложении.
Можно, конечно, по-извращенски отсылать одиночные запросы с периодом, скажем 3 мс. Но это опять ничего не гарантирует.
Так как когда-то я вообще отсылал одиночные запросы к vk api без таймаута (со скоростью работы dvm). Потом в один прекрасный день моё приложение начало вылетать. Я заманался искать, в чем дело. И после 10 ч поисков решил поставить таймаут на очередное обращение. И сработало.
Но после такой плюхи я теперь не уверен в том, что моё приложение не полетит, если я буду такую отсебятину гнать.
Надеюсь, вы поняли всё. Буду очень благодарен, если кто знающий отпишется.