
Gleb
26.04.2017
18:50:20

Quantum Harmonizer
26.04.2017
19:20:37
Товарищи, такой вопрос.
Гугл говорит, что то, что на картинке, может быть заменено на RelativeLayout, и тогда иерархия станет более плоской и эффективной.
Но мне кажется, что не всегда, ведь в RelativeLayout всё зависит от всего и может мериться дольше и мучительнее.
У кого какой опыт с этим?
https://developer.android.com/images/training/hierarchy-linearlayout.png

Роман
26.04.2017
19:29:21
придумали констрен лаяут, а так я делаю тоже такую вложенность все нормально рендерит

Quantum Harmonizer
26.04.2017
19:30:14
"нормально" — это сколько, если в кадрах в секунду на девайсах 2012 года, например? =)

Google

Alexey
26.04.2017
19:30:39

Quantum Harmonizer
26.04.2017
19:32:21
а ты меришь кадры?
Я когда-то собирался, но потом меня ещё и спровоцировали на это в соседнем чате. :)

Ярослав
26.04.2017
19:33:22
Каждая выложенная вьюха сильно бьет по производительности
Если вьюхи расположены по углам, можно и FrameLayout, но прироста производительности от этого практически не будет

Dmitry
26.04.2017
19:38:31

Ярослав
26.04.2017
19:39:12
Не могу на его счет что-то сказать, т.к. сам лично не тестировал
А то что говорят, что он лучше — не знаю, не внушает доверия, где-то может и да, а где-то нет
И пихать везде, уверен, его точно не стоит

Dmitry
26.04.2017
19:40:53
везде - нет, для flat view - самое то

Ярослав
26.04.2017
19:41:48
Может быть, не спорю. Но вопрос был в том, влияет ли вложенность вьюх на производительность
Ответ — да, еще как

Google

Quantum Harmonizer
26.04.2017
19:42:53
Вопрос — что быстрее, relativeLayout { 3 views } или linearLayout { view, linearLayout { 2 views } }, и какие есть corner cases, связанные с этим.

Dmitry
26.04.2017
19:44:16
тут еще нужно учитывать факт как изменение размера вюхи во 2м linearLayout (и как это повлияет на множественные вызовы циклов measure/layout

Quantum Harmonizer
26.04.2017
19:53:24
Лол. У ВКонтакте в списке сообщений — UsableRecyclerView, внутри которого — DialogEntryView.
Вот почему он не так тупит при скролле :)

Dmitry
26.04.2017
19:54:03
Flat view же
http://lucasr.org/2014/05/12/custom-layouts-on-android/ статья на эту тему

Quantum Harmonizer
26.04.2017
19:54:51

Roman
26.04.2017
20:05:45
Парни, я понимаю что вопрос упадет в пустоту, но все же спрошу. Имел кто дело со сборкой AOSP? Интересует как и в чем ковырять некоторое вендорское приложение. Там все конфигурации через android.mk файлы
В идеале конечно выдернуть в Android Studio и вернуть потом назад, но я понял уже что это не так просто.

Alex
26.04.2017
20:38:57
Ребят, подскажите можно как то сделать так чтобы приложение стартовало сразу же после запуска системы, так чтобы не было видно рабочего стола, то есть вот прошла заставка загрузки и сразу же экран приложения?

Gregory
26.04.2017
20:40:49
если вместо рабочего стола, то сделать его лаунчером и поставить по умолчанию

Alex
26.04.2017
20:43:25
У boot_completed все же есть задержка и видно сначала рабочий стол, а потом уже стартует само приложение

Gregory
26.04.2017
20:44:31
так а какая цель?
сделать киоск?

Donna Anna
26.04.2017
20:45:52

Gregory
26.04.2017
20:47:25
я вот потому и спрашиваю, зачем это надо
если это приложение для пользователей, то так делать, естественно, нельзя

Alex
26.04.2017
20:47:58

Gregory
26.04.2017
20:48:09
тогда просто сделать его лаунчером и не париться)

Google

Илья
26.04.2017
20:48:21
Так есть же kiosk mode

Alex
26.04.2017
20:48:37
А ещё есть cosu

Roman
26.04.2017
20:48:43
http://www.andreas-schrade.de/2015/02/16/android-tutorial-how-to-create-a-kiosk-mode-in-android/

