AppFiles - Mobile Development – Telegram
AppFiles - Mobile Development
2.13K subscribers
2.76K photos
38 videos
11 files
3.69K links
Библиотеки, обучающие статьи, курсы и видео для (мобильных) разработчиков. Если есть вопросы - пишите @lbogolubov.
Download Telegram
Рисуем график сна в Compose

Вчера путешествовали с Swift Charts, сегодня спим с Compose. В этой статье приведено руководство по созданию собственного графика сна, подобного тому, который можно найти в приложении Fitbit.

Статья: https://apptractor.ru/info/articles/risuem-grafik-sna-v-compose.html
Платформа: Android
👍3
Mihon — это бесплатное и открытое приложение для чтения манги, вебтунов и комиксов на устройствах Android. Оно является преемником популярного приложения Tachiyomi и предлагает множество фич для удобного чтения и управления вашей библиотекой.

Mihon на GitHub: https://github.com/mihonapp/mihon
Платформа: Android
⭐️: 11.7K
1
Sheet с автоматическим подсчётом высоты и поддержкой iOS 15

В этой статье я расскажу о том, как создать нативный Sheet, который автоматически подсчитывает свою высоту в зависимости от котента (SwiftUI View). Задача была в том, чтобы решение было c минимумом костылей и сохраняло поддержку iOS 15. Готового похожего решения мне не удалось найти, поэтому решил создать свой вариант.

Статья: https://habr.com/ru/articles/879854/
Платформа: iOS
💩1
Transtation - это сочетание "Translate" и "Station", простое в использовании и мощное приложение для перевода для Android/Desktop(JVM), основанное на Kotlin Multiplatform + Compose Multiplatform.

Реализует одновременный перевод с использованием нескольких движков (Bing, Google, Baidu, Tencent), может использовать для перевода несколько передовых больших языковых моделей (LLM), таких как ChatGPT, GPT-4, ChatGLM, Qwen (в том числе в режиме общения), поддерживает плагины, загрузки, перевод изображений, перевод экрана и многое другое.

Внутри Kotlin Multiplatform + Compose Multiplatform + MVVM + Kotlin Coroutine + Flow + SqlDelight, многомодульный дизайн.

Transtation на GitHub: https://github.com/FunnySaltyFish/Transtation-KMP
Платформа: Android/кроссплатформа
⭐️: 99
👍2
8 советов по производительности Swift, которые я узнал после многих лет программирования

Я хотел поделиться этими советами по производительности Swift, которые, как мне кажется, должны быть известны каждому, поскольку мне потребовалось много усилий и ошибок, чтобы научиться этому. Итак, вот восемь советов по производительности, которые реально изменили мои проекты:

1. Отдавайте предпочтение структурам, а не классам
2. Используйте ленивые свойства для ресурсоемких инициализаций
3. Оптимизация массивов путем предварительного распределения объема
4. Используйте параллелизм Swift с помощью Async/Await
5. Сведите к минимуму использование Optional в коде, критичном к производительности
6. Используйте типы данных для обеспечения потокобезопасности
7. Оптимизируйте операции со строками с помощью String API
8. Профилирование и бенчмаркинг с помощью Xcode Instr8 советов по производительности Swift, которые я узнал после многих лет программирования

Статья: https://apptractor.ru/info/articles/8-sovetov-po-proizvoditelnosti-swift-kotorye-ya-uznal-posle-mnogih-let-programmirovaniya.html
Платформа: iOS
👍2🤔2
Пишем простой плагин для Android Studio

В настоящий момент для разработки используем Flutter и в наших проектах стараемся придерживаться принципов чистой архитектуры типа feature-first. Из-за этого приходится создавать множество папок и файлов по одному и тому же шаблону, поэтому в целях ускорения разработки было принято решение по написанию простого плагина для Android Studio.

Хотелось бы предупредить, что это мой первый опыт в создании плагинов, и я не претендую на роль эксперта, но возможно кто-то находится в поисках простой реализации плагина, и сможет почерпнуть для себя что-то полезное.

Статья: https://habr.com/ru/articles/880160/
Платформа: Android
1
Mantis - это библиотека для обрезки (кропа) изображений для iOS, написанная на Swift и обеспечивающая богатые возможности обрезки для вашего приложения для iOS/Mac. Поддерживает разные формы (в том числе кастомные), кнопку отмены.

Mantis на GitHub: https://github.com/guoyingtao/Mantis
Платформа: iOS
⭐️: 965
👍1
Обновления в Swift Concurrency: что нас ждёт в Swift 6

В этой статье я постараюсь разобраться с основными изменениями в каждом пропозале и поделюсь своими заметками, тем, что мне показалось самым важным или интересным. В конце статьи бонус — Playground с тестами для каждого пропозала, чтобы можно было поиграть с кодом, детальнее разобраться с изменениями и понять, как они влияют на код, написанный на Swift 5.

Статья: https://habr.com/ru/companies/yandex/articles/879078/
Платформа: iOS
👍1
👍62👎1
Grit - простой список дел и трекер привычек. Со временем автор планирует превратить это приложение в центр продуктивности с множеством социальных функций, таких как обмен информацией о прогрессе в виде красивых карточек.

