fa
Feedback
Mobile Developer

Mobile Developer

رفتن به کانال در Telegram
9 130
مشترکین
-824 ساعت
+307 روز
+6130 روز

در حال بارگیری داده...

جذب مشترکین
ژوئن '26
ژوئن '26
+107
در 2 کانال‌ها
مه '26
+107
در 2 کانال‌ها
Get PRO
آوریل '26
+140
در 3 کانال‌ها
Get PRO
مارس '26
+172
در 3 کانال‌ها
Get PRO
فوریه '26
+96
در 1 کانال‌ها
Get PRO
ژانویه '26
+239
در 3 کانال‌ها
Get PRO
دسامبر '25
+90
در 3 کانال‌ها
Get PRO
نوامبر '25
+99
در 2 کانال‌ها
Get PRO
اکتبر '25
+234
در 4 کانال‌ها
Get PRO
سپتامبر '25
+186
در 10 کانال‌ها
Get PRO
اوت '25
+134
در 2 کانال‌ها
Get PRO
ژوئیه '25
+191
در 3 کانال‌ها
Get PRO
ژوئن '25
+96
در 3 کانال‌ها
Get PRO
مه '25
+182
در 5 کانال‌ها
Get PRO
آوریل '25
+123
در 3 کانال‌ها
Get PRO
مارس '25
+234
در 4 کانال‌ها
Get PRO
فوریه '25
+132
در 0 کانال‌ها
Get PRO
ژانویه '25
+159
در 2 کانال‌ها
Get PRO
دسامبر '24
+226
در 6 کانال‌ها
Get PRO
نوامبر '24
+236
در 4 کانال‌ها
Get PRO
اکتبر '24
+314
در 7 کانال‌ها
Get PRO
سپتامبر '24
+256
در 6 کانال‌ها
Get PRO
اوت '24
+331
در 2 کانال‌ها
Get PRO
ژوئیه '24
+294
در 5 کانال‌ها
Get PRO
ژوئن '24
+301
در 8 کانال‌ها
Get PRO
مه '24
+408
در 9 کانال‌ها
Get PRO
آوریل '24
+265
در 5 کانال‌ها
Get PRO
مارس '24
+266
در 3 کانال‌ها
Get PRO
فوریه '24
+289
در 4 کانال‌ها
Get PRO
ژانویه '24
+423
در 14 کانال‌ها
Get PRO
دسامبر '23
+335
در 10 کانال‌ها
Get PRO
نوامبر '23
+297
در 9 کانال‌ها
Get PRO
اکتبر '23
+335
در 11 کانال‌ها
Get PRO
سپتامبر '23
+379
در 0 کانال‌ها
Get PRO
اوت '23
+245
در 0 کانال‌ها
Get PRO
ژوئیه '23
+239
در 0 کانال‌ها
Get PRO
ژوئن '23
+245
در 0 کانال‌ها
Get PRO
مه '23
+894
در 0 کانال‌ها
Get PRO
آوریل '23
+248
در 0 کانال‌ها
Get PRO
مارس '23
+226
در 0 کانال‌ها
Get PRO
فوریه '23
+335
در 0 کانال‌ها
Get PRO
ژانویه '23
+334
در 0 کانال‌ها
Get PRO
دسامبر '22
+680
در 0 کانال‌ها
Get PRO
نوامبر '22
+220
در 0 کانال‌ها
Get PRO
اکتبر '22
+212
در 0 کانال‌ها
Get PRO
سپتامبر '22
+161
در 0 کانال‌ها
Get PRO
اوت '22
+266
در 0 کانال‌ها
Get PRO
ژوئیه '22
+231
در 0 کانال‌ها
Get PRO
ژوئن '22
+92
در 0 کانال‌ها
Get PRO
مه '22
+148
در 0 کانال‌ها
Get PRO
آوریل '22
+264
در 0 کانال‌ها
Get PRO
مارس '22
+277
در 0 کانال‌ها
Get PRO
فوریه '22
+159
در 0 کانال‌ها
Get PRO
ژانویه '22
+141
در 0 کانال‌ها
Get PRO
دسامبر '21
+103
در 0 کانال‌ها
Get PRO
نوامبر '21
+93
در 0 کانال‌ها
Get PRO
اکتبر '21
+155
در 0 کانال‌ها
Get PRO
سپتامبر '21
+99
در 0 کانال‌ها
Get PRO
اوت '21
+80
در 0 کانال‌ها
Get PRO
ژوئیه '21
+76
در 0 کانال‌ها
Get PRO
ژوئن '21
+47
در 0 کانال‌ها
Get PRO
مه '21
+33
در 0 کانال‌ها
Get PRO
آوریل '21
+425
در 0 کانال‌ها
تاریخ
رشد مشترکین
اشارات
کانال‌ها
13 ژوئن+4
12 ژوئن0
11 ژوئن+1
10 ژوئن+9
09 ژوئن+14
08 ژوئن+12
07 ژوئن+24
06 ژوئن+4
05 ژوئن+10
04 ژوئن+6
03 ژوئن+10
02 ژوئن+9
01 ژوئن+4
پست‌های کانال
Repost from Android Broadcast
🤯 RuStore тайно ставит MAX без спроса и следит за вами через GPS? Я скачал свежий билд (версия 1.103.0.3) и вскрыл его сам ч
🤯 RuStore тайно ставит MAX без спроса и следит за вами через GPS? Я скачал свежий билд (версия 1.103.0.3) и вскрыл его сам через jadx, а не пересказал чужую панику. Если коротко: градус угрозы надо сильно сбавить. Главное, о чём автор смолчал - всё что он описал никогда не происходит в реально жизни из-за технических ограничений в самом Android. Тихая установка MAX и фоновая раскатка любого софта возможны только при системной привилегии установки, которую вендор должен выдать приложению отдельно. И тут важно не спутать: быть предустановленным и быть привилегированным - это разные вещи. RuStore действительно предустановлен на части устройств, но сама по себе предустановка такой привилегии не даёт, и фоновой установки на ней нет. Закон РФ об предустановки не требует привилегий, а только сам факт чтобы приложения были установлены сразу. А если вы поставили RuStore сами из APK или у вас есть Google Play, привилегии у него и вовсе не бывает: лицензия Google для производителей смартфонов не позволяет предустановить второй привилегированный стор. То есть на обычном телефоне принудительный сценарий мёртв ещё до старта. И показательно: ни автор, ни полторы сотни комментаторов не привели ни одного живого устройства, где хотя бы одно приложение установилось само, в коде самого приложения нигде не защита установка какого-либо приложения. Поставили RuStore сами? Сбор данных включается только вашими разрешениями: не выдали, отозвали, остановили, удалили. Всё под вашим контролем, а не разработчика приложения. 📄 Подробнее в разборе в лонгрид Если зашло, накидайте реакций и напишите, чей стор вскрываем следующим тем же способом. Как насчет AppGallery от Huawei? #RuStore #DeepDive