Alex
26.04.2017
20:49:02
Я интересуюсь ради Best practice

Roman
26.04.2017
20:49:21
В статье все типы анального огораживания

Alexey
26.04.2017
20:49:30
@grishka а как ты со своим подходом в "лоб" решаешь проблему, что ты типо такой получил что-то из сети, хочешь это во вьюхи вставить, а тут юзер начал сворачивать приложение, и оно все стало null? Тупо проверка на null ?

Gregory
26.04.2017
20:49:49

Alexey
26.04.2017
20:50:07

Gregory
26.04.2017
20:50:23
вьюхи не могут дестроиться отдельно от активити ни при каких условиях

Alexey
26.04.2017
20:50:24
во фрагменте том же onDestroyView

Gregory
26.04.2017
20:50:31
это вы любите пересоздавать вьюхи на каждый чих, но я-то так никогда не делаю ;)

Alexey
26.04.2017
20:51:09
а если ты такой свернул приложение, а оно умерло

Quantum Harmonizer
26.04.2017
20:51:35

Gregory
26.04.2017
20:51:46

Alexey
26.04.2017
20:52:06
а, ну да точно

Gregory
26.04.2017
20:52:41
это вот как раз плюс отсутствия архитектуры — меньше кода и меньше багов :)

Alexey
26.04.2017
20:52:48
а с COnfigChanges вьюхи не дестроятся во фрагменте когда сворачиваешь приложение?

Gregory
26.04.2017
20:52:56
нет

Google

Gregory
26.04.2017
20:53:09
дестроятся, если использовать back stack, поэтому я его больше не использую

Alexey
26.04.2017
20:53:39
окей, если не кладешь в бэк стек как тогда навигацию делаешь?

Gregory
26.04.2017
20:53:58
на стеке активити

Alexey
26.04.2017
20:54:30

Gregory
26.04.2017
20:54:44
столько багов из-за сломанных состояний у меня ещё в жизни не было

Илья
26.04.2017
20:55:05
Это ж неудобно ппц

Admin
ERROR: S client not available

Alexey
26.04.2017
20:55:28

Gregory
26.04.2017
20:55:30
к тому же, я уже научился делать красивые переходы между активити на аниматорах

Alexey
26.04.2017
20:55:46

Gregory
26.04.2017
20:55:50
сам использовал в приложении для часов, Ильнар вроде тоже где-то у себя пробовал

Quantum Harmonizer
26.04.2017
20:56:34
но выглядит прикольно.)

Gregory
26.04.2017
20:56:39

Quantum Harmonizer
26.04.2017
20:56:53

Gregory
26.04.2017
20:56:55
то есть да, у меня обычная структура приложения — одна активити и куча фрагментов

Alexey
26.04.2017
20:57:01

Google

Gregory
26.04.2017
20:57:08

Quantum Harmonizer
26.04.2017
20:57:29

Gregory
26.04.2017
20:57:37

Alexey
26.04.2017
20:57:53

Gregory
26.04.2017
20:57:57

Quantum Harmonizer
26.04.2017
20:58:48

Gregory
26.04.2017
20:59:32

Quantum Harmonizer
26.04.2017
21:00:10

Gregory
26.04.2017
21:00:13
ещё при моей схеме прокидывать результаты можно через просто startActivityForResult
не какие-то колбэки которые работают через жопу, а true android way :)

Quantum Harmonizer
26.04.2017
21:00:43

Gregory
26.04.2017
21:01:50

Alexey
26.04.2017
21:02:16

Gregory
26.04.2017
21:02:18
но всё равно мне больше нравится идея, что на каждый шаг навигации отдельное окно на уровне системы

Alexey
26.04.2017
21:02:45
есть у активити

Gregory
26.04.2017
21:02:57
активити это абстракция над окном ;)

Alexey
26.04.2017
21:03:12

Gregory
26.04.2017
21:03:15
но да, она особым образом реализована на уровне системы, я смотрел
достаточно глубоко зарылся в AOSP из любопытства

Alexey
26.04.2017
21:03:46

Gregory
26.04.2017
21:03:53
там окно тебе создаёт система, а не ты сам через WindowManager