StartAndroid
10.7K subscribers
371 photos
10 videos
5 files
1.75K links
Канал об Android (Андроид) разработке

Сайт - http://startandroid.ru

Чат - https://tttttt.me/startandroidchat

Контакты - https://startandroid.ru/ru/about/cntct5.html

Реклама - https://startandroid.ru/ru/about/reklama.html
Download Telegram
This media is not supported in your browser
VIEW IN TELEGRAM
В новой версии Android Studio появилась интеграция с Dagger.

1) Если вам надо узнать откуда именно объект инджектится в конструктор или в Inject аннотацию, вы можете сделать это одним кликом.

2) Аналогично работает и в обратную сторону. Одним кликом можно получить список всех мест, куда инджектится объект.

3) Поиск Find Usages для метода, который провайдит объект, содержит новую секцию Dependency Consumer(s), в которой будут отображены все места, куда инджектится этот объект.

Я проверил у себя в небольшом проекте, работает отлично.

Недостаток только один - это доступно пока что только в Canary версии (4.1 Canary 7).

#androidstudio #dagger

https://developer.android.com/studio/preview/features?buildsystem=ndk-build#dagger-navigation
Автор пишет о том, что при использовании Dagger код приложения очень зависим от него. И дает несколько советов как этого избежать.

#android #di #dagger

https://proandroiddev.com/clean-dagger-f248eda5790b
Статья с размышлениями о плюсах и минусах использования аннотации @Inject в конструкторе класса. Приходится выбирать между количеством кода и его зависимостью от конкретной библиотеки.

#codebase #dagger #di

https://proandroiddev.com/dagger-and-inject-on-constructors-do-or-dont-9d97e7c93f84
Hilt получил стабильную версию, его теперь официально можно использовать.

У меня по этой теме обязательно будет несколько уроков в обновленном курсе по Dagger, над которым я сейчас работаю. Практически все там я переписываю с нуля и делаю объяснения более подробными. Плюс, добавляю новые темы. Вместо текущих 6 уроков в итоге будет около 20. Ориентировочный срок публикации - конец мая или начало июня.

#android #dagger #hilt #di

https://medium.com/androiddevelopers/hilt-is-stable-easier-dependency-injection-on-android-53aca3f38b9c
Я начал выкладывать новые уроки для курса Dagger. Это не новый курс, а обновление старого.

Практически весь материал я переписываю заново. Но пример с макдаком из первого урока никуда не делся)

Очень много времени я уделил темам, которые могут вызывать наибольшие затруднения - сабкомпоненты и scope.

Для сабкомпонентов я подробно расписал, в чем заключается их связь с компонентом родителем. А также, чем эта связь отличается от dependencies связи между компонентами.

Тему scope я начал с рассмотрения времени жизни компонентов и сабкомпонентов. И уже после этого перешел к теме синглтонов и scope аннотаций с максимально подробными объяснениями, как все это работает. При этом я не использовал стандартную Singleton аннотацию. На мой взгляд она может запутать.

Урок про билдер был также переработан и дополнен темой Factory.

Я продолжаю работу над курсом. Впереди такие темы как Assisted Injection и Hilt. Кроме этого я посмотрю официальные Android доки. Возможно, там найдется что-то интересное.

Первые два урока курса доступны всем желающим.

#dagger #course

https://startandroid.ru/ru/courses/dagger-2.html
По Dagger вышел новый урок. Про инджект объектов в ViewModel и про передачу компонента от Activity фрагменту.

Следующий на очереди - Hilt. Черновики первых уроков уже готовы. Сначала мы с помощью даггера сами сделаем то, что под капотом делает Hilt. Это поможет лучше понимать его работу. А потом уже рассмотрим, как использовать Hilt в проекте.

#dagger #course

https://startandroid.ru/ru/courses/dagger-2.html
Вышел урок по Hilt в рамках курса Dagger. Урок открыт, вы можете просмотреть его, не покупая курс.

Для начала я решил показать, как Hilt работает под капотом. Самого Hilt в уроке пока нет. Вместо этого мы используем Dagger так, как это сделал бы Hilt. Это позволит нам лучше понимать, что именно он делает под капотом, и сильно упростит понимание дальнейших уроков по этой теме.

#dagger #hilt #course

https://startandroid.ru/ru/courses/dagger-2.html
По Hilt вышел второй урок. Он показывает, насколько проще можно получить такой же результат, который мы с помощью даггера делали в первом уроке.

Оба урока находятся в свободном доступе. Рекомендую к просмотру, если вы уже знаете даггер и хотели понять, что же такое Hilt.

#dagger #hilt #course

https://startandroid.ru/ru/courses/dagger-2.html
Новый урок по Hilt.

В нем разбираемся как подключать модули и использовать scope. А также рассматриваем, какие Android объекты нам доступны в модулях.

#dagger #hilt #course

https://startandroid.ru/ru/courses/dagger-2.html
Новый урок по Hilt.

В нем разбираем, какие еще компоненты есть в Hilt, для каких Android объектов они используются, какой у них scope и т.п.

#dagger #hilt #course

https://startandroid.ru/ru/courses/dagger-2.html
Новый урок по Hilt.

В нем разбираемся, как аннотация EntryPoint позволяет нам получить доступ к Hilt компонентам

#dagger #hilt #course

https://startandroid.ru/ru/courses/dagger-2.html
Вышел новый урок по Hilt, про создание своего кастомного компонента.

#dagger #hilt #course

https://startandroid.ru/ru/courses/dagger-2.html
Dagger и Hilt переходят с kapt на KSP

#android #dagger #hilt #ksp #kapt

https://dev.to/cdsap/ksp-in-android-projects-5cj3
В Hilt появилась возможность использовать Assisted Injection для ViewModel, чтобы передавать свои объекты в конструктор модели.

#android #dagger #hilt #viewmodel

https://medium.com/@alexander.michaud/hiltviewmodel-assisted-injection-with-compose-a800723165bf