MMobile VK Hub

Mobile VK Hub

@mobilehubvk💻 Технологии🇷🇺 Русский📅 март 2026 г.

Комьюнити от VK для мобильных разработчиков. Здесь всё о том, как создаются приложения для миллионов: от нативных подходов до кросс-платформы.

📊 Полная статистика📝 Все посты
##mobilevk#kotlin#android#команда#036#mainactor#swiftconcurrency#asyncawait
749
Подписчики
402,1
Ср. охват
53.7%
Вовлечённость
10
Постов
~0.3
В день

Графики

📊 Средний охват постов

📉 ERR % по дням

📋 Публикации по дням

📎 Типы контента

Лучшие публикации

10 из 10
Mmobilehubvk
mobilehubvk
5 мар., 11:00

👆 Android 🟣Android 17: lock-free MessageQueue Очередь главного потока стала lock-free. Меньше UI-блокировок, стабильнее frame time и меньше dropped frames под нагрузкой. 🟣Background Activity Launch — новые ограничения В Android 17 BAL распространили на IntentSender. MODE_BACKGROUND_ACTIVITY_START_ALLOWED deprecated → переход на …ALLOW_IF_VISIBLE. Lint уже подсказывает проблемные места. 🟣Android Gradle Plugin 9.0 и R8 R8 агрессивнее оптимизирует Kotlin: -processkotlinnullchecks, компактнее sy...

👁 542📷 photo
Mmobilehubvk
mobilehubvk
12 мар., 11:00

Сегодня в рубрике — Александр Жеребцов, тимлид Android команд в социальных сервисах ВКонтакте (Core Мессенджер и Уведомления). Поговорили о переходе с Windows Phone на Android, опыте в стартапах и карьере в VK. ▶️ От Windows Phone до Android Всё началось в БГТУ им. Шухова в Белгороде. На первых курсах я фанател от технологий Microsoft и писал на C#. На втором курсе стал Microsoft Student Partner — по сути, занимался деврелом, когда это ещё не было мейнстримом: рассказывал студентам про технологи...

👁 514📷 photo
Mmobilehubvk
mobilehubvk
26 февр., 11:00

Контракты функций — как помочь компилятору Kotlin умеет делать smart cast после проверки if (x != null). Но если вы вынесли проверку в отдельную функцию — все ломается: fun String?.isValid(): Boolean = this != null && this.isNotBlank() fun process(s: String?) { if (s.isValid()) { s.length // ошибка: s всё ещё String? } } Компилятор не знает, что isValid() == true гарантирует non-null. Контракты это исправляют: @OptIn(ExperimentalContracts::class) fun String?.isValid(): Boolean { contract { retur...

👁 498📷 photo
Mmobilehubvk
mobilehubvk
3 мар., 11:05

LLM уже стали частью повседневной разработки. Но следующий шаг — не ассистент в IDE, а язык, в который LLM встроена на уровне модели. Команда с участием Андрея Бреслава (соавтор Kotlin) представила альфу CodeSpeak — языка, где разработчик редактирует спецификацию, а реализация генерируется с упором на детерминированность и контроль. Идея: меньше императивного кода, больше формализованных описаний с возможностью конвертации существующей базы. Для мобильной разработки это может означать новый уров...

👁 466
Mmobilehubvk
mobilehubvk
24 февр., 12:00

MainActor и изоляция данных в Swift Concurrency С приходом async/await в Swift появилась новая проблема: как гарантировать, что UI-код выполняется на главном потоке? Раньше писали DispatchQueue.main.async, теперь есть @MainActor. Разбираемся, как работает изоляция и когда её применять. #mobilevk #mainactor #swiftconcurrency #asyncawait

👁 448📷 photo
Mmobilehubvk
mobilehubvk
19 мар., 11:00

StateFlow и SharedFlow — когда что использовать Оба горячие, оба из coroutines и оба собираются из UI. Но путаница между ними стоит багов. StateFlow — это состояние. У него всегда есть текущее значение, и новый подписчик получает его сразу при подписке. Хорошо для UI state: экран подписался — получил актуальные данные, не ждёт следующего emit. private val _uiState = MutableStateFlow<UiState>(UiState.Loading) val uiState: StateFlow<UiState> = _uiState.asStateFlow() SharedFlow — это события. Он ни...

👁 389📷 photo
Mmobilehubvk
mobilehubvk
10 мар., 11:00

Большинство знает Handler.post(), но мало кто понимает, что происходит внутри. А именно на этом механизме работают runOnUiThread(), View.post(), Glide, Jetpack Lifecycle и вообще весь UI-поток. #mobilevk #android #handlerpost

👁 381📷 photo
Mmobilehubvk
mobilehubvk
17 мар., 11:00

Обычный интерфейс в Java может реализовать кто угодно. Иногда это удобно. Но если набор вариантов должен быть закрыт, такая свобода уже мешает. Для этого в Java 17 добавили sealed interfaces: они позволяют заранее зафиксировать, какие типы могут реализовать интерфейс. #mobilevk #java #sealedinterfaces

👁 347📷 photo
Mmobilehubvk
mobilehubvk
24 мар., 11:05

Сегодня знакомимся с Константином Кулаковым, руководителем отдела iOS социальных сервисов ВКонтакте. Обсудили переход в мобильную разработку, принципы менеджмента и секреты продуктивности. ▶️ Войти в АйТи Мой путь в IT начался ещё в школе, лет в 12–13. Я контрибьютил в Open Source, разрабатывал на C++, делал маленькие игры. Затем я начал разрабатывать сайты в студии интернет-маркетинга. Занимался SEO, разработкой сайтов на WordPress, делал разнообразные интеграции. К нам часто приходили клиенты ...

👁 243📷 photo
Mmobilehubvk
mobilehubvk
26 мар., 11:00

expect/actual в KMP: где граница и почему её легко провести не там Kotlin Multiplatform делит код на общий (commonMain) и платформенный (androidMain, iosMain). Граница между ними — механизм expect/actual. В commonMain объявляешь expect-декларацию, в каждом платформенном модуле пишешь actual-реализацию. // commonMain expect fun currentTimeMillis(): Long // androidMain actual fun currentTimeMillis(): Long = System.currentTimeMillis() // iosMain actual fun currentTimeMillis(): Long = (NSDate().time...

👁 193📷 photo

Типы хуков

Нейтральный10 | 402 просм.

Длина постов

Очень длинные (1000+)5 | 376 просм.
Средние (200-500)3 | 392 просм.
Длинные (500-1000)2 | 482 просм.

Влияние эмодзи

542
С эмодзи (1)
387
Без эмодзи (9)
+40.1% охвата

Типы контента

📝
1
text
466 просм.
📷
9
photo
395 просм.
Mobile VK Hub (@mobilehubvk) — Telegram-канал | PostSniper