Android Broadcast – Telegram
Android Broadcast
14.4K subscribers
3.68K photos
368 videos
11 files
6.1K links
Подборка новостей и статей для Android разработчиков.

Реклама и связь с автором @ab_manager

РКН https://abdev.by/rkn_tg_ab #MQRZR
Download Telegram
🛒 RuStore сделали отдельный сайт со всеми инструментами, доступными для разработчиков в магазине приложений

#android #rustore
Please open Telegram to view this post
VIEW IN TELEGRAM
👍47
Media is too big
VIEW IN TELEGRAM
📹 Android Builds: Simple Recipes to Enhance Developer Productivity (26 мин)

Видео с Gradle DPE Summit про основные советы по Gradle для Android разработчиков

00:00 Introduction
00:48 About Toast
03:09 Build Growth Challenges
05:21 Reducing Build Times
06:28 Hardware Solutions
08:08 Gradle Properties
11:36 Memory Management
16:05 Dependency Handling
19:40 CI Optimization
23:35 Agent Configuration
25:38 Conclusion

#android #gradle
Please open Telegram to view this post
VIEW IN TELEGRAM
👍20
🏝 BundledSQLiteDriver: новый взгляд на SQLite в Android и Kotlin Multiplatform (12м)

Чтобы добавить поддержку других платформ в Jetpack Room, необходимо было обеспечить совместимость с различными версиями SQLite, встроенными в ОС, а также с теми, которые могут подключаться отдельно. Результатом стал BundledSQLiteDriver, который позволяет использовать актуальную версию SQLite, поставляемую отдельно, и применять её на всех платформах.

В статье подробно рассматриваются особенности этого подхода к работе с SQLite в Room.

#kotlin #kmp #android #jetpack
Please open Telegram to view this post
VIEW IN TELEGRAM
👍19
🔥 В поисках Senior Mobile App Developer

Стек: Kotlin, Swift
Формат работы: удаленка (работа из РФ и Беларуси невозможна)
Требование: опыт работы от 5 лет, English B1+

💡 Вы будете играть решающую роль в разработке и поддержке мобильных приложений на платформах Android и iOS, уделяя особое внимание интеграции веб-контента через WebView и работе с различными SDK сторонних разработчиков.

👉 Подробнее о вакансии по ссылке
❗️ Для отклика на вакансию пишите @Irina_HRD с указанием от Android Broadcast

#вакансия
👍11
‼️🏝 KMP Разработчики не обновляйте XCode до 16.3

В Kotlin 2.1.20 несовместим со свежей версий XCode, поддержка будет в Kotlin 2.1.21. Отложите обновление!

#kotlin #kmp #xcode
Please open Telegram to view this post
VIEW IN TELEGRAM
👍33
🤖 Альтернативный способ обработке one-off событий из ViewModel (EN, 10м)

В статье рассказывается в чем сложность с обработкой одноразовых событий, которые надо передать из ViewModel в UI.

Автор рассматривает способ через callback интерфейс в конструкторе ViewModel
@HiltViewModel
class MyViewModel @Inject constructor(
// inject the interface
private val toastMessages: ToastMessages,
) : ViewModel() {

fun doSomething() {
viewModelScope.launch {
try {
// execute async operation here
} catch (e: CustomException) {
// initiate a one-off event
toastMessages.showToast(e.localizedMessage)
}
}
}
}


🔗 Альтернативная ссылка на статью

#android #viewmodel #dagger #hilt
Please open Telegram to view this post
VIEW IN TELEGRAM
👍13
Статья с рассказом истории написания файлового менеджера для WearOS

🛒 Приложение в Google Play
🐱 Исходный код на GitHub

#android #wearos #opensource
Please open Telegram to view this post
VIEW IN TELEGRAM
👍18
🤖 История написания приложения Lissen (17м) - красивый плеер для аудиокниг с Audiobookshelf.

Исходный код не доступен, но автор осветил архитектуру приложения, модуляризацию, публикацию, решение проблем, локализацию

🛒 Скачать приложение из Google Play
🐱 Исходники на GitHub

#opensource #media3 #пример
Please open Telegram to view this post
VIEW IN TELEGRAM
👍12
Forwarded from AvitoTech
Секунду… Это что, новый курс от команды разработчиков? 🚀

Так точно! Наш бэкенд-инженер Юра Афанасьев создал обучающий курс по паттернам и практикам написания кода. В нём он разбирает порождающие, структурные и поведенческие паттерны, историю их создания и методы в основе.

Ещё из плюсов: простая и понятная подача, короткие и насыщенные информацией материалы, курс подходит как начинающим инженерам, так и миддлам.

Кратко о Юре:

⚡️ Больше 15 лет в коммерческой разработке;
⚡️ Больше 6 лет в Авито (сейчас в департаменте монетизации);
⚡️ 12 лет писал на Php и 4 — на Golang;
⚡️ Организатор внутреннего коммьюнити в Авито.

В первой части — про историю создания паттернов. Выбирайте удобный формат и смотрите:

📺 YouTube
🔵 VK Видео
💻 Rutube

#backend
Please open Telegram to view this post
VIEW IN TELEGRAM
5👍21
Отключите эти настройки Android в Gradle для ускорения сборки

