ar
Feedback
AppFiles - Mobile Development

AppFiles - Mobile Development

الذهاب إلى القناة على Telegram

Библиотеки, обучающие статьи, курсы и видео для (мобильных) разработчиков. Если есть вопросы - пишите @lbogolubov.

إظهار المزيد
2 168
المشتركون
+224 ساعات
لا توجد بيانات7 أيام
+830 أيام
أرشيف المشاركات
JavaScriptKit - взаимодействия с JavaScript через WebAssembly JavaScriptKit - Swift-фреймворк для взаимодействия с JavaScript
JavaScriptKit - взаимодействия с JavaScript через WebAssembly JavaScriptKit - Swift-фреймворк для взаимодействия с JavaScript через WebAssembly. Он предоставляет удобный способ взаимодействия с JavaScript из кода Swift, скомпилированного в WebAssembly. Он позволяет разработчикам Swift: • Получать доступ к объектам и функциям JavaScript • Создавать замыкания, которые можно вызывать из JavaScript • Преобразовывать типы данных между Swift и JavaScript • Использовать промисы JavaScript с async/await в Swift • Работать с многопоточностью JavaScriptKit на GitHub: https://github.com/swiftwasm/JavaScriptKit Платформа: iOS ⭐️: 850 👨‍🦯‍➡️ AppFiles: код, инструменты, практики, производительность

Heavy Artillery: Как гарантированно разбудить Samsung и Xiaomi на Android 14 без Firebase (FCM) ERRATA сегодня — это не сырой
Heavy Artillery: Как гарантированно разбудить Samsung и Xiaomi на Android 14 без Firebase (FCM) ERRATA сегодня — это не сырой прототип, а система версии v1.0 Production Ready, готовая к реальной работе "в поле". За интерфейсом приложения на Kotlin стоит надежная, хоть и невидимая пользователю инфраструктура: • Свой сервер (Node.js + SQLite), который занимается только валидацией лицензий и не хранит пользовательские данные. • Telegram-бот (Telegraf), через который реализован безопасный магазин и активация ключей. Это позволяет не зависеть от биллинга сторов и сохранять прямой контакт с пользователями. Построен суверенный "цифровой сейф", который не зависит от Google, зарубежных облаков и капризов вендоров телефонов. Статья: https://habr.com/ru/articles/995366/ Платформа: Android 👨‍🦯‍➡️ AppFiles: код, инструменты, практики, производительность

ChipTextField - чипы для Compose Multiplatform ChipTextField - редактируемые и настраиваемые чипы для Compose Multiplatform.
ChipTextField - чипы для Compose Multiplatform ChipTextField - редактируемые и настраиваемые чипы для Compose Multiplatform. Есть несколько видов дизайна, поддержка Material 3, аватаров, отмечаемых чипов.  ChipTextField на GitHub: https://github.com/dokar3/ChipTextField Платформа: Android/кроссплатформа ⭐️: 106

PassThroughWindow в iOS 26: наложенное окно, которое не перехватывает жесты Overlay окна удобны, когда вам нужен пользователь
PassThroughWindow в iOS 26: наложенное окно, которое не перехватывает жесты Overlay окна удобны, когда вам нужен пользовательский интерфейс, который располагается поверх всего остального. Вспомните о глобальных всплывающих уведомлениях, сетевых баннерах, строках состояния вызова, плавающих панелях отладки или контекстном меню, которое вы хотите отображать независимо от основной иерархии представлений. Недостаток очевиден: окно UIWindow, расположенное поверх вашего приложения, перехватывает все пространство для жестов. Даже если наложенное окно визуально «пустое» вокруг вашего всплывающего уведомления, система все равно может сначала перенаправлять касания в это верхнее окно. В результате приложение работает некорректно: прокрутка в окнах перестает работать, кнопки под наложением перестают реагировать, и пользовательский интерфейс кажется «заблокированным» без видимой причины. PassThroughWindow решает эту проблему. Он позволяет вашему наложению быть видимым и интерактивным там, где это важно (само всплывающее уведомление), но все остальное передается вниз, в окна под ним. Это особенно полезно, когда вы отображаете всплывающие уведомления в отдельном окне: всплывающему уведомлению нужны касания (закрытие, кнопка действия), но остальная часть экрана должна оставаться полностью работоспособной. Статья: https://apptractor.ru/info/articles/passthroughwindow-v-ios-26-nalozhennoe-okno-kotoroe-ne-perehvatyvaet-zhesty.html Платформа: iOS 👨‍🦯‍➡️ AppFiles: код, инструменты, практики, производительность

