Какой системой контроля версий пользуются авторы SQLite ?
Anonymous Quiz
40%
Git
14%
Fossil
40%
Mercurial
6%
Perforce
🤯45👍7🔥2💯1
Android Broadcast
Интересные факты про SQLite в одной статье #sqlite
Если хотите узнать больше фактов про SQLite, то почитайте статью выше ⬆️
Please open Telegram to view this post
VIEW IN TELEGRAM
🎉22👍5🔥2
Когда идет в работе системы что-то не так, то самый популярный ответ: "Перезагрузи. Не помогло? Сбрасывай"
Это же актуально и для Android проектов. Стандартный "Clean Project" не решит всё, есть еще много всего связанного со сборкой проекта и работой IDE
👉 Удаление папок Gradle build
👉 Удаление кэша Gradle - папка .gradle в корне проекта
👉 Можно удалить весь Gradle кэш в домашней папка пользователя
Почитал эти советы из статьи (EN,13м), где автор еще и автоматизировал всё это через скрипты, которые можно взять в тексте
#androidstudio #gradle
Это же актуально и для Android проектов. Стандартный "Clean Project" не решит всё, есть еще много всего связанного со сборкой проекта и работой IDE
👉 Удаление папок Gradle build
👉 Удаление кэша Gradle - папка .gradle в корне проекта
👉 Можно удалить весь Gradle кэш в домашней папка пользователя
Почитал эти советы из статьи (EN,13м), где автор еще и автоматизировал всё это через скрипты, которые можно взять в тексте
#androidstudio #gradle
🔥24👍11👏4🤯3
Серия из 3 статей про описание шаблонов файлов и генерация кода проектов на основе их с помощью встроенной фичи IntelliJ - File Templates
Статьи цикла:
1️⃣ Возможности File Templates
2️⃣ Пример использования для создания кода новой фичи
3️⃣ Как переносить шаблоны между разработчиками/IDE
#idea
Статьи цикла:
#idea
Please open Telegram to view this post
VIEW IN TELEGRAM
👍11
Вышел Kaspresso 1.6.0: множество улучшений и исправлений багов! Ребята выкатили все изменения длинным списком и не понять что из этого важнее, поэтому пишите в комментариях, что важного для вас в этом релизе или наоборот не дождались
#android #тестирование
#android #тестирование
👍37
В статье описывается, что выбрать
StateFlow, SharedFlow или Channel для работы с событиями в ViewModel#android #coroutines
Please open Telegram to view this post
VIEW IN TELEGRAM
👍28
Что вы используете для отправки события в UI (например, для показа Toast) из ViewModel?
Anonymous Poll
39%
StateFlow
27%
SharedFlow
20%
Channel
5%
Другой подход (пишите в комментариях)
9%
Не участвую
🔥11👍4
Руководство по Push уведомлениям (12м)
В статье раскрывается
👉 Что такое пуш, а что уведомление и почему их нужно различать.
👉 Как работают пуш уведомления.
👉 Какие виды пушей и уведомлений могут быть в вашем приложении.
👉 Что влияет на доставку пушей.
👉 Почему доставка пуша не означает, что уведомление было показано.
👉 Как узнать, что пуши не доходят
👉 Что можно сделать, чтобы спасти пуши.
Я уверен, что вы знаете кому стоит это отправить 😁
#android
В статье раскрывается
👉 Что такое пуш, а что уведомление и почему их нужно различать.
👉 Как работают пуш уведомления.
👉 Какие виды пушей и уведомлений могут быть в вашем приложении.
👉 Что влияет на доставку пушей.
👉 Почему доставка пуша не означает, что уведомление было показано.
👉 Как узнать, что пуши не доходят
👉 Что можно сделать, чтобы спасти пуши.
Я уверен, что вы знаете кому стоит это отправить 😁
#android
💯24🔥12👍9
Поиск баланса между рекламной монетизацией и покупками внутри приложения (IAP) — главный тренд игровой аналитики 2024 года
Почитал интервью с Даниилом Восторговым, Product Owner в AppMetrica
Ключевые достижения сервиса 2024 года
👉 Количество приложений с AppMetrcia превысило 60 000
👉 Подключили интеграцию с трекинговыми системами (AppsFlyer, Adjust и др.) для объединения данных из разных источников.
👉 Запустили инструмент «Инсайты»
👉 Внедрили предиктивную аналитику
Итоги рынка рекламы в мобильных приложениях
👉 Компании фокусируются на работе с текущими пользователями
👉 Интерес к ML и AI растет
Что ждать в 2025 году:
👉 Дальнейший поиск баланса между IAP и рекламой в игровых приложениях.
👉 Упор на автоматические инсайты и удобство использования аналитики.
👉 Новые инструменты для повышения дохода без ухудшения UX.
Как вы видите баланс между IAP и рекламой в своих приложениях? Какую роль сыграет AI? Делитесь в комментариях!
#appmetrica #aналитика
Почитал интервью с Даниилом Восторговым, Product Owner в AppMetrica
Ключевые достижения сервиса 2024 года
👉 Количество приложений с AppMetrcia превысило 60 000
👉 Подключили интеграцию с трекинговыми системами (AppsFlyer, Adjust и др.) для объединения данных из разных источников.
👉 Запустили инструмент «Инсайты»
👉 Внедрили предиктивную аналитику
Итоги рынка рекламы в мобильных приложениях
👉 Компании фокусируются на работе с текущими пользователями
👉 Интерес к ML и AI растет
Что ждать в 2025 году:
👉 Дальнейший поиск баланса между IAP и рекламой в игровых приложениях.
👉 Упор на автоматические инсайты и удобство использования аналитики.
👉 Новые инструменты для повышения дохода без ухудшения UX.
Как вы видите баланс между IAP и рекламой в своих приложениях? Какую роль сыграет AI? Делитесь в комментариях!
#appmetrica #aналитика
👍6
Media is too big
VIEW IN TELEGRAM
В процессе перевода проекта на Jetpack Compose рано или поздно появляются вопросы: зачем нам вообще фрагменты, активити и вьюмодели, ведь можно реализовать навигацию прямо между Composable-функциями.
В приложении Мой Beeline разработчики двигаются в сторону компонентного подхода с помощью Decompose, так как он показался нам самым надёжным и стройным в своей красоте.
Своим докладом Павел Королев хочет показать, что жизнь за пределами стека Google существует. А также поделиться опытом, учитывая количество существующего кода, модульность проекта и стремление остаться в балансе с простотой решения.
#android #compose #навигация #decompose
Please open Telegram to view this post
VIEW IN TELEGRAM
👍45🔥12❤7
Что не так с этим кодом? (Код на Kotlin 2.1.0)
Ответ можно найти в статье
Ответ можно найти в статье
// Описываются события который могут происходить в UI
// чтобы потом отправить в код логики обработки
sealed interface UiEvent {
/** Выбран элемента из списка */
data class UserProfileClicked(val userId: UserId) : UiEvent
/** Нажатие на кнопку подтверждения действия */
data object ConfirmClicked : UiEvent
}
@JvmInline
value class UserId(val id: String)
class MyViewModel: ViewModel() {
// Какое-то состояние экрана
private val _state = MutableStateFlow<State>(State.Default)
val state = _state.asStateFlow()
fun onUiEvent(event: UiEvent) {
// Обработка события из UI
}
}
🤯33👍5🔥1
Обзор способов (EN,6м) как показать картинку в App Widget при использование Glance (Compose для App Widget). Начинают с R.drawable и заканчивают интеграцией с ContentProvider и Glide
#android #appwidget #jetpack #glance #compose
#android #appwidget #jetpack #glance #compose
👍13❤5
This media is not supported in your browser
VIEW IN TELEGRAM
🤯 Что не так с использование object и data class читайте в статье на Хабре (3м)
Буду очень признателем вашим лайкам текста на Хабре
#kotlin #android
Буду очень признателем вашим лайкам текста на Хабре
#kotlin #android
🎉26🤯12🔥7👍4👏2
👉 Появилась библиотека с запросами для Gemini
👉 Добавили возможность тестировать
Android Backup and Restore. Собираете Backup на одном устройстве и проверяете восстановление на другом. Работает с физическими устройствами и эмуляторами, но надо чтобы были Google Play Services
#android #androidstudio #gemini
Please open Telegram to view this post
VIEW IN TELEGRAM
👍22🔥7
TestParameterInjector - test runner для JUnit 4 и 5, который запускается тестовые методы с разными комбинациями значенияй параметров/полей. Сможете проверить разные случа и повысить процент покрытия тестами.
Вот тут можно почитать подробнее о преимуществах решения от Google
#тестирование #google
Вот тут можно почитать подробнее о преимуществах решения от Google
#тестирование #google
👍12❤4🔥2
This media is not supported in your browser
VIEW IN TELEGRAM
Compose Preview Function Creator - плагин для Android Studio, чтобы быстро генерировать превью для Composable функций
#androidstudio #android #compose
#androidstudio #android #compose
👍76🔥8🤯4
🤯 Поиск по Maven Central закрывается
Столкнулся с ситуацией, что не могу найти свой новый опубликованный артефакт на официальном поисковике Maven Central - search.maven.org. Причина - он закрывается и будет заменён на central.sonatype.com. Подробности читайте тут
Как итог - я не могу зарегистрироваться в Google Play SDK Console из-за того что там для проверки используется поиск через старый портал 😂
#maven
Столкнулся с ситуацией, что не могу найти свой новый опубликованный артефакт на официальном поисковике Maven Central - search.maven.org. Причина - он закрывается и будет заменён на central.sonatype.com. Подробности читайте тут
Как итог - я не могу зарегистрироваться в Google Play SDK Console из-за того что там для проверки используется поиск через старый портал 😂
#maven
🤯50🔥11👍4
Голосуйте за свою самую любимую фичу Kotlin в опросе в @kotlin_broadcast
💯5👍3
🎉 Вышел стабильный релиз ViewBindingPropertyDelegate 2.0
Мажорная версия обновилась из-за изменения работы библиотеки под капотом. На смену использования Lifecycle для отслеживания события создания/уничтожения View в Activity/Fragment пришли ActivityLifecycleCallback и FragmentLifecycleCallback, что позволило избавиться от багов при переключении Fragment и других моментов.
Последствием такого стало удаление множества API, которое писалось как необходимая часть для корректной работы. Например, библиотека под капотом не выполняет никаких проверок на то корректный ли момент для получения View сейчас, а полностью полагается на поведение системы и Jetpack библиотек.
Следствием таких изменение стало смена пакета API c
Знаю, что в эру Compose вам уже и не нужна эта библиотека, но точно не все перешли на Compose и пользователи решения остаются!
Если вы найдёте баги или проблемы - пишите в комментариях под постом или создавайте issue
#android #viewbinding #AndroidBroadcast
Мажорная версия обновилась из-за изменения работы библиотеки под капотом. На смену использования Lifecycle для отслеживания события создания/уничтожения View в Activity/Fragment пришли ActivityLifecycleCallback и FragmentLifecycleCallback, что позволило избавиться от багов при переключении Fragment и других моментов.
Последствием такого стало удаление множества API, которое писалось как необходимая часть для корректной работы. Например, библиотека под капотом не выполняет никаких проверок на то корректный ли момент для получения View сейчас, а полностью полагается на поведение системы и Jetpack библиотек.
Следствием таких изменение стало смена пакета API c
com.github.kirich1409.viewbindingpropertydelegate на dev.androidbroadcast.vbpd, а также id артефакта в Maven Central. Это позволит работать версии 1.X и 2.X быть подключенным в проект одновременно и делать миграцию поэтапно. Либо просто выполним глобальную замену строки со старым пакетом на новый!Знаю, что в эру Compose вам уже и не нужна эта библиотека, но точно не все перешли на Compose и пользователи решения остаются!
Если вы найдёте баги или проблемы - пишите в комментариях под постом или создавайте issue
#android #viewbinding #AndroidBroadcast
11👍65🔥21❤5🤯3