
Roman
08.09.2016
16:02:29

Alexey
08.09.2016
16:03:07
И без него вроде норм

Google

Roman
08.09.2016
16:03:36
ну так то и без MVP норм тоже

Максим
08.09.2016
16:03:40
http://prntscr.com/cfo85f
Пожалуйста

Alexey
08.09.2016
16:04:19
А без роутеров нет проблем
Проблем нет, значит необходимости нет

Roman
08.09.2016
16:05:13
А зачем он?
он для того, чтобы не делать связывания одного активити с другим в данной схеме. активити дергает роутер и он уже открывает другой активити. вся логика переходов в одном месте. активити 1 не надо знать об существовании активити 2 чтобы его открыть. ты потом меняешь активити 2 на активити 2 или на диалог или на что-то еще и все работает также
это если поверхностно. а с точки зрения MVP это позволяет осуществлять переходы не из презентера или вью, а из интерактора, что правильно и часто на много более удобно

Максим
08.09.2016
16:06:51
Я прислал стектрейс ^

Roman
08.09.2016
16:07:12
А без роутеров нет проблем
ну у меня всегда были, пока я его не изобрел. а потом узнал, что это был велосипед и что это называется роутер
=)

Alexey
08.09.2016
16:07:36

Google

Roman
08.09.2016
16:08:19
может быть один
может быть несколько для разных флоу, но я так не делал
но не один для активити точно

Alexey
08.09.2016
16:08:41

Roman
08.09.2016
16:08:50
смысл в том, что ты эту логику выносишь и при том в некое определенное место

Alexey
08.09.2016
16:09:28
Я видел что похоже
В приложениях

Roman
08.09.2016
16:09:35
у тебя не видно половину стека

Alexey
08.09.2016
16:09:49
Navigator назывался, он просто стартует другие активити

Максим
08.09.2016
16:10:18
http://pastebin.com/SUqV42WP

Roman
08.09.2016
16:10:30
мне просто странно. на айос активно юзают вайпер и там явно говорят про роутер. а на андроиде это как-то не принято. ограничиваются mvp или mvp + interactors

Максим
08.09.2016
16:10:34
Это весь

Roman
08.09.2016
16:10:38
хотя разницы вообще никакой между ios и android в этом плане

Максим
08.09.2016
16:15:11
java.lang.IllegalStateException: Fatal Exception thrown on Scheduler.Worker thread.
Здесь проблема
Но вот почему
...

Google

Roman
08.09.2016
16:16:14
она не здесь

Максим
08.09.2016
16:16:49
Ну здесь название проблемы))
Понятное дело, что где-то внутри сторио, но где и прочему не показывает

Gerc
08.09.2016
16:20:24

Andre
08.09.2016
16:20:41

Roman
08.09.2016
16:20:48

Andre
08.09.2016
16:22:24

Roman
08.09.2016
16:22:48

Gerc
08.09.2016
16:23:25
Мда, ну и оверхед

Roman
08.09.2016
16:23:30

Gerc
08.09.2016
16:23:59
Ссылки активити тащить в презентер и интерактор

Andre
08.09.2016
16:24:01
в иос же до сих пор топ-девелоперы ручками интерфейс рисуют, без автолэйаута?
Я Хз даже как этот лэйаутьработатк
Только руками
У них там, вроде, пользоваться интерфейс билдером до сих пор считается дурной практикой

Roman
08.09.2016
16:24:05
Мда, ну и оверхед
оверхеда нет вообще. кода практически ровно столько же. только он в логически правильном месте.

Gerc
08.09.2016
16:24:35
Да нихуя не в логическом месте

Roman
08.09.2016
16:24:36

Gerc
08.09.2016
16:25:01

Google

Roman
08.09.2016
16:25:28
ну а то что ссылку на вью ты тащишь в презентер это типа чем отличается? в чем проблема-то?

Gerc
08.09.2016
16:25:56
Ты еще и в интерактор тащишь

Roman
08.09.2016
16:26:05
так в чем проблема?

Gerc
08.09.2016
16:26:47
Продолжай размазывать и пихать интерфейсы активити/фрагмента по всюду

