ch
Feedback
AppFiles - Mobile Development

AppFiles - Mobile Development

前往频道在 Telegram

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

显示更多
2 171
订阅者
无数据24 小时
+57
+830
帖子存档
Chucker - HTTP инспектор для Android Chucker упрощает проверку HTTP(S) запросов/ответов, отправляемых вашим Android-приложением. Chucker работает как Charles, только на устройстве - он перехватывает OkHttp, сохраняя все события внутри вашего приложения и предоставляя пользовательский интерфейс для проверки и шаринга их содержимого. Приложения, использующие Chucker, будут отображать уведомление с кратким обзором текущей HTTP-активности. Нажатие на уведомление запускает полный пользовательский интерфейс Chucker. Приложения могут по желанию подавить уведомление и запустить пользовательский интерфейс Chucker непосредственно из своего собственного интерфейса. Chucker на GitHub: https://github.com/ChuckerTeam/chucker Платформа: Android ⭐️: 4.5K 👨‍🦯‍➡️ AppFiles: код, инструменты, практики, производительность

От класса размера к доступному пространству: остается ли horizontalSizeClass надежным параметром? Как показали на WWDC 26, при зеркальном отображении приложения для iPhone на Mac через функцию iPhone Mirroring, размер его окна можно свободно изменять. Одновременно с этим, приложения для iPhone, работающие на iPad, также получат возможность изменять размер окна. Даже без обновления физического устройства до бета-версии новой ОС, разработчики уже могут оценить это изменение в предварительных версиях Xcode 27 или в среде симулятора iOS 27 в Device Hub. Однако влияние этого обновления выходит далеко за рамки простого изменения размера окон приложений для iPhone. Оно меняет представление многих разработчиков о системе компоновки. Некоторые характеристики, которые ранее часто использовались в качестве параметров компоновки, такие как horizontalSizeClass, больше не подходят в качестве основного критерия определения ширины окна. Так является ли это изменение внезапным сдвигом или неизбежным результатом долгосрочной эволюции системы компоновки Apple? В этой статье мы рассмотрим этот вопрос. Статья: https://apptractor.ru/info/articles/ot-klassa-razmera-k-dostupnomu-prostranstvu-ostaetsya-li-horizontalsizeclass-nadezhnym-parametrom.html Платформа: iOS 👨‍🦯‍➡️ AppFiles: код, инструменты, практики, производительность

Создание гида в смешанной реальности с использованием Android XR, геопространственного API и Gemini Представьте, что вы приез
Создание гида в смешанной реальности с использованием Android XR, геопространственного API и Gemini Представьте, что вы приезжаете в незнакомый город, надеваете проводные очки расширенной реальности — например, готовящиеся к выпуску XREAL Project Aura — и сразу получаете персонального местного экскурсовода, который хорошо знает город. Вам больше не нужно постоянно смотреть на плоскую карту: трёхмерные модели ненавязчиво указывают путь, а интеллектуальный голосовой помощник рассказывает об исторических достопримечательностях, находящихся прямо перед вами. Мы объединили геопространственные программные интерфейсы, программный интерфейс Gemini с использованием Firebase AI Logic, привязку данных Google Maps к реальному миру и комплект средств разработки Jetpack XR. В результате получилось иммерсивное приложение для пешеходных экскурсий, которым можно пользоваться без помощи рук. Статья: https://apptractor.ru/info/articles/sozdanie-gida-v-smeshannoy-realnosti-s-ispolzovaniem-android-xr-geoprostranstvennogo-api-i-gemini.html Платформа: Android 👨‍🦯‍➡️ AppFiles: код, инструменты, практики, производительность

