AppFiles - Mobile Development
رفتن به کانال در Telegram
Библиотеки, обучающие статьи, курсы и видео для (мобильных) разработчиков. Если есть вопросы - пишите @lbogolubov.
نمایش بیشتر2 175
مشترکین
-124 ساعت
اطلاعاتی وجود ندارد7 روز
+330 روز
در حال بارگیری داده...
کانالهای مشابه
ابر برچسبها
اشارات ورودی و خروجی
---
---
---
---
---
---
جذب مشترکین
اکتبر '26اکتبر '26
اکتبر '26
+5
در 1 کانالها
سپتامبر '26
+22
در 1 کانالها
Get PRO
اوت '26
+24
در 1 کانالها
Get PRO
ژوئیه '26
+39
در 1 کانالها
Get PRO
ژوئن '26
+31
در 1 کانالها
Get PRO
مه '26
+42
در 1 کانالها
Get PRO
آوریل '26
+26
در 1 کانالها
Get PRO
مارس '26
+35
در 1 کانالها
Get PRO
فوریه '26
+23
در 1 کانالها
Get PRO
ژانویه '26
+45
در 2 کانالها
Get PRO
دسامبر '25
+43
در 3 کانالها
Get PRO
نوامبر '25
+46
در 1 کانالها
Get PRO
اکتبر '25
+132
در 1 کانالها
Get PRO
سپتامبر '25
+38
در 1 کانالها
Get PRO
اوت '25
+40
در 1 کانالها
Get PRO
ژوئیه '25
+31
در 1 کانالها
Get PRO
ژوئن '25
+33
در 1 کانالها
Get PRO
مه '25
+41
در 1 کانالها
Get PRO
آوریل '25
+54
در 2 کانالها
Get PRO
مارس '25
+162
در 1 کانالها
Get PRO
فوریه '25
+42
در 1 کانالها
Get PRO
ژانویه '25
+40
در 1 کانالها
Get PRO
دسامبر '24
+50
در 1 کانالها
Get PRO
نوامبر '24
+65
در 1 کانالها
Get PRO
اکتبر '24
+52
در 1 کانالها
Get PRO
سپتامبر '24
+48
در 1 کانالها
Get PRO
اوت '24
+81
در 2 کانالها
Get PRO
ژوئیه '24
+48
در 1 کانالها
Get PRO
ژوئن '24
+41
در 1 کانالها
Get PRO
مه '24
+29
در 1 کانالها
Get PRO
آوریل '24
+18
در 1 کانالها
Get PRO
مارس '24
+26
در 2 کانالها
Get PRO
فوریه '24
+25
در 1 کانالها
Get PRO
ژانویه '24
+36
در 1 کانالها
Get PRO
دسامبر '23
+49
در 2 کانالها
Get PRO
نوامبر '23
+20
در 2 کانالها
Get PRO
اکتبر '23
+35
در 2 کانالها
Get PRO
سپتامبر '23
+25
در 0 کانالها
Get PRO
اوت '23
+16
در 0 کانالها
Get PRO
ژوئیه '23
+16
در 0 کانالها
Get PRO
ژوئن '23
+27
در 0 کانالها
Get PRO
مه '23
+99
در 0 کانالها
Get PRO
آوریل '23
+34
در 0 کانالها
Get PRO
مارس '23
+28
در 0 کانالها
Get PRO
فوریه '23
+62
در 0 کانالها
Get PRO
ژانویه '23
+31
در 0 کانالها
Get PRO
دسامبر '22
+21
در 0 کانالها
Get PRO
نوامبر '22
+13
در 0 کانالها
Get PRO
اکتبر '22
+25
در 0 کانالها
Get PRO
سپتامبر '22
+11
در 0 کانالها
Get PRO
اوت '22
+9
در 0 کانالها
Get PRO
ژوئیه '22
+16
در 0 کانالها
Get PRO
ژوئن '22
+23
در 0 کانالها
Get PRO
مه '22
+38
در 0 کانالها
Get PRO
آوریل '22
+65
در 0 کانالها
Get PRO
مارس '22
+29
در 0 کانالها
Get PRO
فوریه '22
+48
در 0 کانالها
Get PRO
ژانویه '22
+60
در 0 کانالها
Get PRO
دسامبر '21
+26
در 0 کانالها
Get PRO
نوامبر '21
+26
در 0 کانالها
Get PRO
اکتبر '21
+19
در 0 کانالها
Get PRO
سپتامبر '21
+27
در 0 کانالها
Get PRO
اوت '21
+35
در 0 کانالها
Get PRO
ژوئیه '21
+22
در 0 کانالها
Get PRO
ژوئن '21
+20
در 0 کانالها
Get PRO
مه '21
+11
در 0 کانالها
Get PRO
آوریل '21
+46
در 0 کانالها
Get PRO
مارس '21
+34
در 0 کانالها
Get PRO
فوریه '21
+44
در 0 کانالها
Get PRO
ژانویه '21
+32
در 0 کانالها
Get PRO
دسامبر '20
+1 148
در 0 کانالها
| تاریخ | رشد مشترکین | اشارات | کانالها | |
| 06 اکتبر | +2 | |||
| 05 اکتبر | 0 | |||
| 04 اکتبر | +2 | |||
| 03 اکتبر | 0 | |||
| 02 اکتبر | +1 | |||
| 01 اکتبر | 0 |
پستهای کانال
Визуализация данных с помощью шестиугольной тепловой карты в Swift Charts
При создании графиков для пространственных данных измерения часто агрегируют в ячейки примерно одинаковой площади, формируя тепловую карту. В этой статье мы используем Swift Charts, чтобы отобразить землетрясения по всей Аотеароа в Новой Зеландии, с помощью шестиугольных ячеек.
Шестиугольная сетка не только эффектно выглядит, но и может естественнее приближать контуры суши и политических границ, чем прямоугольная сетка. Здесь частота землетрясений определяет цвет каждой ячейки по симметричной логарифмической шкале.
Статья: https://apptractor.ru/info/articles/vizualizatsiya-dannyh-s-pomoschyu-shestiugolnoy-teplovoy-karty-v-swift-charts.html
Платформа: iOS
👨🦯➡️ AppFiles: код, инструменты, практики, производительность
| 2 | Правда о Coil в Jetpack Compose: измеряем реальный оверхед SubcomposeAsyncImage
Взял пять разных способов загрузить картинку в Compose-списке — от самого простого прямого рисования до того самого SubcomposeAsyncImage, прогнал через одинаковые условия на реальных устройствах и посчитал, во сколько именно миллисекунд обходится каждый подход. Спойлер: ответ оказался не таким однозначным.
Статья: https://habr.com/ru/articles/1090452/
Платформа: Android
👨🦯➡️ AppFiles: код, инструменты, практики, производительность | 196 |
| 3 | Rich Push Notifications в iOS: Notification Service Extension, Notification Content Extension и неочевидные детали
Статья рассчитана на iOS‑разработчиков, которые уже знакомы с базовой настройкой пуш‑уведомлений и хотят разобраться с Notification Service Extension и Notification Content Extension. Здесь не рассматривается подключение пушей с нуля — основной фокус сделан на работе расширений, структуре payload, категориях уведомлений, кастомном UI и типичных проблемах при настройке. Все примеры приведены на отдельном демо‑проекте и основаны на публичной документации и открытых источниках. Цель статьи — собрать в одном месте детали, на которых легко потерять время при настройке rich notifications.
Статья: https://habr.com/ru/articles/1090524/
Платформа: iOS
👨🦯➡️ AppFiles: код, инструменты, практики, производительность | 193 |
| 4 | SweetPad - xcodebuild для людей и агентов
Инструмент командной строки, который собирает, запускает, отлаживает и тестирует приложения для iOS, macOS и других платформ без необходимости открывать Xcode. Он работает с проектами и workspace Xcode, Tuist, XcodeGen и Swift Packages.
Фичи:
• Удобное использование: короткие команды, интерактивные вопросы вместо обязательных флагов и встроенная справка для каждой команды.
• Короткий вывод сборки: сборка небольшого приложения выводит 7 строк вместо примерно 350 у xcodebuild.
• Устройства назначения: симуляторы, подключённые устройства и Mac можно выбирать по имени через --on.
• Тестирование: запуск отдельного теста, повторный запуск упавших тестов, повтор нестабильных тестов и экспорт покрытия и JUnit-отчётов.
• Автодополнение: sweetpad bsp init настраивает SourceKit-LSP для Neovim, Zed, Helix и Emacs.
• Hot reload: sweetpad run --hot применяет сохранённые изменения Swift-кода без перезапуска приложения.
• Отладка: breakpoints в Neovim, Zed или VS Code через sweetpad dap, а также скриптуемые сессии lldb и структурированные отчёты о падениях.
• Скрипты и CI: JSON-вывод и отдельные exit codes для каждой команды.
• Агентские навыки: инструкции, которые обучают coding-агентов использовать CLI.
SweetPad на GitHub: https://github.com/sweetpad-dev/sweetpad
Платформа: iOS
⭐️: 1.9K
👨🦯➡️ AppFiles: код, инструменты, практики, производительность | 203 |
| 5 | Как бы я спроектировал iOS-приложение с нуля, если бы оно должно было прожить 10 лет
Тест, который я бы использовал, — представить разработчика, открывающего проект в 2036 году. Он видит немного старого Swift, несколько UIKit-компонентов, новый SwiftUI рядом со старым SwiftUI, миграции, compatibility code, комментарии, объясняющие странные решения, тесты, понятный процесс сборки и документацию. Я бы хотел, чтобы он подумал: «Приложение старое, но с ним можно работать», а не: «Кто вообще это написал?» Речь о том, чтобы дать следующему разработчику честный шанс, потому что идеального варианта всё равно не будет. Если свести всё к одному вопросу, то он звучал бы так: станет ли человеку, которому придётся менять это через пять лет, легче или сложнее из-за решения, которое я принимаю сейчас?
Статья: https://apptractor.ru/info/articles/kak-by-ya-sproektiroval-ios-prilozhenie-s-nulya-esli-by-ono-dolzhno-bylo-prozhit-10-let.html
Платформа: iOS
👨🦯➡️ AppFiles: код, инструменты, практики, производительность | 269 |
| 6 | Gander - просмотр файлов
Gander - компактное приложение с открытым исходным кодом для просмотра файлов на Android, работающее полностью в автономном режиме. Оно позволяет открывать PDF, документы Word (.docx), Excel, PowerPoint (.pptx), фотографии, видео, аудио, файлы Markdown, текстовые и программные файлы, а также архивы .zip — и всё это в одной программе, не требующей никаких разрешений, без рекламы, отслеживания и доступа к интернету.
Gander на GitHub: https://github.com/mokshablr/gander
Платформа: Android
⭐️: 1.2K
👨🦯➡️ AppFiles: код, инструменты, практики, производительность | 282 |
| 7 | 📺 Видео и подкасты за неделю
• (iOS En) Interactive Sheet Header Scroll Effect Using SwiftUI
• (iOS En) Mastering SwiftUI Reordering in iOS 27 Lists, Grids & Sections
• (iOS En) Safari's Collapsible Bottom Bar Using SwiftUI
• (iOS En) Apple Music Mini Player Transition Using SwiftUI
• (And Ru) Монопроект — это то, что вам нужно
• (And Ru) Глобальные изменения в Android Developer Verification
• (And En) Stop making destructuring bugs with Kotlin's NEW name based destructuring feature
• (Dev Ru) Avito.Tech.Conf 2026
• (Dev Ru) Найм в QA: правда ли тестирование — легкий путь в IT?
• (Dev Ru) RAG — AI, агенты и поиск
• (Dev En) We will all be generalists
• (Dev En) Full Guide on Creating Reliable & Stable AI Agent Skills
Прошлогодние видео:
• (iOS Ru) Переезд на Swift 6: строим графы для успешной миграции
• (iOS Ru) Как мы запекали 3D-пиццу
• (iOS Ru) Есть ли ORM круче SwiftData
• (iOS Ru) Макросы спустя полгода: не все так гладко
• (And Ru) Android добрался до ноутбуков
• (And Ru) Как убрать Activity context из ViewModel и написать Unit-test
👨🦯➡️ AppFiles: код, инструменты, практики, производительность | 1 933 |
| 8 | Floe Agent — нативное рабочее пространство с ИИ-агентами для iPhone и iPad
Floe Agent превращает разговор с моделью в долгоживущую задачу. Каждое новое сообщение продолжает ту же задачу, а каждый отдельный запуск модели становится самостоятельным запуском со своим прогрессом, журналом использования инструментов, подтверждениями, контрольными точками и состоянием для восстановления.
Задача может работать либо в приватном рабочем пространстве, управляемом самим приложением, либо в явно выбранном пользователем рабочем пространстве проекта.
Floe Agent на GitHub: https://github.com/JiangNanGenius/floe-agent
Платформа: iOS
⭐️: 177
👨🦯➡️ AppFiles: код, инструменты, практики, производительность | 291 |
| 9 | A2UI в Jetpack Compose: как ИИ-агенты могут создавать нативные Android-интерфейсы
К концу этого руководства вы полностью поймёте:
• почему ИИ-агентам вообще нужен протокол UI;
• что такое A2UI и какие пять понятий лежат в его основе;
• какие четыре сообщения может отправлять агент и как работает data binding;
• как устроен Jetpack Compose renderer и как пошагово его подключить;
• как создавать собственные компоненты и собственный каталог дизайн-системы;
• как A2UI сохраняет высокую производительность, справляется с ошибками ИИ и переживает обновления приложения.
Эта статья задумана как единственный материал про A2UI, который вам понадобится. Берите кофе.
Статья: https://apptractor.ru/info/articles/a2ui-jetpack-compose.html
Платформа: Android
👨🦯➡️ AppFiles: код, инструменты, практики, производительность | 284 |
| 10 | Даем ИИ видеть SwiftUI: Xcode Preview MCP на практике — проблемы и надежды
Xcode 26.3 стал первой версией, в которой Apple открыла собственные фичи внешним агентам через MCP. Многие из этих возможностей и раньше были доступны через CLI, но рендеринг Preview был совершенно новым. В Xcode 27 Apple пошла ещё дальше и добавила headless MCP-сервер, сделав эти инструменты ещё удобнее для вызова, поэтому я глубоко встроил рендеринг Preview в свои сценарии ИИ-разработки. По пути я столкнулся с несколькими проблемами, а также сформулировал несколько наблюдений и надежд.
Статья: https://apptractor.ru/info/articles/daem-ii-videt-swiftui-xcode-preview-mcp-na-praktike-problemy-i-nadezhdy.html
Платформа: iOS
👨🦯➡️ AppFiles: код, инструменты, практики, производительность | 286 |
| 11 | ComposeBridge - визуальный редактор для Jetpack Compose
ComposeBridge — это набор инструментов, который связывает запущенное на физическом устройстве Android-приложение с вашей IDE через локальный WebSocket. В результате получается визуальный редактор для Jetpack Compose, работающий непосредственно на устройстве в реальном времени, и MCP-сервер для ИИ-агентов. Настройка интерфейса «на лету», точечная модификация исходного кода на основе анализа AST и автономное редактирование кода с помощью ИИ — без необходимости подключения к телефону.
Вы можете:
• Нажать на любой Composable-компонент на телефоне, чтобы исследовать его в реальном времени
• Настраивать цвета, размеры и отступы «на лету» с частотой 60 кадров в секунду — без пересборки через Gradle
• Сохранять изменения непосредственно в исходный код на Kotlin (например, в AppDimens.kt или AppColors.kt) благодаря точечной модификации байт-кода, сохраняющей форматирование файла
• Генерировать полноценные экраны Compose на основе декларативной JSON-схемы
• Перемещаться по дереву компонентов в рантайме — выбирать родительский элемент и переходить к дочерним
ComposeBridge на GitHub: https://github.com/JALAL591/compose-bridge
Платформа: Android
⭐️: 10
👨🦯➡️ AppFiles: код, инструменты, практики, производительность | 283 |
| 12 | Интеллектуальные приложения для Android: агентские рабочие процессы внутри приложения
Добро пожаловать обратно в серию публикаций «Интеллектуальные приложения для Android», где мы берём базовое Android-приложение и постепенно превращаем его в персонализированный, интеллектуальный и агентный продукт. В предыдущей статье вы узнали, как подключаться к системе интеллектуальных функций с помощью AppFunctions.
В этой статье вы узнаете, как создавать автономные агентные сценарии внутри приложения, работающие в облаке.1
Статья: https://apptractor.ru/info/articles/intellektualnye-prilozheniya-dlya-android-agentskie-rabochie-protsessy-vnutri.html
Платформа: Android
👨🦯➡️ AppFiles: код, инструменты, практики, производительность | 281 |
| 13 | Я написал свой музыкальный плеер со своим стримингом: Android, Windows, Linux и сервер на Rust
Готовые решения закрывали задачу по кусочкам. Poweramp отлично играет, но только на одном телефоне. Plex и Plexamp умеют стриминг, но требуют аккаунт, а часть функций у них за подпиской. Связка Navidrome и Symfonium хороша, но это два разных продукта от разных авторов, и половина того, что мне было нужно, не входила ни в один из них.
Статья: https://habr.com/ru/articles/1088018/
Платформа: Android
👨🦯➡️ AppFiles: код, инструменты, практики, производительность | 285 |
| 14 | HomeKit - управление умным домом через MCP
HomeClaw предоставляет доступ к вашим аксессуарам HomeKit через утилиту командной строки, MCP-сервер (работающий через stdio) и плагины для Claude Code и OpenClaw. Приложение работает в фоновом режиме и отображается в строке меню macOS.
У Apple HomeKit нет публичного API, интерфейса командной строки (CLI) и встроенных средств интеграции с ИИ-ассистентами или системами автоматизации. HomeClaw решает эту проблему с помощью приложения на базе Mac Catalyst, которое взаимодействует с HomeKit от вашего имени и предоставляет удобный API.
HomeClaw на GitHub: https://github.com/omarshahine/HomeClaw
Платформа: iOS
⭐️: 174
👨🦯➡️ AppFiles: код, инструменты, практики, производительность | 274 |
| 15 | Применение gRPC при разработке приложений под iOS
При широком распространении REST подхода для клиент‑серверного взаимодействия всегда существовали и существуют альтернативные решения, иногда незаслуженно обделенные вниманием. Об одном из них речь пойдет в сегодняшней статье. В ней будут даны некоторые теоретические основы, необходимые для работы и создан небольшой проект, который можно использовать для перехода на gRPC.
Статья: https://habr.com/ru/articles/982776/
Платформа: iOS
👨🦯➡️ AppFiles: код, инструменты, практики, производительность | 278 |
| 16 | Анимация iPhone Duo на Galaxy Fold: от красивой демки до работающего приложения
Мне хотелось пойти дальше: открыть любое приложение, сложить телефон, увидеть переход на внешнем экране и продолжить пользоваться им. Если остановить движение телефона на полпути, анимация тоже должна остановиться, а после полного раскрытия весь цикл должен работать снова, без перезапуска демонстрации. Причём это мой основной телефон, поэтому менять прошивку, жертвовать навигацией или держать внутренний дисплей включённым в закрытом устройстве ради эффекта я не собирался.
Так начался Hinge Lab, в котором анимация поверх приложений в итоге заработала, хотя системное мигание осталось, а некоторые приложения до сих пор не дают пригодный внешний кадр. Пришлось разбираться, как при очередном складывании получать свежий угол, включать нужную панель и находить изображение, которое на ней вообще можно нарисовать.
Видео: https://youtu.be/hjuiHh_GrL0?si=9wY0RVm_drCoXxF_
Статья: https://habr.com/ru/articles/1087304/
Платформа: Android
👨🦯➡️ AppFiles: код, инструменты, практики, производительность | 270 |
| 17 | Focora - подсветка фич для знакомства пользователей
Премиальная Android-библиотека для знакомства пользователей с функциями приложения — без внешних зависимостей. Большинство библиотек для знакомства пользователей с функциями приложения предлагают лишь простой прожектор и текстовый блок либо добавляют в проект тяжёлые зависимости. Focora создана с упором на минимальный размер, максимальную производительность и премиальный внешний вид.
Возможности:
• Прожектор с плавным изменением формы — при переходе между шагами плавно превращается из скруглённого прямоугольника в круг, капсулу или обычный прямоугольник
• Радарное пульсирующее свечение — эффектные расширяющиеся кольца вокруг выделенной области сразу привлекают внимание
• Переход по нажатию на целевой элемент — пользователь может перейти дальше, нажав непосредственно на выделенный элемент интерфейса или кнопку Next
• Выделение по виртуальным координатам — можно подсвечивать элементы Canvas, иконки Toolbar или произвольные координаты на экране без экземпляра View
• 4 стиля анимации — Expand, Fade, Pulse, Slide или None для режима с уменьшенным количеством анимаций
• Полностью программная подсказка — никаких XML-макетов и конфликтов ресурсов с вашим приложением
• Глубокая настройка темы — цвета, радиус углов, высота, размеры текста, шрифты, стили кнопок, стрелка, индикаторы шагов — всё настраивается
• Настройка каждого шага отдельно — каждый шаг может независимо переопределять форму, стиль анимации, положение подсказки и радиус углов
• Собственное представление подсказки — встроенную подсказку можно заменить любым View для конкретного шага
• Одноразовое обучение и умное продолжение — состояние «уже просмотрено» автоматически сохраняется через tutorialKey, а при добавлении новых шагов можно показывать только их
• Учитывает жизненный цикл — автоматически удаляет себя при уничтожении Activity с помощью Application.ActivityLifecycleCallbacks
• Передача касаний — нажатия внутри области прожектора попадают в настоящее представление под ним
• Обработка кнопки «Назад» — можно настроить закрытие по нажатию Back
• Закрытие по нажатию за пределами области — настраивается как для всей сессии, так и для отдельных шагов
• Индикаторы шагов — анимированный ряд точек или автоматически увеличивающийся текст вроде «1 из 3»
• Кнопка пропуска — необязательная, с полностью настраиваемым текстом
• Стрелка-указатель — треугольная стрелка, соединяющая подсказку с выделенной областью
• Задержка запуска — можно задать паузу перед появлением оверлея
• Поддержка уменьшенного количества анимаций — учитывает системную настройку «Отключить анимации»
• Поддержка RTL — стрелка и компоновка автоматически зеркалятся
• TalkBack / Accessibility — содержимое шага озвучивается через announceForAccessibility
• Ноль зависимостей — без Material, Kotlin, Hilt и сторонних библиотек
• API 23+ — поддерживается Android 6.0 и новее
• Безопасно для ProGuard/R8 — необходимые consumer rules уже включены
Focora на GitHub: https://github.com/cocodestudio/Focora
Платформа: Android
⭐️: 6
👨🦯➡️ AppFiles: код, инструменты, практики, производительность | 263 |
| 18 | ArrangementView: подумайте, прежде чем компоновать
ArrangementView кажется неудобным потому, что он упаковывает очень специфический класс проблем устройства в то, что выглядит как универсальный контейнер для двух представлений. Но в этом же заключается и его элегантность: когда отношение между содержимым действительно соответствует правилам устройства, сложность, которую иначе пришлось бы реализовывать в приложении, можно передать системе.
Статья: https://apptractor.ru/info/articles/arrangementview.html
Платформа: iOS
👨🦯➡️ AppFiles: код, инструменты, практики, производительность | 327 |
| 19 | Apple Shipkit - инфраструктурная основа для релизов
Apple Shipkit - готовая инфраструктура для выпуска приложений под iOS и macOS. Все процессы уже настроены: подпись кода, CI на базе GitHub Actions для обработки пулл-реквестов, создание свежих сертификатов для каждой сборки, загрузка в TestFlight и отправка в App Store. При этом намеренно не навязываются конкретные UI-фреймворк, сетевой стек или слой работы с данными.
Apple Shipkit на GitHub: https://github.com/indiagrams/apple-shipkit
Платформа: iOS
⭐️: 18
👨🦯➡️ AppFiles: код, инструменты, практики, производительность | 317 |
| 20 | Как я всё‑таки опубликовала игру в Google Play из России
Когда я только начала разбираться, как опубликовать приложение в Google Play из России, у меня довольно быстро появилось ощущение, что я занимаюсь чем‑то если не запрещённым, то как минимум подозрительным. Почти везде логика была примерно одинаковой: из России вроде бы можно, но желательно иметь иностранную карту, иностранный адрес, иностранный номер телефона, жить где‑нибудь в Сербии, Грузии или Казахстане и, по возможности, вообще перестать быть российским разработчиком.
Очень обнадёживающе.
Статья: https://habr.com/ru/articles/1086240/
Платформа: Android
👨🦯➡️ AppFiles: код, инструменты, практики, производительность | 402 |