Приложение построено на основе Material3, Room, Alarm Manager API, корутин, MVVM и Glance.

Grit на GitHub: https://github.com/shub39/Grit
Платформа: Android
⭐️: 117
👍1
Параллелизм в Android SQLite

В статье обсуждаются ограничения однопоточного доступа к базе данных по умолчанию и предлагаются методы повышения производительности за счет использования Write-Ahead Logging (WAL) и настройки диспетчеров корутин. Рекомендуется применять Dispatchers.IO.limitedParallelism() для управления параллельными запросами и рассмотреть возможность использования Room с подключенной версией SQLite для улучшения производительности. Подробности доступны по ссылке.

Статья: https://blog.p-y.wtf/parallelism-with-android-sqlite
Платформа: Android
👍1
This media is not supported in your browser
VIEW IN TELEGRAM
Создание интерактивных виджетов с помощью App Intents

В этой статье говорится про то, как App Intents позволяют улучшить взаимодействие с пользователем, предоставляя возможность выполнять действия непосредственно с главного экрана. Автор подробно описывает процесс настройки и интеграции App Intents в виджеты, а также делится примерами кода и практическими рекомендациями. Для iOS-разработчиков, стремящихся повысить интерактивность своих приложений, эта статья будет полезным ресурсом.

Статья: https://tiagohenriques.vercel.app/blog/interactive-widgets-using-app-intents
Платформа: iOS
👍1
Дешевые разработчики - до следующей программной катастрофы всего один неудачный найм

Я никогда не забуду совещание, на котором «оптимизация затрат» стала корпоративным трендом, означающим «давайте уволим наших архитекторов и наймем больше рабочих». Блестящего инженера, с которым я проработал много лет - из тех, кто мог отлаживать критические ошибки в ядре во сне, - выпроводили, а его команда получила в наследство свежего junior-сотрудника, только что выучившего React.

Это не единичный случай. Это эпидемия.

Статья: https://apptractor.ru/info/articles/deshevye-razrabotchiki.html
Платформа: разработка
2
Понимаем SwiftUI Preferences

Вы можете подумать, что Preferences в SwiftUI - это настройки пользователя или параметры конфигурации. Но это совсем не так. Механизм Preferences в SwiftUI используется для организации передачи данных от дочерних представлений к родительским. В статье подробно рассматривается, как Preferences позволяют дочерним представлениям сообщать информацию своим контейнерам, что особенно полезно при необходимости передачи данных вверх по иерархии представлений. Автор приводит примеры использования, такие как модификатор navigationTitle, и делится практическими рекомендациями по внедрению Preferences в собственные компоненты.

Статья: https://peterfriese.dev/blog/2025/swiftui-preferences-swift6/
Платформа: iOS
👍1
XMTP - крупнейшая и самая безопасная децентрализованная сеть обмена сообщениями. Xmtp-ios представляет собой Swift-реализацию клиента XMTP message API для использования в iOS-приложениях.

Используйте xmtp-ios для для отправки сообщений между блокчейн-аккаунтами, включая DM, уведомлений, анонсов и многого другого.

Xmtp-ios на GitHub: https://github.com/xmtp/xmtp-ios
Платформа: iOS
⭐️: 38
👍1
Развитие Android глазами разработчика

Довольно много времени прошло с 2007 года, когда Android стал доступен для разработчиков. С тех пор прошло почти 18 лет. За это время изменилось примерно все: железо стало мощнее, интернет быстрее, IDE умнее, а проекты сложнее. Предлагаю оглянуться назад и посмотреть, что же именно изменилось с тех пор для разработчиков.

Статья: https://habr.com/ru/companies/oleg-bunin/articles/879836/
Платформа: Android
1
Использование ChatGPT o3-mini и DeepSeek при создании iOS приложения “Страны Мира”

Раньше я отдавала предпочтение Clause 3.5 Sonnet при создании iOS приложений, прибегая к ChatGPT 4.o1 для решения отдельных проблем.

Но при разработке этого конкретного iOS приложения Clause 3.5 Sonnet оказался совершенно беспомощным при декодировании нестандартных JSON данных API Всемирного Банка, поставляющих информацию о странах, и пришлось обратиться за помощью к ChatGPT 4.o1, Gemini 2.0 Flash и ChatGPT 4.o-preview.

Статья: https://habr.com/ru/articles/880824/
Платформа: iOS
🔥2👍1
От Android к Multiplatform: дорожная карта

Погружаться в новую технологию очень интересно, особенно с перспективой консолидации кода разных платформ. Однако прежде чем представить эту многообещающую идею владельцам продуктов - «одна кодовая база для нескольких платформ», - важно понять, какой путь предстоит пройти. От первоначального планирования до первой строки многоплатформенного кода - переход может занять месяцы подготовки. В этой статье описывается реальный пример миграции большого проекта на KMP.

Статья: https://apptractor.ru/info/articles/ot-android-k-multiplatform-dorozhnaya-karta.html
Платформа: Android/кроссплатформа
1