SWCompression - работа с архивами на Swift SWCompression - фреймворк с алгоритмами (де)компрессии и функциями для работы с ра
SWCompression - работа с архивами на Swift SWCompression - фреймворк с алгоритмами (де)компрессии и функциями для работы с различными архивами и контейнерами. Фичи: • Декомпрессия (а иногда и сжатие) с использованием различных алгоритмов • Чтение (а иногда и запись) архивов различных форматов • Чтение (а иногда и запись) контейнеров, таких как ZIP, TAR и 7-Zip Работает на платформах Apple, Linux и Windows. SWCompression на GitHub: https://github.com/tsolomko/SWCompression Платформа: iOS ⭐️: 273 👨‍🦯‍➡️ AppFiles: код, инструменты, практики, производительность

Лучшие практики SwiftUI из агентского навыка Xcode 27 Xcode 27, представленный на WWDC 2026, впервые включает в себя агентски
Лучшие практики SwiftUI из агентского навыка Xcode 27 Xcode 27, представленный на WWDC 2026, впервые включает в себя агентские навыки разработки, в том числе на SwiftUI, от Apple. Эти навыки отлично подходят для агентской разработки в Xcode или при использовании навыков из Xcode 27 в Claude, Codex и Cursor — любой IDE для ИИ. Хотя мы можем использовать эти навыки и не оглядываться назад, гораздо интереснее углубиться в анализ того, что Apple считает достаточно важным для включения в навык. Навыки должны быть компактными и оптимизированными для использования токенов, поэтому в них будут включены только необходимые части. В этой статье мы углубимся в лучшие практики SwiftUI, рассмотрев навык SwiftUI Specialist Agent, входящий в состав Xcode 27. Статья: https://apptractor.ru/info/articles/luchshie-praktiki-swiftui-iz-agentskogo-navyka-xcode-27.html Платформа: iOS 👨‍🦯‍➡️ AppFiles: код, инструменты, практики, производительность

Разработка плагина для Android Studio или Чистим безумную простыню логов в LogCat Недавно я дошёл до точки кипения. Локализов
Разработка плагина для Android Studio или Чистим безумную простыню логов в LogCat Недавно я дошёл до точки кипения. Локализовать плавающий баг в этом бесконечном водопаде текста стало физически больно - глаза просто вытекали. Стандартные фильтры Android Studio, конечно, работают, но когда тебе нужно постоянно переключаться между логами пяти разных фич и при этом не видеть спам от остальных, ручная настройка регулярных выражений начинает сниться в кошмарах. Нужно постоянно помнить точные названия тегов всех модулей, собирать длинные конструкции с исключениями через минусы и вертикальные черты, а через пять минут переписывать всё заново под другую задачу. Сначала я пробовал стандартные фильтры LogCat, затем написал скрипты которые чистили по нужным тегам, затем переключался на скармливание этих логов в AI. Выжранные токены заставили чистить уже подготовленные логи. Но все равно это было неудобно и отнимало время. Поняв, что так дальше жить нельзя, я решил сделать инструмент под себя. Результатом стал плагин TAO LogExt для Android Studio, который превращает эту рутину в удобное управление в несколько кликов. Статья: https://habr.com/ru/articles/1047962/ Платформа: Android 👨‍🦯‍➡️ AppFiles: код, инструменты, практики, производительность

