Forwarded from Kotlin Multiplatform Broadcast
Розыгрыш книги "Коtlin в действии" 2-е издание с автографом одного из авторов - Романа Елизарова 🤯 Совместно с Yandex For Mobile делаем для вас розыгрыш 2 книг по Kotlin от создателей языка и его экосистемы!
Условия розыгрыша просты
1. Подписать на @kotlin_broadcast
2. Подписаться на @yandexformobile
Итоги подведем 12 июня в @kotlin_broadcast
#розыгрыш
Условия розыгрыша просты
1. Подписать на @kotlin_broadcast
2. Подписаться на @yandexformobile
Итоги подведем 12 июня в @kotlin_broadcast
#розыгрыш
🔥49🤔3❤2
Посмотрел Keynote, разобрал анонсы, посмотрел доклады и рассказал все самое интересное на что стоит обратить ваше внимание!
Видно также доступно на
P.S. Новости как формат вернулись на канал
#AndroidBroadcast #googleio #android #kmp
Please open Telegram to view this post
VIEW IN TELEGRAM
👍29🔥17❤3
На какой ОС вы разрабатываете под Android?
Anonymous Poll
30%
Windows
60%
macOS
7%
Linux
1%
Другой Linux дистрибутив
0%
Другая ОС (пиши в комментариях)
1%
Не пишу код
2%
Не участвую в опросе
🤔20👍13❤4🤯3
Серия статей с разборами лучших практик для Jetpack Compose:
1️⃣ 5 Core Optimizations Every Developer Should Know (EN, 5м, альт. ссылка)
2️⃣ 5 Advanced Techniques for Ultra-Smooth Apps (EN, 8м, альт. ссылка)
3️⃣ The Expert’s Toolkit (EN, 8м, альт. ссылка)
4️⃣ Runtime Mastery & Fine-Tuning (EN, 8м, альт. ссылка)
#compose
#compose
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥44❤4🤔4
Самое интересное в обновлении
💾 Тестирование бэкапа и восстановления данных приложения
👉 Compose Preview Screenshot Testing tool
Подробности что нового читайте тут
#androidstudio #gemini #ai
Please open Telegram to view this post
VIEW IN TELEGRAM
👍18❤5🤔1
Media is too big
VIEW IN TELEGRAM
Google выпустили шикарное видео, где показали лучшие практики работы с текстовыми полями в Compose — с примерами, API и лайфхаками.
В ролике разработчики на примере рассказывают:
👉 как использовать state-based TextField — новый подход к управлению вводом;
👉 зачем нужен SecureTextField и как задать требования к паролю;
👉 как работает Autofill API (да, теперь можно сохранять логины и OTP);
👉 как кастомизировать поле ввода OTP с помощью BasicTextField и decorator;
👉 как принимать GIF и изображения через drag & drop с новым contentReceiver;
👉 как использовать input/output трансформации для автоподстановки скобок и тире в номерах;
#android #compose
Please open Telegram to view this post
VIEW IN TELEGRAM
👍32❤12
Выпустили Material Component Android 1.13.0 Alpha 14 из которой убрали все наработки по Material 3 Expressive. Они отложены в следующую версию - 1.14.0, первая альфа которой уже доступна
#android #materia3
Please open Telegram to view this post
VIEW IN TELEGRAM
🤯24👍6🤔6❤2
🎉🚀 Новая Jetpack Библиотека - Photo Picker
Новая библиотека Jetpack Photo Picker позволит перенести встраиваемый Photo Picker из Android 16 на более ранние версии Android. Благодаря Mainline системе встраиваемый Photo Picker будет доступен на Android 14 и выше как часть ОС, а вот на других версиях будет помогать библиотека Jetpack Photo Picker, работающая скорее всего на основе Google Play Services.
Важно - сразу сделали версию для View и Compose
#android #jetpack #android16 #compose
Новая библиотека Jetpack Photo Picker позволит перенести встраиваемый Photo Picker из Android 16 на более ранние версии Android. Благодаря Mainline системе встраиваемый Photo Picker будет доступен на Android 14 и выше как часть ОС, а вот на других версиях будет помогать библиотека Jetpack Photo Picker, работающая скорее всего на основе Google Play Services.
Важно - сразу сделали версию для View и Compose
#android #jetpack #android16 #compose
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥48👍9❤3
🤯 Весь код, сгенерированный при помощи Cursor AI, вам не принадлежит
Это следует из лицензионного соглашения Cursor (пункт 6.2)
Примерный перевод на русский
Это значит, все, что вы сгенерили с помощью тула, вам не принадлежит. Копирайт не ваш… чей – не уточняется, но не ваш. Вы теряете контроль, и власть и право на обладание вашим продуктом может быть у вас отобрано, и в общем-то на достаточно простом основании – часть кода в вашем продукте не ваша.
В результате, у вас классическая "дилемма заключенного": Не используете AI – можете проиграть, используете – рискуете проиграть и потерять все, потому что ваши конкуренты его используют.
Узнал это из статьи на Хабре. Теперь при использовании любого AI в проде обязательно отдайте вначале юристы на изучения условия использования и получите одобрение от юристов, безопасников и руководства.
Делитесь своим мнение в комментариях касательно защиты прав того что ушло в прод с помощью AI
#ai
Это следует из лицензионного соглашения Cursor (пункт 6.2)
Notwithstanding the foregoing, you acknowledge that Suggestions are generated automatically by machine learning technology and may be similar to or the same as Suggestions provided to other customers, and no rights to any Suggestions generated, provided, or returned by the Service for or to other customers are granted to you under these Terms
Примерный перевод на русский
Несмотря на вышеизложенное, вы признаете, что Предложения генерируются автоматически с помощью технологии машинного обучения и могут быть похожими или идентичными Предложениям, предоставляемым другим клиентам, и никакие права на какие-либо Предложения, созданные, предоставленные или возвращенные Сервисом для других клиентов или другим клиентам, не предоставляются вам в соответствии с настоящими Условиями.
Это значит, все, что вы сгенерили с помощью тула, вам не принадлежит. Копирайт не ваш… чей – не уточняется, но не ваш. Вы теряете контроль, и власть и право на обладание вашим продуктом может быть у вас отобрано, и в общем-то на достаточно простом основании – часть кода в вашем продукте не ваша.
В результате, у вас классическая "дилемма заключенного": Не используете AI – можете проиграть, используете – рискуете проиграть и потерять все, потому что ваши конкуренты его используют.
Узнал это из статьи на Хабре. Теперь при использовании любого AI в проде обязательно отдайте вначале юристы на изучения условия использования и получите одобрение от юристов, безопасников и руководства.
Делитесь своим мнение в комментариях касательно защиты прав того что ушло в прод с помощью AI
#ai
🤯71🤔18👍15❤3🔥3
// Создаем NavigationManager и передаем в него начальное состояние
val navigationManager = rememberNavigationManager(
NavigationState(
NavigationHost(
hostName = "Main",
initialDestination = FirstSampleDestination(),
)
)
)
@Parcelize
class FirstSampleDestination : ComposeDestination {
@IgnoredOnParcel
override val composable: @Composable (Destination) -> Unit = {
FirstSamplePane()
}
}
// инициализируем навигацию в Compose
Navigation(
navigationManager = navigationManager
) {
Pane(rememberNavigationHost("Main"))
}
// Пример перехода
navigationManager.execute(
ForwardCommand(SecondSampleDestination(text))
)
@Parcelize
data class SecondSampleDestination(val text: String) : ComposeDestination {
@IgnoredOnParcel
override val composable: @Composable (Destination) -> Unit = { destination ->
SecondSamplePane((destination as SecondSampleDestination).text)
}
}
Делитесь в комментариях как вам решение и я тоже пошел обсуждать
#compose #навигация #opensource
Please open Telegram to view this post
VIEW IN TELEGRAM
🤔22🔥6❤2
Одна из проблема Context - один и тот же класс может предназначаться для разных маст использований. С пометкой какой Context ожидается в API могут помочь аннотации из Jetpack Annotation:
👉 @UIContext для Context, которые используется для работы со всеми возможностями для UI
👉 @DisplayContext для Context, который будет работать из UI сервисов только с DisplayManager и не будет работать с показом UI.
👉 @NonUiContext помечается Context, который не работает с UI. Зачастую им будет Application Context.
Такие аннотации не влияют на работу вашего кода, а лишь помечают какой тип Context ожидает автор API. Android Lint НЕ содержит правило на основе этих аннотаций.
#android
Please open Telegram to view this post
VIEW IN TELEGRAM
3👍45🤔8❤2
Рассказ про еще одну защищенную от корпораций ОС - /e/OS 3.0
Что самое главное:
👉 Базируется на AOSP
👉 Удалены все сервисы Google
👉 Используется microG чтобы приложения с Google Play Services могли работать
👉 ОС прошла сертификацию, необходимую для создания Google аккаунта
Вижу как популярность подобных решений растет с каждым днем и думаю: "Почему?" Делитесь мыслями, а особенно интересен опыт регулярных пользователей подобных ОС
#android #безопасность
Что самое главное:
👉 Базируется на AOSP
👉 Удалены все сервисы Google
👉 Используется microG чтобы приложения с Google Play Services могли работать
👉 ОС прошла сертификацию, необходимую для создания Google аккаунта
Вижу как популярность подобных решений растет с каждым днем и думаю: "Почему?" Делитесь мыслями, а особенно интересен опыт регулярных пользователей подобных ОС
#android #безопасность
👍15🤔3❤2
Еще бы опцию сокрытия пустых sourceset
#androidstudio
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥57👍14🤔3❤2
#androidstudio #compose
Please open Telegram to view this post
VIEW IN TELEGRAM
👍58❤4🔥1
Также можно будет запустить анализ проекта на основе Play Policy из раздела "Code"
Полностью все политики можно изучить в Play Policy Center
#androidstudio #googleplay #android
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
❤29🔥11👍6