TUIkit - UI-фреймворк для терминалов TUIkit - фреймворк, похожий на SwiftUI, для создания пользовательских терминальных интер
TUIkit - UI-фреймворк для терминалов TUIkit - фреймворк, похожий на SwiftUI, для создания пользовательских терминальных интерфейсов на Swift: без ncurses, без зависимостей от C, только чистый Swift. TUIkit позволяет создавать приложения, используя тот же декларативный синтаксис, который вы уже знаете из SwiftUI. Определяйте свой пользовательский интерфейс с помощью View, создавайте представления с помощью VStack, HStack и ZStack, стилизуйте текст с помощью модификаторов, таких как .bold() и .foregroundColor(.red), и запускайте все это в терминале. TUIkit на GitHub: https://github.com/phranck/TUIkit Платформа: iOS 👨‍🦯‍➡️ AppFiles: код, инструменты, практики, производительность

10 ошибок в Kotlin, которые незаметно ухудшают производительность Kotlin не замедляет работу вашего Android-приложения. Замед
10 ошибок в Kotlin, которые незаметно ухудшают производительность Kotlin не замедляет работу вашего Android-приложения. Замедляете его вы сами. Не из-за больших ошибок. Не из-за неудачных архитектурных решений. Из-за крошечных, элегантных, «лучших практик», которые незаметно расходуют ресурсы процессора, памяти и кадров. Вот 10 из них. Статья: https://apptractor.ru/info/articles/10-oshibok-v-kotlin-kotorye-nezametno-uhudshayut-proizvoditelnost.html Платформа: Android 👨‍🦯‍➡️ AppFiles: код, инструменты, практики, производительность

Магия AirDrop: Как Apple заставляет Bluetooth и Wi-Fi работать в одной упряжке Разбираться во внутренностях AirDrop - это как препарировать фокус иллюзиониста: на сцене всё бесшовно, а за кулисами - вспотевшие инженеры пытаются заставить два разных радиомодуля не конфликтовать за общую антенну. Прочитав этот текст, вы поймете, как Apple фактически создала свой стек протоколов на базе стандартного железа, почему Bluetooth Low Energy - это «швейцар», а Wi-Fi - «грузчик», и как индустрия наконец-то пришла к единому стандарту передачи данных, который не заставляет владельцев Android чувствовать себя лишними на этом празднике жизни. Когда вы в сотый раз кидаете мем другу через AirDrop, вы вряд ли задумываетесь, что в этот момент ваш iPhone совершает сложнейший технологический пируэт. На бумаге всё просто: два устройства соединяются и передают файл. В реальности же мы имеем дело с кастомным стеком Apple Wireless Direct Link (AWDL), который годами был «вещью в себе». Но к 2026 году правила игры изменились: магия стала открытой. Статья: https://habr.com/ru/articles/993750/ Платформа: разработка 👨‍🦯‍➡️ AppFiles: код, инструменты, практики, производительность

Phonograph Plus - музыкальный плеер для Android Phonograph Plus - легкий, разработанный в соответствии с принципами Material
Phonograph Plus - музыкальный плеер для Android Phonograph Plus - легкий, разработанный в соответствии с принципами Material Design, локальный музыкальный плеер для Android. В настоящее время является независимым форком Phonograph, поскольку его поддержка прекращена (он перестал быть активным после 2020 года и был заархивирован в 2023 году), и находится в разработке и поддержке с 2021 года. Phonograph Plus на GitHub: https://github.com/chr56/Phonograph_Plus Платформа: Android ⭐️: 627 👨‍🦯‍➡️ AppFiles: код, инструменты, практики, производительность

Усталость от ИИ — это реальность, и никто об этом не говорит Вы используете ИИ для повышения производительности. Так почему ж
Усталость от ИИ — это реальность, и никто об этом не говорит Вы используете ИИ для повышения производительности. Так почему же вы чувствуете себя более измотанным, чем когда-либо? Парадокс, с которым приходится сталкиваться каждому инженеру. Статья: https://apptractor.ru/info/articles/ustalost-ot-ii-eto-realnost-i-nikto-ob-etom-ne-govorit.html Платформа: искусственный интеллект 👨‍🦯‍➡️ AppFiles: код, инструменты, практики, производительность

MVVM+Coordinator+Factory: Святая Троица внедрения зависимостей Эта статья - финальный аккорд в нашей трилогии об архитектуре.
MVVM+Coordinator+Factory: Святая Троица внедрения зависимостей Эта статья - финальный аккорд в нашей трилогии об архитектуре. Мы уже научились наводить порядок внутри экрана с помощью MVVM и управлять потоками переходов через Coordinator. Но остался один неудобный вопрос: кто создаст все эти зависимости? Если ваш Координатор превратился в свалку из десятка сервисов, которые он просто пробрасывает дальше, значит, пришло время внедрить Factory. Вы узнаете, как разделить создание объектов и управление ими, почему глобальные DI-контейнеры - это яд замедленного действия, и как построить систему, где каждый компонент получает только то, что ему нужно, не зная лишнего. Статья: https://habr.com/ru/articles/993738/ Платформа: iOS 👨‍🦯‍➡️ AppFiles: код, инструменты, практики, производительность