2
🚀 Remote Compose - server-driven UI без WebView https://medium.com/justeattakeaway-tech/remote-compose-looks-promising-7a87f
🚀 Remote Compose - server-driven UI без WebView https://medium.com/justeattakeaway-tech/remote-compose-looks-promising-7a87ffdb505f Автор тестит Remote Compose - новую Jetpack-библиотеку, которая сериализует UI в бинарник, отправляет по сети и рендерит нативно. Цель - заменить WebView'ы для offers card, баннеров, holiday-экранов, которые надо менять без релиза. 🤔 В статье - разбор alpha-версии: как настроить генерацию документов через Robolectric и GitHub Pages, как воспроизвести свою дизайн-систему, что работает (нативный перформанс, анимация через time-expressions, server-driven обновления), и что пока сломано. И главный блокер - пока только Android, мультиплатформы нет. —————— 💭 Материал дает реальную картину что работает, а что нет в текущей alpha Remote Compose. KMP - нет , значит пока придется подождать Telegram | Селеба | Max | YouTube
1 339
3
Claude in Mobile 3.13.0 released https://github.com/AlexGladkov/claude-in-mobile/releases/tag/v3.13.0 🔥 Основное - это интеграция с AppStore Теперь можно попросить вашу нейронку сделать релиз в сторе и она это сделает успешно (проверил на своем приложении) 👉 Улучшена архитектура MCP, все стало более плагинным и расширяемым 👉 Исправлены некоторые issues Подробности по ссылке
1 208
4
🔄 Coil 3.5.0 https://github.com/coil-kt/coil/releases/tag/3.5.0 Релиз небольшой, но с двумя breaking changes, которые затрон
🔄 Coil 3.5.0 https://github.com/coil-kt/coil/releases/tag/3.5.0 Релиз небольшой, но с двумя breaking changes, которые затронут часть проектов: 👉 Минимальный Android SDK поднят до API 23 Coil больше не поддерживает Android 5.x (API 21–22). Если ваш проект всё ещё держит minSdk 21 - обновиться на 3.5.0 не получится без поднятия minSdk. 👉 Удалены KMP targets iosX64 и macosX64 Библиотека прекратила сборку под Intel-симуляторы iOS и Intel-маки. Для Apple Silicon (iosArm64, iosSimulatorArm64, macosArm64) всё работает как раньше. Это общий тренд в KMP-экосистеме. 👉 Быстрое извлечение размера WebP на JS/WASM Раньше для определения размеров WebP-изображения на web-таргетах выполнялся полный Skia decode. Теперь размер извлекается напрямую из заголовка файла - это заметно ускоряет layout до загрузки картинки в browser-таргетах Compose Multiplatform. 👉 Стабилизирован memoryCacheMaxSizePercentWhileInBackground API для уменьшения memory cache при уходе приложения в background больше не требует @ExperimentalCoilApi: val imageLoader = ImageLoader.Builder(context) // Cache shrinks to 50% when the app is backgrounded .memoryCacheMaxSizePercentWhileInBackground(0.5) .build() 🛠️ Дополнительные улучшения: • Исправлен CacheStrategy: закэшированные failure-ответы (например, истёкшие 404) теперь корректно обновляются • Улучшена работа с корутинами: lookup ContinuationInterceptor вместо CoroutineDispatcher 🟡 Рекомендация: Обновляться можно сразу, но сначала проверьте minSdk и Apple-таргеты - есть breaking changes. —————— 💭 Cам по себе функционал скромный, но Coil продолжает чистить legacy - minSdk 23 и отказ от Intel-таргетов Apple сигнализируют, куда движется вся KMP-экосистема. Telegram | Селеба | Max | YouTube
1 509
5
AI с нуля в 2026 Какие фундаментальные темы нужно знать, чтобы двигаться в ИИ, почему понимание принципов работы нейросетей о
AI с нуля в 2026 Какие фундаментальные темы нужно знать, чтобы двигаться в ИИ, почему понимание принципов работы нейросетей оказывается полезнее поиска очередного «магического промпта» и какие 4 ветки родмапа в ИИ я вижу прямо сейчас - рассказываю в этом видео Для доступа к видео нужна подписка Tier 2 или выше Telegram | Селеба
1 623
6
Ищут джуна без опыта за 200к, но чтоб умел в KMP и Compose Напишите почему вы достойны в комментариях И да, новых я не пускаю по прежнему, хотите написать чето - велком в tier 3 (@famous_md_bot). Так что зарекомендовать себя смогут только те, кто давно тут
2 028
7
🧑‍💻 Claude Managed Agents — Scheduled Runs и Vaults https://claude.com/blog/whats-new-in-claude-managed-agents Anthropic до+2
🧑‍💻 Claude Managed Agents — Scheduled Runs и Vaults https://claude.com/blog/whats-new-in-claude-managed-agents Anthropic добавила в Claude Managed Agents две практичные возможности: запуск агентов по расписанию (scheduled runs) и vaults - безопасное хранилище для environment variables. Основные изменения: ✨ Scheduled runs - агенты теперь можно запускать по расписанию (cron-like), без внешних оркестраторов: регулярные отчёты, мониторинг, автоматизация рутинных задач ✨ Vaults - секреты и environment variables (API keys, tokens) хранятся в зашифрованном хранилище и подставляются агенту в runtime, вместо хардкода в конфигурации —————— 💭 Для нас это интересно в связке с CI/CD - например, агент по расписанию может проверять свежие релизы зависимостей, гонять анализ крашей или готовить changelog, а доступы к Play Console/App Store Connect хранить в vault. Telegram | Селеба | Max | YouTube
2 007
8
🤖 Топ-3 апдейта продуктивности Android-разработчиков от Google https://android-developers.googleblog.com/2026/06/android-dev+4
🤖 Топ-3 апдейта продуктивности Android-разработчиков от Google https://android-developers.googleblog.com/2026/06/android-developer-productivity-updates.html 1️⃣ Android CLI 1.0 - стабильный релиз Команда android studio теперь связывает агент с открытым проектом в Android Studio. Через эту связку агент получает доступ к профайлерам, Compose Preview и Android Device Streaming. Google Antigravity официально поддерживает Android - ставится через бандл при первой настройке. Еще CLI теперь доступен в npm и homebrew. 2️⃣ Android Skills - больше шаблонов для агента Skills - это markdown-инструкции, которые подгружаются в агент по нужной задаче. Сейчас их больше 17 и есть новые: Adaptive UI, Display Glasses и Jetpack Compose Glimmer для XR, миграция на CameraX, Perfetto SQL и Trace Analysis, Compose Styles API, AppFunctions, Credential Manager для верификации email, Engage SDK, Testing setup, Wear OS Material3. Команды простые: android skills list android skills add –skill=<skill-name> 3️⃣ Android Bench - добавили новые модели В лидерборд, который тестирует LLM на реальных Android-задачах, добавили локальную Gemma 4 и Gemini 3.5 Flash. Скоро в бенчмарке появятся long-running задачи, чтобы поднять сложность тестов. —————— 💭 Используешь AI-агентов для Android-разработки - стоит быть в тренде. А сегодня, это практически каждый) Telegram | Селеба | Max | YouTube
2 151
9
📱 WWDC 2026 для разработчиков - Apple открыла AI-стек на полную https://developer.apple.com/wwdc26 Apple дала разработчикам+7
📱 WWDC 2026 для разработчиков - Apple открыла AI-стек на полную https://developer.apple.com/wwdc26 Apple дала разработчикам прямой доступ к Apple Intelligence и пересобрала Xcode под эру агентов. Самое интересное: 🧠 Foundation Models - расширенный фреймворк. Теперь принимает не только текст, но и изображения. Поддерживает кастомные AI-навыки. Один Swift API даёт доступ и к локальным моделям на устройстве, и к серверным. 🆕 Core AI - новый фреймворк для запуска сторонних AI-моделей локально на Apple Silicon с сохранением приватности. 🧑‍💻 Xcode 27: • Device Hub заменяет Simulator. Одно окно для запуска приложения и на симуляторах, и на реальных устройствах. Прямо из окна можно переключать тёмную тему, размер шрифта, accessibility-настройки, проверять iPhone Mirroring и динамическое изменение размера • Умное автодополнение сразу нескольких строк кода. Работает на локальной модели через Apple Silicon, без обращения к облаку. • Выбор внешней AI-модели одним кликом: встроенные интеграции с OpenAI, Anthropic Claude и Google Gemini для тяжёлых запросов. • Режим агентов - агент сам работает с Simulator и Instruments: ищет проблемы с производительностью, чинит UI. Изменения применяются только с подтверждением разработчика. • Агенты делают локализацию: создают String Catalogs и генерируют переводы. • Интеграция Figma и GitHub прямо из IDE. • Top Functions в Instruments - быстро находит самые «дорогие» участки кода. Плюс обновлённый Organizer с метриками целей. 🎯 App Intents - теперь единственный способ подключить приложение к Siri. SiriKit официально устарел. ⚡️ Swift - усилили проверки изоляции данных в strict concurrency и одновременно убрали часть обязательных аннотаций. Меньше бойлерплейта при той же безопасности. —————— 💭 Главный мув - Apple даёт разработчикам полный доступ к AI-стеку с гарантией приватности (ну да-да). iOS разработчикам рекомендую глянуть полное и подробное видео с демонстрацией - https://developer.apple.com/videos/play/wwdc2026/258 Telegram | Селеба | Max | YouTube
2 417
10
Мы услышали разработчиков. Особенно из команды андроид. И поэтому мы представляем новый фреймворк Liquid Glass на Котлин, что
Мы услышали разработчиков. Особенно из команды андроид. И поэтому мы представляем новый фреймворк Liquid Glass на Котлин, чтобы ваши андроид приложения было проще копировать с iOS приложений
1 562
11
🔧 Краши SavedStateHandle в Navigation 3 и как их лечит Hilt Assisted Injection https://proandroiddev.com/resolving-savedstat
🔧 Краши SavedStateHandle в Navigation 3 и как их лечит Hilt Assisted Injection https://proandroiddev.com/resolving-savedstatehandle-crashes-with-hilt-assisted-injection-in-jetpack-navigation-3-63ebd50b88af Боль при миграции на Nav3: код из Nav2, где ViewModel читал аргументы маршрута из SavedStateHandle через toRoute(), внезапно крашится. Причина - Nav3 больше не пропихивает Route в SavedStateHandle автоматически. ✅ Решение в статье - Hilt Assisted Injection: аргументы получает не SavedStateHandle, а сам конструктор ViewModel через Assisted. ViewModel становится независимым от навигации, его можно конструировать прямо в тестах с конкретными значениями. Внутри - полный пример с Serializable Route'ами, фабрикой, регистрацией в entryProvider DSL и тестовым кейсом. —————— 💭 Переезжаешь на Nav3 и ловишь null в SavedStateHandle - как вариант к решению. Telegram | Селеба | Max | YouTube
2 155
12
🔐 Биометрия в мобилке - три подхода с разной безопасностью https://thoughtbot.com/blog/biometrics-authentication-for-your-mo
🔐 Биометрия в мобилке - три подхода с разной безопасностью https://thoughtbot.com/blog/biometrics-authentication-for-your-mobile-app Face ID и отпечаток в мобилке давно стали ожиданием от пользователей, но не все реализации одинаково безопасны. Автор разбирает три подхода и показывает, где какой уместен. ✅ Простой prompt - биометрия и чтение токена это две независимые операции. Через Frida на jailbroken девайсе подменяется на true, токен достаётся. Подходит только для нечувствительных приложений. ✅ Криптопара ключей - приватный ключ в чипе, публичный на сервере. Сервер шлёт challenge, девайс подписывает после биометрии, сервер проверяет подпись. Близко к FIDO2, защита от replay из коробки. Нужны эндпоинты на сервере. ✅ Keychain с биометрической защитой - токен в iOS Keychain/Android Keystore с флагом биометрии. ОС не отдаст ключ без скана, Frida бессильна. Бэкенд не трогаем, но серверу нечем доказать что биометрия была. В статье удобное объяснение и сравнение каждого подхода. —————— 💭 Выбирайте с умом - не стоит оверхедить) Telegram | Селеба | Max | YouTube
2 311
13
⚡ Compose Performance 2026 https://freedium-mirror.cfd/https://medium.com/@santimattius/compose-performance-2026-stability-as
⚡ Compose Performance 2026 https://freedium-mirror.cfd/https://medium.com/@santimattius/compose-performance-2026-stability-as-the-key-lever-against-jank-dc9e5b946e64 Большой разбор про то, почему стабильность типов в Compose - это не микрооптимизация, а архитектурный чеклист. Один unstable-параметр заставляет рекомпозить весь композабл с поддеревом, и это типичная причина лагов в LazyColumn. 📄 В статье: • типичные виновники нестабильности (List/Set/Map, var в data class'ах, типы из модулей без Compose-компилятора, миф про лямбды с unstable-захватами) • инструменты диагностики (Compose Compiler Reports и Layout Inspector) • как работает Strong Skipping Mode и Stability Configuration File. • плюсом - паттерн Hoisted State Type и пошаговый план Diagnose → Prioritize → Fix. Бонусом - демо-проект на GitHub со всеми примерами. —————— 💭 Если у тебя есть «тот самый лагающий экран» - это must read. Telegram | Селеба | Max | YouTube
2 571
14
AI уже умеет писать код, но разработчики еще не умеют им пользоваться. Тратят часы на исправление результатов, борются с галл
AI уже умеет писать код, но разработчики еще не умеют им пользоваться. Тратят часы на исправление результатов, борются с галлюцинациями моделей и быстро упираются в лимиты В этом докладе я показал практический подход к организации AI SDLC, которым я ежедневно пользуюсь и который позволил мне использовать ИИ как управляемую инженерную систему Внутри - главные проблемы стандартного workflow - как экономить токены и снижать стоимость разработки - AST-индексы и работа с контекстом проекта - субагенты, роли и консилиумы агентов - слоистая конфигурация AI-проектов - автоматизация полного SDLC с помощью ИИ - ответы на вопросы участников конференции Для доступа к видео требуется подписка Tier 2 или выше. Оформить можно тут - @famous_md_bot Эксклюзивно в Селебе
2 460
15
🎯 Koin Compiler 1.0 - DSL и аннотации стали compile-safe https://blog.insert-koin.io/koin-compiler-1-0-dsl-and-annotations-k
🎯 Koin Compiler 1.0 - DSL и аннотации стали compile-safe https://blog.insert-koin.io/koin-compiler-1-0-dsl-and-annotations-koin-now-compile-safe-06905a2b04ad Главная претензия к Koin - рантайм-проверка зависимостей - закрыта в стабильном релизе. Нативный Kotlin Compiler Plugin (K2) проверяет граф на этапе билда, и DSL, и аннотации идут через один валидатор. 🔍 Три уровня проверки: Per-Module внутри модуля, Full Graph на startKoin<T>() со всеми cross-module зависимостями, Call-Site для каждого get<T>()/inject<T>()/koinViewModel<T>(). ✏️ Auto-wiring в DSL. Вместо single { UserService(get(), get(), get()) } теперь просто single<UserService>() - плагин сам резолвит конструктор. Плюс create(::function) для Room, Retrofit, Json. 🪲 Ошибки как у компилятора, с понятными сообщениями и подсказками "did you mean" для квалификаторов. Валидатор зеркалит рантайм - nullable, Lazy<T>, List<T> и дефолты не триггерят. Кодогенерации почти нет, KMP работает чисто на всех таргетах. Требует Kotlin 2.3.20+ и Koin 4.2.1. —————— 💭 Главный козырь Dagger над Koin больше не козырь. Скинь тому, кто сидит на Koin. Telegram | Селеба | Max | YouTube
2 300
16
ДевФест выложил все выступления с майской конфы https://devfest.ru/#26videos В том числе мой доклад AI SDLC на стероидах, док
ДевФест выложил все выступления с майской конфы https://devfest.ru/#26videos В том числе мой доклад AI SDLC на стероидах, доклад Руслана Карманова про ИТ-стандарты и доклад Дениса Макрушина про безопасность агентных систем. Суммарно 26 докладов Забрать записи можно за 10 000 рублей или бесплатно за подписку на каналы. Все подробности в боте - https://t.me/conference_access_bot
2 032
17
👩‍💻 Kotlin 2.4.0 https://blog.jetbrains.com/kotlin/2026/06/kotlin-2-4-0-released/ Вышел Kotlin 2.4.0 - крупный релиз с стаб
👩‍💻 Kotlin 2.4.0 https://blog.jetbrains.com/kotlin/2026/06/kotlin-2-4-0-released/ Вышел Kotlin 2.4.0 - крупный релиз с стабилизацией Context Parameters, Explicit Backing Fields, поддержкой Swift packages в Kotlin/Native, WebAssembly Component Model и совместимостью с Java 26 и Gradle 9.5.0. ➡️ Stable Context Parameters Context Parameters - долгожданная фича, которая позволяет функциям неявно получать зависимости из контекста вызова. В 2.4.0 она наконец стабильна - никаких @OptIn(ExperimentalContextReceivers::class). Это меняет подход к DI в pure Kotlin-коде: вместо передачи зависимостей через параметры или Singleton-objects, контекст устанавливается на уровне вызывающего кода. // Объявление функции с context parameters context(Logger, Database) fun processUser(id: UserId): User { log("Processing user $id") // Logger из контекста return query("SELECT * FROM users WHERE id = $id") // Database из контекста } // Использование — контекст передаётся явно через with() with(logger, database) { val user = processUser(UserId("42")) } ➡️ Stable Explicit Backing Fields Explicit Backing Fields позволяют объявить тип backing field явно - отдельно от типа свойства. Особенно полезно для паттерна MutableStateFlow as private backing / public StateFlow. // До 2.4.0 — стандартный "boilerplate" паттерн class ViewModel { private val _uiState = MutableStateFlow(UiState()) val uiState: StateFlow<UiState> = _uiState.asStateFlow() } // С Explicit Backing Fields в 2.4.0 class ViewModel { val uiState: StateFlow<UiState> field = MutableStateFlow(UiState()) } ➡️ Kotlin/Native: Swift packages как зависимости Теперь Kotlin/Native-модули могут напрямую подключать Swift packages (SPM) как зависимости. Это убирает необходимость в прослойках на Objective-C и упрощает интеграцию Swift-библиотек в KMP-проекты. // build.gradle.kts kotlin { iosTarget { compilations.main.cinterops { val swiftLib by creating { swiftPackage("https://github.com/example/lib", from = "1.0.0") } } } } ➡️ Kotlin/Native: CMS GC включён по умолчанию Concurrent Mark-and-Sweep (CMS) Garbage Collector теперь работает по умолчанию на всех Native-таргетах. Он обеспечивает сборку мусора параллельно с выполнением приложения, снижая паузы и улучшая latency. Предыдущий GC был stop-the-world. ➡️ Kotlin/Wasm: инкрементальная компиляция по умолчанию + WebAssembly Component Model Инкрементальная компиляция для Wasm-таргетов включена по умолчанию - пересборка только изменённых модулей, что заметно ускоряет dev-цикл. Добавлена поддержка WebAssembly Component Model - стандарта для создания портабельных компонентов с описанием интерфейсов через WIT (WebAssembly Interface Types). Это открывает путь к интероперабельности Kotlin/Wasm с другими языками в Wasm-экосистеме. ➡️ Kotlin/JVM: поддержка Java 26 Kotlin 2.4.0 полностью поддерживает Java 26, включая новые API и языковые возможности. Также аннотации в metadata теперь включены по умолчанию - это улучшает инструментальную поддержку (kapt, KSP, IDE). ➡️ Stable UUID API в Standard Library API для работы с UUID стабилизировано: val id = Uuid.random() // генерация val parsed = Uuid.parse("550e8400-e29b-41d4-a716-446655440000") println(id.toString()) // "550e8400-..." Также добавлена поддержка проверки отсортированного порядка коллекций через isSorted() / isSortedDescending(). ➡️ Gradle 9.5.0 и Maven Kotlin 2.4.0 совместим с Gradle 9.5.0. В Maven-плагине добавлено автоматическое выравнивание версий Java и JVM target - меньше ручной конфигурации. ⚠️ Breaking Changes • Kotlin/Native: убраны iosX64 и macosX64 таргеты. Используйте arm64. —————— 💭 Очень здравый релиз с изменениями, которые действительно принесут пользу и ими будут пользоваться - один Explicit Backing Fields чего стоят) + приятности для KMP разработчиков. Обновляйте свой Kotlin скилл... ну или скилл вашего агента) Telegram | Селеба | Max | YouTube
1 991
18
Почему мы всё ещё не летим на Марс? / ЧТУК Youtube Youtube Youtube Можно ли на Марсе вырастить картошку? Когда мы туда полетим? Чем занимаются люди, которые прямо сейчас готовят полёт на другую планету? Все это, а также технологии, гравитацию, психологию, бытовуху, софт и этику я обсудил с Маратом Айрапетяном, руководителем марсианской имитационной миссии. Приятного просмотра!
3 332
19
🤖 Android 17 будет жёстко лимитировать память приложений https://android-developers.googleblog.com/2026/06/prioritizing-memo+5
🤖 Android 17 будет жёстко лимитировать память приложений https://android-developers.googleblog.com/2026/06/prioritizing-memory-efficiency-steps-for-android-17.html С Android 17 система начнёт убивать приложения, которые превышают лимит памяти, привязанный к общему RAM устройства. Без стектрейса, без объяснений. Причина - раздутые foreground-приложения раньше переживали Low Memory Killer и заставляли его выкашивать кэш других, ломая мультитаск. Понять, попало ли приложение под лимит в проде, можно через ApplicationExitInfo - там будет строка MemoryLimiter:AnonSwap. ☝️ В официальной статье - пять направлений подготовки: • полный R8 • оптимизация картинок через Coil/Glide • поиск утечек через новый интегрированный LeakCanary в Android Studio Panda 3 • правильное использование onTrimMemory • ProfilingManager с новыми OOM- и Anomaly-триггерами для сбора heap dump'ов прямо в проде —————— 💭 Если приложение сейчас ест много памяти - стоит подготовиться заранее. Telegram | Селеба | Max | YouTube
3 125
20
🎨 Compose-интерфейс на 3D-объекте https://medium.com/@vshcryabets/android-ui-in-3d-rendering-jetpack-compose-on-opengl-surfa
🎨 Compose-интерфейс на 3D-объекте https://medium.com/@vshcryabets/android-ui-in-3d-rendering-jetpack-compose-on-opengl-surfaces-via-virtualdisplay-879e6590cf6d Эффектная техника от автора - рендеринг Compose UI прямо на поверхности вращающегося 3D-объекта в OpenGL. Живая кнопка и слайдер на грани куба, который крутится, а тапы по нему по-настоящему срабатывают. 🪄 "Магия" строится на связке четырёх системных API, которые редко собирают вместе: VirtualDisplay рисует не на экран, а в Surface, Presentation выводит туда обычный UI, OES-текстура (та самая, что обычно ловит кадры с камеры) затягивает результат в OpenGL, а SurfaceTexture склеивает всё это в работающую цепочку. В статье - пошаговый путь от простого прямоугольника до интерактивного Compose на грани куба, включая правильную передачу LifecycleOwner в ComposeView и пересчёт координат для MotionEvent. —————— 💭 Кейсы узкие - XR/VR, кастомные эмуляторы, демо-стенды. Но сама связка очень любопытная. Telegram | Селеба | Max | YouTube
2 492