
J
04.12.2016
15:05:03
Ок, спасибо всем
когда из гугла звонят насчёт собеседований, первый вопрос по телефону это как работает HashTable

Anton
04.12.2016
15:05:35
ой а я хз как она работает

Vitaliy
04.12.2016
15:06:24
Вообще везде
Принцип очень простой

Google

Vitaliy
04.12.2016
15:06:49
Надо просто почитать и понять
Это реально нужно, пацаны

J
04.12.2016
15:09:26
ну на практике 95% девелоперов это не нужно :)

Vitaliy
04.12.2016
15:09:54
Для задач по оптимизации таки нужно
Но редко, да
А вот уметь оверрайдить эти методы это святое

J
04.12.2016
15:10:24
ну на практике люди по 10 лет код пишут и максимальный размер коллекции у них 50 элементов

Anton
04.12.2016
15:10:32
в андроиде да

Влад
04.12.2016
15:25:05
Кто нибудь покупал платные уроки на фандроид ?

Anton
04.12.2016
15:25:16
где?

Влад
04.12.2016
15:26:45
Fandroid

Владислав
04.12.2016
15:27:50
платные уроки не нужны

Alex
04.12.2016
15:28:56
Да,не стоит

Google

Влад
04.12.2016
15:30:07
Вот это я и хотел узнать, насколько они адекватные/полезные для начала

Anton
04.12.2016
15:31:18
хуйня какая то
полное говно
http://www.androidhive.info
вот тут класные уроки

J
04.12.2016
15:33:47
вам сюда посоны
https://www.udacity.com/google-scholarships
гугл платит

Alex
04.12.2016
15:35:51
Про юдпсити - согласен

Artem
04.12.2016
15:52:58
Россия ток в пролете
или я плохо смотрел?

Alexey
04.12.2016
15:54:46

J
04.12.2016
15:59:40
там 2 курса

Dmitrii
04.12.2016
16:01:38
Хм, я же правильно понимаю, что если вызвать Handler.postMessage() из моего кастомного треда, то в Handler.handleMessage(Message msg) я буду работать в потоке UI?

Максим
04.12.2016
16:01:50
Материалы по теме: Firebase - java-help.ru/articles-firebase
Теги: #firebase, #link

Alexey
04.12.2016
16:08:50
@korotovskii в том потоке, которому принадлежит этот Handler

Dmitrii
04.12.2016
16:13:17
@korotovskii в том потоке, которому принадлежит этот Handler
Странно. Я создал Handler в activity как final поле, создаю animator в UI потоке и швыряю его в очередь, которую у меня палит отдельный тред. Отдельный тред потом получает объект ViewPropertyAnimatorCompat который был создан в UI потоке, и выполняет handler.obtainMessage(0, animation) а затем handler.dispatchMessage(message). Управление прилетает в Handler.handleMessage(Message msg) и когда я стартую анимацию получаю Animators may only be run on Looper threads

Alexey
04.12.2016
16:14:27
@korotovskii "Я создал Handler в activity как final поле" в каком потоке ты был, когда создавал этот Handler?

Vladislav
04.12.2016
16:17:12
Всем привет! Столкнулся с пока не разрешимой проблемой для себя. Андроид ведет себя неадекватно...
Попытаюсь сформулировать проблему.
В Application я определеяю тему для всего приложения, т.к. через манифест не всегд работает.
setTheme(R.style.MyTheme);
Далее в разных кусках проекта я достаю данные из стиля след образом:
getContext().getApplicationContext().obtainStyledAttributes(R.styleable.Something) ....
При этом определяя Something в attrs
<declare-styleable name="Something"> ...
Так вот, в чем собвтенно проблема. В одном месте это получается достать, а в другом нет. Код одинаковый и не могу раздуплить в чем моя ошибка.

Alexey
04.12.2016
16:18:15
@korotovskii впрочем, ты бы получил исключение, если бы создавал handler в треде без очереди сообщений. В каком потоке запускается анимация? точно в коллбеке Handler.handleMessage()? Да и собсно зачем ты анимации через другой тред прогоняешь так?

Google

Ilya
04.12.2016
16:19:36
Ребят кто знает чат о пк и тд
?

Dmitrii
04.12.2016
16:20:29
Это на момент создания Handler

Alexey
04.12.2016
16:20:42
@vlad_karpman а зачем ты в application контексте тему ставишь и через getApplicationContext() получаешь? Тема и всё оформление - это обычно атрибуты контекста activity, а не application

Dmitrii
04.12.2016
16:24:09
В общем если суммировать все это, у меня есть куча элементов на экране, например 3 штуки, на каждом надо запускать анимацию во время он-тач события. Он-тач события могут быть разные, и если тип события сменился, то "намерение" запустить анимацию для этого он-тач события надо поставить в очередь даже если анимации из предыдущего еще не завершились, но запускать надо только тогда, когда все анимации закончат свою работу (на всех элементах)


Ilya
04.12.2016
16:25:18
Спасибо

Dmitrii
04.12.2016
16:25:45
Мне еще советовали пойти путем ViewGroup, но вариант с потоком, который разгребает очередь тасков на анимации мне лично показался пока понятнее, несмотря на то, что он может и не такой уж и прямой.

Alexey
04.12.2016
16:26:12
@korotovskii если у тебя этот поток живет примерно столько же, сколько и activity, то можно добавить очередь сообщений к своему потоку. См. HandlerThread.

Dmitrii
04.12.2016
16:26:34
Да, именно столько же.
Создан имеено чтобы грести очеедь событий на запуск анимаций и ставить локи.

Alexey
04.12.2016
16:30:12
@korotovskii странно, что handleMessage() выполняется в твоем же потоке, не должен, по идее, там же вообще очереди нет. Проследи по стектрейсу, как ты в этот handleMessage() попадаешь

Dmitrii
04.12.2016
16:31:02
Может я как то не так сообщение посылаю?
А во, да. Надо sendMessage() перепутал я.

Alexey
04.12.2016
16:33:23
@korotovskii sendMessage(), либо Message.sendToTarget()

Dmitrii
04.12.2016
16:38:44
@illarionov а что лучше, держать свой тред или использовать HandlerThread?