Максим
08.09.2016
16:26:59
Самое интересное, что онЕррор переопределен...

Roman
08.09.2016
16:27:32
можно вообще ничего не размазывать и все пихать в один файл размером овер 5000 строк
было время так и делали

Admin
ERROR: S client not available

Andre
08.09.2016
16:31:08
Я сам, кстати, в андроиде предпочитаю выносить код, отвечающий за предоставление данных, в отдельный класс
или у вас тут не про то дискасс?

Roman
08.09.2016
16:32:35
предоставление данных это типа Data Access Layer?
в терминологии clean это называется репозиторий
роутер это другое

Gerc
08.09.2016
16:35:50
Роутер в интеракторе ну ни как не может быть

Roman
08.09.2016
16:37:58
Роутер в интеракторе ну ни как не может быть
я не хочу спорить. если я не прав и кто-то сможет объяснить почему он там не должен быть, то я буду только рад. моя цель научиться, а не отстоять свою точку зрения. но без аргументов трудно понять тут что-то

Alexey
08.09.2016
16:44:06

Stas
08.09.2016
16:44:26
Во всех схемах mvp рисуют модель как DataManager, который агрегирует разные dbManager, apiManager. Я уже в третем проекте пишу несколько моделей, котроые юзают части тех-же *Manager. А вы как поступаете?

Alexey
08.09.2016
16:44:51

Roman
08.09.2016
16:51:18
Во всех схемах mvp рисуют модель как DataManager, который агрегирует разные dbManager, apiManager. Я уже в третем проекте пишу несколько моделей, котроые юзают части тех-же *Manager. А вы как поступаете?
Я делаю отдельно модели, отдельно сервисы работы с ними и отдельно репозитории, с которыми непосредственно уже работают интеракторы. репозиторий может юзать несколько дата провайдеров чтобы получить данные, которые у него запросили. например он может взять данные из кеша, а если их нет, полезть в базу, а если там нет, то взять их с бэкенда. вся эта логика для интерактора прозрачна. кроме того репозиторий можно использовать как Source of Truth объект для работы с изменяемыми в приложении объектами

Google

Stas
08.09.2016
17:04:20
Verification error in android.view.View s.c.com.f.view.frament.BaseMenuFragment.createViewWithActionBar(int, int, android.view.ViewGroup)
во время старта фрагмента кидается эта ошибка, логи пустые, экран белый
protected fun createViewWithActionBar(
@LayoutRes layout: Int,
@StringRes title: Int,
rootGroup: ViewGroup?): ViewGroup {
val li = LayoutInflater.from(context)
val root = li.inflate(R.layout.screen_menu_content, rootGroup, false) as ViewGroup
val content = li.inflate(layout, root, true)
// настройка action bar
return root
}
}

Максим
08.09.2016
17:06:20

Egor
08.09.2016
17:43:00
народ, ктото уже интегрировался с ваярБаес пушами? есть пару вопросов

Alexander
08.09.2016
17:45:37
ваярБаес звучит хорошо))

Egor
08.09.2016
17:51:53
firebase - для тех, кому это звучит плохо

Alexander
08.09.2016
17:55:02
тестил там всё было плохо вплоть до крашей, сейчас хз

Egor
08.09.2016
17:57:18
меня интересуют пуши, вроде бы интегрировался с ними - все ок, но есть вопросы типа, а кто дергает получение токена, как хендлить нотишикейшены с консоли и тд

Yura
08.09.2016
18:11:09
Кто пользуется genymotion, нормально у вас новые создаются? А то сегодня попробовал, не стартуют. В логах фик поймёшь. Старые работают

Egor
08.09.2016
18:25:22
я от него отказался, когда стал работать нормально родной эмулятор

Alexey
08.09.2016
18:43:13

Gregory
08.09.2016
18:48:47
Всем привет, я Гриша и когда-то раньше работал в контакте

Alexey
08.09.2016
18:49:29
привет

Roman
08.09.2016
18:49:49
Гришка!
Знаем таких)

Alexey
08.09.2016
18:50:25

Gregory
08.09.2016
18:51:28