Kotlin Symbol Processing: создаём свой процессор Dagger/Hilt генерирует DI‑классы, Room генерирует DAO и сущности, Moshi гене
Kotlin Symbol Processing: создаём свой процессор Dagger/Hilt генерирует DI‑классы, Room генерирует DAO и сущности, Moshi генерирует JSON и т.д. Это экономит тонны времени. Но долгие годы для Kotlin‑проектов приходилось использовать KAPT — Kotlin Annotation Processing, прослойку для совместимости с Java‑аннотациями. KAPT работал, но имел свои минусы. Он генерирует Java‑стабы из Kotlin‑кода и прогоняет стандартный Java Annotation Processor. Эта махинация замедляет компиляцию: сначала компилятор Kotlin должен переварить ваши исходники в промежуточные Java‑классы, потом снова всё это компилировать. Плюс, KAPT порой криво понимал Kotlin фичи, потому что мыслил категориями Java. И вот появился Kotlin Symbol Processing (KSP). Это библиотека, которая позволяет писать процессоры напрямую для Kotlin. Обещают до 2х ускорения сборки по сравнению с KAPT, полную поддержку всех фич языка и мультиплатформенность. Статья: https://habr.com/ru/companies/otus/articles/991044/ Платформа: Android 👨‍🦯‍➡️ AppFiles: код, инструменты, практики, производительность

Ахиллесова пята SharedPreferences и стоит ли внедрять Datastore как альтернативу В этой статье я расскажу то, о чём не спраши
Ахиллесова пята SharedPreferences и стоит ли внедрять Datastore как альтернативу В этой статье я расскажу то, о чём не спрашивают на собесeдованиях и не рассказывают на курсах по Android-разработке — о неявной особенности Android, которая влияет на деградацию производительности и приводит к невоспроизводимым ANR в вашем приложении. Поделюсь исследованием производительности SharedPreferences, расскажу об их работе в главном потоке и как это связано с потерями кадров при открытии новой Activity, а также детально рассмотрю одну из самых известных альтернатив Datastore. Статья: https://habr.com/ru/companies/alfa/articles/991556/ Платформа: Android 👨‍🦯‍➡️ AppFiles: код, инструменты, практики, производительность

Profile page как в TikTok/Instagram на UIKit (iOS 15+) Если вам когда-нибудь приходила задача сделать страницу профиля как в популярных социальных сетях, то вы понимаете всю боль верстки такого дизайна на SwiftUI — особенно для версий iOS ниже 16. Готовые решения не гуглятся, полностью рабочих репозиториев нет, ИИ ещё не умеют в такие комплексные задачи, а Telegram скрывает похожий лэйаут за внутренними библиотеками. Давайте разбираться, что тут можно придумать. Статья: https://habr.com/ru/articles/994088/ Платформа: iOS 👨‍🦯‍➡️ AppFiles: код, инструменты, практики, производительность

HealthQL - SQL для HealthKit HealthQL - язык запросов, похожий на SQL, для Apple HealthKit. Запрашивайте данные о своем здоро
HealthQL - SQL для HealthKit HealthQL - язык запросов, похожий на SQL, для Apple HealthKit. Запрашивайте данные о своем здоровье, используя привычный синтаксис SQL или типобезопасный DSL Swift.
SELECT avg(value), min(value), max(value)
FROM heart_rate
WHERE date > today() - 7d
GROUP BY day
Фичи: • Синтаксис, похожий на SQL — Запрашивайте HealthKit с помощью привычных операторов SELECT, FROM, WHERE, GROUP BY, ORDER BY, LIMIT • Типобезопасный Swift DSL — Гибкий API для программного построения запросов • Поддержка React Native/Expo — Используйте HealthQL в приложениях React Native с полной поддержкой типов TypeScript • 33 типа данных — Частота сердечных сокращений, шаги, калории, VO2 max, плавание и многое другое • 5 типов данных категорий — Анализ сна, головная боль, усталость, аппетит, менструации • Тренировки и сеансы сна — Запрос данных об упражнениях и агрегированных показателей сна • Функции работы с датами — today(), start_of_week(), start_of_month(), start_of_year() • Агрегации — SUM, AVG, MIN, MAX, COUNT с поддержкой GROUP BY • Полная поддержка предикатов — Все операторы сравнения, AND, IS NULL, IS NOT NULL HealthQL на GitHubhttps://github.com/glisom/HealthQL Платформа: iOS ⭐️: 22

