Не обязательно называть это MVVM, можно использовать и ViewModel и Presenter вместе. Даже в доке гугла про Data Binding есть упоминания про Presenter https://developer.android.com/topic/libraries/data-binding/index.html
Можно было не делать такие костыли с повтором команд для View, а просто для каждого View определить модельный класс, в котором будут храниться все данные нужные для отображения, и делать во View не много методов для установки данных, а один для установки модели, тогда при пересоздании View достаточно установить сохраненную модель, а не повторять все действия.
Например для экрана авторизации в таком модельном классе могли бы быть поля — логин, пароль, флаг для какого-нибудь чекбокса. При создании View, Presenter передает во View модельный класс со значениями по умолчанию если модель еще не была создана, или уже существующую.
А как в RxJava решается проблема, когда запрос к сети завершился, когда Activity было свернуто? В Rx же так же в onResume идет подписка и в onPause отписка? И как сделать так чтобы не было повторного запроса, если он еще выполняется, при пересоздании Activity (речь не про поворот экрана, а про то что Activity можно закрыть кнопкой назад, а потом вернуться обратно).
Очередное решение, которое не поддерживает жизненный цикл activity и fragment? И опять нужно будет делать костыли, как в rx, чтобы это хоть как-то работало?
пользуясь случаем спрошу, как у вас обстоят дела с запуском аппов в которых нативные либы скомпилированы только под arm?
стандартный эмулятор андроида на qemu с жуткими тормозами их запускает
genymotion с помощью arm translation (hoodini) тоже пытается что-то делать, но 50% аппов не работают
а что вы делаете?
А я просто разобрал апп в smali код, убрал вызовы к настоящему сервису геолокации и подменил своим (скомпилированным из обычного java кода и преобразованный в smali), который обращается моему к веб сервису, отдающему координаты). Правда была проблема с oauth авторизацией через гугл сервисы. Там передавался хэш от сертификата, которым подписано приложение. Ну и понятное дело он у меня другой, т.к. пересобрал апп. В итоге oauth авторизацию тоже пришлось выпилить и реализовать свою через обычный UrlConnection
Во первых создавал виртуалку около часа, она бы создавалась бесконечно, если бы не написал в поддержку. Во вторых VM Manager упал на третий день работы и доступ на виртуалку был потерян больше чем на 4 часа. В третьих не работает смена пароля администратора на самой vds (кнопка «Сменить пароль» в VM Manager просто неактивна) и после переустановки системы старый пароль подходить перестал. В четвертых ваши письма попадают в спам. Поддержка отвечает спустя пару часов. Вывод: если не хотите впустую тратить время используйте надежные vds хостинги, а не лоукост
Передаю привет роботу)
Забыли описать еще одну полезную фичу «Recording Settings», где можно указать с каких хостов снифать траффик, чтобы не было лишних запросов на левые урлы
HAXM эмулятор зависает через пару минут после работы, так и не смог нормально поставить google play services и тестировать пуши. В Genymotion же никаких проблем не замечено
Можно было сделать еще быстрее, если:
1) для отображения картинок использовать Picasso или UniversalImageLoader
2) для работы с базой использовать какой-нибудь ORM, например ActiveAndroid
3) для формирования и выполнения http запросов использовать Retrofit
Еще я бы не называл Volley заменой HttpClient'a, т.к. они выполняют разные задачи
Вы считаете что MVC — это обязательно MVC с активной моделью, в которой контроллер не связан с View? В статье показан MVC с пассивной моделью когда контроллер обращается к View для его перерисовки.
Например для экрана авторизации в таком модельном классе могли бы быть поля — логин, пароль, флаг для какого-нибудь чекбокса. При создании View, Presenter передает во View модельный класс со значениями по умолчанию если модель еще не была создана, или уже существующую.
не кастомные шрифты, но для поддержки roboto на android < 4.1
стандартный эмулятор андроида на qemu с жуткими тормозами их запускает
genymotion с помощью arm translation (hoodini) тоже пытается что-то делать, но 50% аппов не работают
а что вы делаете?
https://developer.android.com/training/articles/memory.html#Overhead
Забыли описать еще одну полезную фичу «Recording Settings», где можно указать с каких хостов снифать траффик, чтобы не было лишних запросов на левые урлы
developer.android.com/tools/data-binding/guide.html
1) для отображения картинок использовать Picasso или UniversalImageLoader
2) для работы с базой использовать какой-нибудь ORM, например ActiveAndroid
3) для формирования и выполнения http запросов использовать Retrofit
Еще я бы не называл Volley заменой HttpClient'a, т.к. они выполняют разные задачи