В Android Gradle Plugin есть настройка разных build feature для включения разных опций
// Часть флагов могут быть доступны только в определнных типах модулей
// Указаны знгачения по умолчанию в Android Gradle Plugin 8.10.0
android {
buildFeatures {
// Включить/выключить Android ресурсы для библиотечных модулй
androidResources = true
aidl = false
buildConfig = false
compose = false
dataBinding = false
mlModelBinding = false
prefab = false
renderScript = false

// Генерация ресурсов из Gradle файла
resValues = true
shaders = true
viewBinding = false
}
}


Каждая из них отвечает за определенную опцию, но вот значение каждой опции будет зависеть от версии.

Я предпочитаю явно выключить все опции по умолчанию и в каждом модуле включать их только при необходимости в модуле в build.gradle.kts. Сделать это можно через gradle.properties
# Отключение ресурсов для Android Library модулей
android.library.defaults.buildfeatures.androidresources=false
android.defaults.buildfeatures.aidl=false
android.defaults.buildfeatures.resvalues=false
android.defaults.buildfeatures.databinding=false
android.defaults.buildfeatures.mlmodelbinding=false
android.defaults.buildfeatures.shaders=false
android.defaults.buildfeatures.prefabPublishing=false
android.defaults.buildfeatures.viewbinding=false


‼️ Больше полезных советов и статей в Базе Знаний Android разработчика

#android #gradle #лучшиепрактики
Please open Telegram to view this post
VIEW IN TELEGRAM
👍54
В Android 16 появится возможность работать только с проверенными и публично доступными SSL сертификатами

В XML реcурсе с Network Security Config надо сделать
<network-security-config>
<base-config cleartextTrafficPermitted="false">
<certificateTransparency enabled="true" />
</base-config>
</network-security-config>

Источник - @nek_12_personal

#android16 #безопасность
👍23
🤖 В Android 16 компиляция кода будет происходить в облаке

В коде Android 16 обнаружили возможность компиляции dex в ota код в облаке, а не на устройстве. Возможность рассчитана на слабые устройства для ускорения установки и экономии энергии.

#android16 #art
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
3👍61
Media is too big
VIEW IN TELEGRAM
📹 Как сделать Backup и перенос данных между устройствами на Android (40 мин)

Не так давно я поменял Pixel 7 на 9. Кажется, что всё в рамках одной экосистемы идет, но как много приложений заставили меня снова логиниться и проводить настройку. Приятным исключением стал VK, как раз так авторизация перенеслась и всё работало!

Разработчик этой фичи, Артур Илькаев, в VK ID сделал доклад на Mobius, где рассказал все подробности решения, а также как много денег это смогло сэкономить бизнесу, а сам Артур смог получить благодаря этому миллионный бонус за год потому что сэкономил бизнесу намного больше и в долгий срок!

0:00 Про что будет доклад
2:32 Начало доклада
39:41 Обсуждение

#android #backup #mobius
Please open Telegram to view this post
VIEW IN TELEGRAM
👍371
Как найти неиспользуемые зависимости в Dagger Component (EN,11м)

С помощью Dagger SPI автор написал анализатор графа Dagger c целью поиска неиспользуемых зависимостей и описал подход в статье. Также подход можно использовать для визуализации графа зависимостей, считать разные метрики графа и пр.

🐱 Исходный код на GitHub
🔗 Альтернативная ссылка

#dagger #di #opensource
Please open Telegram to view this post
VIEW IN TELEGRAM
1👍25
Разработчик на простом примере показывается как сделать чистую архитектуру в Android проекте, подробно описывая каждый шаг. Полезно будет для новичков. Читайте тут (12м)

#android #архитектура
👍18
Metro - Новый DI фреймворк на чистом Kotlin (ещё в разработке)

@DependencyGraph
interface AppGraph {
val httpClient: HttpClient

@Provides
private fun provideFileSystem(): FileSystem = FileSystem.SYSTEM
}

@Inject
class HttpClient(private val fileSystem: FileSystem)

@Inject
@Composable
fun App(circuit: Circuit)


#kotlin #di #ksp
👍20
Обзор(EN,7М) как оценивать время выполнения Gradle тасков в разных условиях для Android проектов. Если коротко - используйте Gradle Profiler и правильно настраивайте сценарий

🔗 Альтернативная ссылка

#android #gradle #производительность
👍14
Forwarded from AvitoTech
Продолжаем разбираться в паттернах! На очереди — порождающие 🚀

В новом выпуске рассмотрим первые два Builder (Строитель) и Factory Method (Фабричный метод) — паттерны, задача которых скрывать детали создания объектов в абстракциях.

🔍 В выпуске рассказали про подводные камни использования, их назначение, плюсы и минусы. А ещё объяснили, откуда взялся паттерн фабрика и почему паттерны — не аксиомы:

📺 YouTube
🔵 VK Видео
💻 Rutube

#backend
Please open Telegram to view this post
VIEW IN TELEGRAM
👍29
🛒 В Google Play Services добавили сканер платежных карт

Сканер доступен всем, у кого есть доступ к Google Pay API for Android. Для использования API не требуется разрешение на использование камеры в вашем приложении.

Для работы API также необходимы: Google аккаунт на устройстве, 1+ GB RAM, наличие задней камеры и Google Play Services, а также поддержка портретной ориентации.

#android #googleplay
Please open Telegram to view this post
VIEW IN TELEGRAM
👍39