Kore - дизайн-система для Compose Multiplatform Kore — это платформа дизайна Compose Multiplatform (Android, iOS, Desktop, We
Kore - дизайн-система для Compose Multiplatform Kore — это платформа дизайна Compose Multiplatform (Android, iOS, Desktop, Web), предоставляющая красиво оформленные компоненты, помогающие создавать масштабируемые и согласованные дизайн-системы. Основные фичи: полностью настраиваемый по темам интерфейс, есть готовые стили, кастомизация всего, функции доступности.  Kore на GitHub: https://github.com/dev778g-me/Kore Платформа: Android/кроссплатформа ⭐️: 3 👨‍🦯‍➡️ AppFiles: код, инструменты, практики, производительность

LLM на iPhone: от llama.cpp до Foundation Models В 2025 году вместе с iOS 26 компания Apple представила разработчикам Apple F
LLM на iPhone: от llama.cpp до Foundation Models В 2025 году вместе с iOS 26 компания Apple представила разработчикам Apple Foundation Models. Теперь порог входа для on-device AI упал до нескольких строк, и далее в статье мы рассмотрим как он выглядит. А в январе 2026 года Apple заключила сделку с Google в рамках которой следующее поколение Apple foudation models будет основано на технологии Google Gemini. По данным Bloomberg стоимость этой сделки составляет 1 млрд долларов в год. Apple по-прежнему держит контроль над пользовательскими данными, запросы будут выполняться локально, что-то сложное, с чем не может справиться локальная модель - будет отправляться в облако Apple Private Cloud Compute. Статья: https://habr.com/ru/articles/1047288/ Платформа: iOS 👨‍🦯‍➡️ AppFiles: код, инструменты, практики, производительность

ListKit - списки и сетки для SwiftUI ListKit — это библиотека SwiftUI, предоставляющая дополнительные инструменты для работы
ListKit - списки и сетки для SwiftUI ListKit — это библиотека SwiftUI, предоставляющая дополнительные инструменты для работы со списками, сетками и полками, предоставляющая гибкие способы отображения элементов. ListKit содержит множество предопределенных представлений, а также собственные расширения. ListKit на GitHub: https://github.com/danielsaidi/ListKit Платформа: iOS ⭐️: 9 👨‍🦯‍➡️ AppFiles: код, инструменты, практики, производительность

Что нового в Swift 6.4 после WWDC26 Swift 6.4 включает в себя ряд улучшений языка и дополнений к стандартной библиотеке, кото
Что нового в Swift 6.4 после WWDC26 Swift 6.4 включает в себя ряд улучшений языка и дополнений к стандартной библиотеке, которые делают повседневный код более чистым и выразительным. В этой статье рассматриваются наиболее заметные изменения, представленные на WWDC26. Статья: https://apptractor.ru/info/articles/chto-novogo-v-swift-6-4-posle-wwdc26.html Платформа: iOS 👨‍🦯‍➡️ AppFiles: код, инструменты, практики, производительность

Что нового в Swift 6.4 после WWDC26 Swift 6.4 включает в себя ряд улучшений языка и дополнений к стандартной библиотеке, которые делают повседневный код более чистым и выразительным. В этой статье рассматриваются наиболее заметные изменения, представленные на WWDC26.

Datadog предоставляет миллионы инсайтов о производительности с помощью ProfilingManager Регрессии производительности печально
Datadog предоставляет миллионы инсайтов о производительности с помощью ProfilingManager Регрессии производительности печально известны тем, что их сложно воспроизводить, поэтому они становятся серьёзным узким местом для мобильных разработчиков. Хотя такие сигналы, как частота случаев, когда приложение не отвечает, показывают, какие проблемы возникают в рабочей среде, точное определение строки кода, из-за которой появилась проблема с производительностью, исторически требовало либо полного ручного воспроизведения, либо экспериментирования методом проб и ошибок. Datadog совместно с Google снизила эту боль, встроив ProfilingManager API, доступный на устройствах с Android 15 и новее, в свои платформы мониторинга реальных пользователей (Real User Monitoring, RUM) и непрерывного профилирования (Continuous Profiling). Эта интеграция меняет процесс отладки: разработчики могут перейти от поверхностных симптомов к пониманию причины провала в производительности. Используя этот системный API, Datadog, по внутренним данным компании за июнь 2026 года, еженедельно обрабатывает миллионы профилей из рабочей среды по всему миру. Это даёт инженерным командам новый уровень видимости реальной производительности при сохранении низких накладных расходов в рантайме, что важно для мониторинга производительности в рабочих масштабах. Статья: https://apptractor.ru/info/articles/datadog-predostavlyaet-milliony-insaytov-o-proizvoditelnosti-s-pomoschyu-profilingmanager.html Платформа: Android 👨‍🦯‍➡️ AppFiles: код, инструменты, практики, производительность

iOS: отправляем почту по SMTP с нуля на сокетах Несмотря на активное использование мессенджеров, электронная почта все еще занимает весомую долю в коммуникации, особенно в рабочей среде, из-за этого не исключена необходимость в отправке почтовых сообщений прямо с iOS приложения. В данной статье мы ознакомимся с протоколами, по которым работает почта. Сфокусируемся на реализации протокола для отправки почтовых сообщений (SMTP) на низком уровне (BSD сокеты). И, используя собственный сетевой слой для работы с почтой, реализуем iOS клиент для отправки почтовых сообщений через любые почтовые провайдеры (ex: gmail, yandex, mail). Статья: https://habr.com/ru/articles/1038760/ Платформа: Android 👨‍🦯‍➡️ AppFiles: код, инструменты, практики, производительность

Compose Navigation Graph - визуализация потоков приложения Compose Navigation Graph превращает весь поток вашего приложения в единую живую карту: каждый экран отображается в виде существующей миниатюры @Preview, а каждый переход — в виде стрелки, по которой можно следовать. Он работает с Navigation 3, Navigation 2, любыми другими библиотеками навигации Compose и даже обычными Activity. Вы добавляете аннотации к своим экранам, а плагин Gradle и процессор KSP статически извлекают граф навигации и отображают миниатюру каждого экрана без эмулятора. Затем плагин для IntelliJ/Android Studio отрисовывает всю навигацию вашего приложения, объединенную по модулям, в окне инструментов, где вы можете перейти к исходному коду и добавить переходы. Вы даже можете проверять изменения навигации в запросах на слияние с помощью закомиченного базового файла .nav, так что никакие изменения пунктов назначения или переходов не останутся без проверки. Compose Navigation Graph на GitHub: https://github.com/skydoves/compose-nav-graph Платформа: Android ⭐️: 286 👨‍🦯‍➡️ AppFiles: код, инструменты, практики, производительность

Архитектура Android-приложений. Как повысить качество архитектуры, не говоря об архитектуре Я Марк, Android-разработчик, рабо
Архитектура Android-приложений. Как повысить качество архитектуры, не говоря об архитектуре Я Марк, Android-разработчик, работаю над мобильным приложением для управления умным домом Салют. Для мира Android-разработки вопросы архитектуры, её надёжности и качества актуальны, но… на самом деле не так уж интересны. Интересно, чтобы приложения были надёжными, устойчивыми к ошибкам, поддерживаемыми и легко масштабируемыми. Самый популярный подход — по-прежнему архитектурные паттерны (MV* паттерны) и разделение архитектуры по слоям. Что никак не избавляет от ошибок. Статья: https://habr.com/ru/companies/sberdevices/articles/1045987/ Платформа: Android 👨‍🦯‍➡️ AppFiles: код, инструменты, практики, производительность

PovioKit - коллекция полезных модулей PovioKit - модульный инструментарий Swift 6, включающий вспомогательные средства для Co
PovioKit - коллекция полезных модулей PovioKit - модульный инструментарий Swift 6, включающий вспомогательные средства для Concurrency, расширения Foundation, компоненты SwiftUI/UIKit/ AppKit и специализированные утилиты (Money, MediaPlayer, IAP, Camera, Exif, обертки свойств и т. д.) — все скомпилировано в условиях строгого параллельного выполнения. PovioKit на GitHub: https://github.com/povio/PovioKit Платформа: iOS ⭐️: 26 👨‍🦯‍➡️ AppFiles: код, инструменты, практики, производительность

Один файл CLAUDE.md стал вирусным - причина до смешного проста Я чуть было не пролистал это сообщение. Пост в LinkedIn о Mark
Один файл CLAUDE.md стал вирусным - причина до смешного проста Я чуть было не пролистал это сообщение. Пост в LinkedIn о Markdown-файле, ставшем вирусным на GitHub. Звучало как хайп. Типа, когда кто-то делает скриншот количества звезд и выдает это за революцию. Затем я проверил репозиторий. 91 000 звезд. Никаких зависимостей. Никакоих этапов сборки. Никакой модели. Просто один файл под названием CLAUDE.md с четырьмя правилами поведения внутри. И эти правила не являются чем-то новым. Вот что меня обеспокоило. Это то, что каждый senior инженер рассказал бы младшему в первый день работы. И все же этот файл сейчас является самым популярным репозиторием на GitHub, и кривая растет. Я немного подумал и вот, что происходит на самом деле. Статья: https://apptractor.ru/info/articles/claude-md.html Платформа: разработка 👨‍🦯‍➡️ AppFiles: код, инструменты, практики, производительность

Piru - трекер приема лекарств для iOS Piru - приложение для отслеживания принятия веществ для iOS. Регистрирует, что вы прини
Piru - трекер приема лекарств для iOS Piru - приложение для отслеживания принятия веществ для iOS. Регистрирует, что вы принимали, когда и в какой дозе; накладывает фармакокинетические кривые, чтобы вы могли видеть, какие вещества все еще активны; предупреждает о взаимодействии лекарств перед их одновременным применением. Создано в первую очередь для снижения вреда: контроль за приемом лекарств, отслеживание рекреационных сессий и безопасность сочетания веществ. Данные о веществах получены из TripSit, PsychonautWiki и DailyMed FDA — объединены и дедуплицированы в единую библиотеку, содержащую около 1100 веществ с диапазонами доз, способами применения, продолжительностью действия и периодами полураспада. Особенности: • ~1100 веществ с диапазонами доз (пороговые / легкие / обычные / сильные / тяжелые), способами применения, профилями продолжительности действия и периодами полураспада. • Фармакокинетическая шкала. Однокамерная модель пероральной фармакокинетики оценивает скорость абсорбции с момента начала действия каждого пути введения и отображает результирующую кривую концентрации; дозы масштабируют высоту кривой в зависимости от соотношения количества и концентрации активного вещества. • Предупреждения о взаимодействиях. 59 правил взаимодействия на основе классов, охватывающих распространенные опасные пары (ингибиторы МАО + стимулятор, опиоиды + бензодиазепины, литий + НПВП и т. д.). • Предупреждения отображаются в режиме реального времени во время регистрации и в виде окна опасности на временной шкале. • Активность в реальном времени. Активные дозы отображаются на экране блокировки и в динамическом окне с указанием оставшейся продолжительности действия. • Уведомления о снижении вреда. Дополнительные напоминания о снижении дозы, сгруппированные в 6-часовые сеансы, чтобы последовательные дозы не распадались на отдельные цепочки оповещений. • Ежедневное отслеживание приема лекарств. Соблюдение режима приема лекарств/добавок с напоминаниями в будние дни, отдельно от дневника рекреационного использования. • Аналитика. Тепловая карта активности, статистика использования, калькулятор периода полураспада, графики тенденций для каждого вещества. • Пользовательские вещества. Добавьте любые вещества, отсутствующие в объединенной библиотеке — название, категорию, диапазоны доз, способ введения, период полураспада — и они будут участвовать в поиске, взаимодействии и фармакокинетике. • Экспорт. Отчеты в формате JSON и PDF, совместимые с PsyLog, с фармакокинетическими диаграммами. Piru на GitHub: https://github.com/kageroumado/piru Платформа: iOS ⭐️: 28 👨‍🦯‍➡️ AppFiles: код, инструменты, практики, производительность

RecyclerView. Оптимизация Adapter Казалось бы, RecyclerView — давно знакомый инструмент. Но когда данные становятся разнородн
RecyclerView. Оптимизация Adapter Казалось бы, RecyclerView — давно знакомый инструмент. Но когда данные становятся разнородными, а списки — большими, простой вызов notifyDataSetChanged() превращается в узкое место, вызывающее фризы и дергающуюся анимацию. Как перейти от лобового обновления к точечным изменениям? Как объединить несколько типов элементов в одном адаптере? Статья: https://habr.com/ru/companies/psb/articles/1043722/ Платформа: Android 👨‍🦯‍➡️ AppFiles: код, инструменты, практики, производительность