Под капотом Android Automotive: Что такое VHAL и почему это сердце машины В прошлой статье мы запустили эмулятор и убедились,
Под капотом Android Automotive: Что такое VHAL и почему это сердце машины В прошлой статье мы запустили эмулятор и убедились, что Android Automotive OS (AAOS) — это не просто зеркало вашего телефона. Это самостоятельная экосистема. Но пока мы запускали только стандартные медиа-плееры, мы скользили по поверхности. Настоящая магия начинается там, где софт встречается с «железом». В телефоне у вас есть стандартный набор датчиков: GPS, акселерометр, гироскоп. В современном автомобиле таких датчиков тысячи: от давления в шинах и температуры масла до угла поворота руля и статуса каждой двери. Как Android-разработчику получить доступ к этому океану данных? Не будем же мы тянуть провода к OBDII разъему? Конечно, нет. Для этого Google построила мощный мост, по которому мы сегодня и пройдемся. Добро пожаловать в мир Car API и VHAL. Статья: https://habr.com/ru/articles/992868/ Платформа: Android 👨‍🦯‍➡️ AppFiles: код, инструменты, практики, производительность

Kotlin Android MVVM Template - шаблон Android-приложения Kotlin Android MVVM Template - простой и легкий шаблон для приложени
Kotlin Android MVVM Template - шаблон Android-приложения Kotlin Android MVVM Template - простой и легкий шаблон для приложения Jetpack Compose с полностью настроенной навигацией, Retrofit и Dagger-Hilt для вашего удобства, чтобы вы могли сосредоточиться только на важном. Фичи: • Полностью на Jetpack Compose • Jetpack Compose Navigation • Полностью настроенный Retrofit  • MVVM • Kotlin DSL • Gradle Version Catalog для инъекции зависимостей • detekt для проверки кода • Dependabot для обновления зависимостей • GitHub Actions CI/CD для проверки линтера, тестов и сборки APK • Coil для изображений Kotlin Android MVVM Template на GitHub: https://github.com/its-me-debk007/kotlin-android-mvvm-template Платформа: Android ⭐️: 62 👨‍🦯‍➡️ AppFiles: код, инструменты, практики, производительность

Модульная архитектура — это не просто теория, вот доказательства Среднестатистический разработчик, если его попросят дать опр
Модульная архитектура — это не просто теория, вот доказательства Среднестатистический разработчик, если его попросят дать определение модульности, вероятно, скажет что-то вроде: Модульность — это когда вы разбиваете свой код на более мелкие, отдельные части или модули, вместо того чтобы хранить все в одном большом файле. Каждый модуль обрабатывает определенную часть функциональности, и они могут работать вместе, но существовать независимо. Здесь нет ничего неверного, но это опасно неполно; отсутствует объяснение того, почему это важно — а это крайне важно для понимания того, что такое хорошая модульность. Статья: https://apptractor.ru/info/articles/modulnaya-arhitektura-eto-ne-prosto-teoriya-vot-dokazatelstva.html Платформа: iOS/архитектура 👨‍🦯‍➡️ AppFiles: код, инструменты, практики, производительность

Как мы помогали Стэнфорду следить за акулами Вот что для этого понадобилось: бэкендеры — 2 штуки, фронтендер — 1 штука, дизай
Как мы помогали Стэнфорду следить за акулами Вот что для этого понадобилось: бэкендеры — 2 штуки, фронтендер — 1 штука, дизайнер — 1 штука, мобильный разработчик — 1 штука, время — 2 учебных семестра. Продолжаем рассказывать об интересных проектах студентов ФИИТ. В этот раз речь пойдёт о приложении для интерактивного мониторинга белых акул по заказу Стэнфордского университета. 🦈 В статье ребята рассказали, какие возможности реализовали внутри приложения, какой стек технологий выбрали и что за сложности случились на фронтенде и бэкенде. Статья: https://habr.com/ru/companies/skbkontur/articles/992662/ Платформа: разработка

Combine умер? Да, Combine теряет часть своей роли на фоне Swift Concurrency и новых средств наблюдения. Но ни официально не п
Combine умер? Да, Combine теряет часть своей роли на фоне Swift Concurrency и новых средств наблюдения. Но ни официально не признан устаревшим, ни полностью не прекращает быть полезным, особенно в существующих кодовых базах и для определённых архитектурных задач. Платформа: iOS 👨‍🦯‍➡️ AppFiles: код, инструменты, практики, производительность