AppFiles - Mobile Development
2K subscribers
2.55K photos
33 videos
8 files
3.43K links
Библиотеки, обучающие статьи, курсы и видео для (мобильных) разработчиков. Если есть вопросы - пишите @lbogolubov.
Download Telegram
This media is not supported in your browser
VIEW IN TELEGRAM
Яндекс проводит вечеринку для сообщества мобильных разработчиков — Yandex Summer Mobile Party!

12 июля приглашаем мобильных разработчиков на вечеринку — обсудим последние новости индустрии и хорошо проведём вечер с едой, коктейлями и музыкой. Приходите общаться с ребятами из Яндекса и знакомиться с сообществом.

Что вас ждёт:
— Lightning Talks про разработку и жизнь от мобильных разработчиков;
— Лекция от популяризатора физики Дмитрия Побединского;
— Настольные игры от Яндекса, зоны отдыха и летние коктейли.

Место проведения:
Плюс Дача в Парке Горького

В этот раз формат только оффлайн. Количество мест ограничено – ждём ваши заявки, и 10 июля вышлем приглашения на почту.
До встречи!

Программа и регистрация
Billboard - это модуль, позволяющий встраивать рекламные объявления в приложения, созданные инди-разработчиками. Его уникальная особенность заключается в том, что он показывает рекламу без использования мер слежения или нежелательных cookies. Таким образом, ваш пользователь все еще может раздражаться от рекламы, но не получает неприятных последствий, поэтому вы можете продавать отключение объявлений для вашего премиум-уровня. Поддерживает SwiftUI, можно использовать собственный источник рекламы и различные ее типы.

Billboard на GitHub: https://github.com/hiddevdploeg/Billboard
Платформа: iOS
⭐️: 346
3
.xcstrings в Xcode 15

Всё изменилось с приходом Xcode 15, где локализация и плюрализация строк были значительно улучшены. Теперь там один файл xcstrings. Это каталог, который хранит в себе все ключи и строки как для переводов на другие языки, так и для переводов для множественного числа. Важно отметить, что всё это умеет бэкпортиться на старые версии iOS путём разбиения xcstrings на .strings и .stringsdict. То есть всё равно под капотом используется старый формат, но мы, как разработчики, работаем уже с удобным для нас интерфейсом.

Статья: https://habr.com/ru/companies/cleverpumpkin/articles/746050/
Платформа: iOS
Цензурирование TextInputLayout как это сделано в паролях

Вы когда-нибудь задавались вопросом, как сделать текст внутри TextInputLayout закрытым и/или частично закрытым? Твист заключается в том, что цензурировать текст, не накладывая свойства "пароль" на его inputType, чтобы скрыть текст. Как насчет того, чтобы сначала установить его как цензурированный текст, а затем поместить его в TextInputLayout? Это может сработать, но потребуются дополнительные шаги, чтобы вернуться к оригиналу при выполнении процесса валидации. Тогда как?

Статья: https://medium.com/@fadhifatah_/textinputlayout-censoring-with-password-like-method-303b986f5364
Платформа: Android
Как создавать архитектуру Android-приложений: глубокое погружение в принципы

Существует множество советов о «правильном» способе проектирования программного обеспечения. Многие из них противоречат друг другу. Поэтому в этой статье я расскажу вам о принципах архитектуры, чтобы вы могли сами решить, что подходит для вашего приложения. Итак, эта статья о принципах, а не о правилах.

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

Перевод: https://apptractor.ru/arhitektura-android
Платформа: Android
👍1
Okio - это библиотека, которая дополняет java.io и java.nio, облегчая доступ, хранение и обработку данных. Она начиналась как компонент OkHttp, HTTP-клиента, включенного в Android. Библиотека хорошо проработана и готова к решению новых задач. Сделана Джейком Вортоном и Square. С ее помощью вы можете, например, читать текстовый файл строчка за строчкой, писать в файл, работать с разными кодировками, писать бинарные файлы, работать с сокетами, хэшировать данные и т.п.

Okio на GitHub: https://github.com/square/okio
Платформа: Android
⭐️: 8.4K
Please open Telegram to view this post
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
ScrollViewLoader - простая утилита, помогающая загружать содержимое в ScrollView в SwiftUI и организовывать бесконечные списки прокрутки. По умолчанию колбек срабатывает, когда расстояние до нижней части прокручиваемого содержимого составляет менее 50% от видимой высоты представления прокрутки. Впрочем, это можно изменить.

ScrollViewLoader на GitHub: https://github.com/gh123man/ScrollViewLoader
Платформа: iOS
⭐️: 11
SOLID в Swift. Простое объяснение с примерами для начинающих

Принципы SOLID — это набор пяти основных принципов, которые помогают разработчикам создавать более понятный, гибкий и поддерживаемый код. Так же знание этих принципов довольно часто спрашивают на собеседованиях. Давайте рассмотрим каждый из этих принципов с примерами нарушения и соблюдения на языке Swift.

Статья: https://habr.com/ru/articles/746410/
Платформа: iOS
Разбор тестового задания на позицию Android Developer

В данной статье я хотел бы разобрать тестовое задание на позицию Android developer и продемонстрировать свой способ решения.

Статья: https://habr.com/ru/articles/746146/
Платформа: Android
👍1
InnerTune - открытый клиент для проигрывания музыки с YouTube. Сделан в Material 3, умеет проигрывать музыку без рекламы, воспроизводить в фоне, искать, управлять библиотеками, кешировать и играть в офлайне, нормализовать громкость и прочее.

InnerTune на GitHub: https://github.com/z-huang/InnerTune
Платформа: Android
⭐️: 1.5K
👍2
Анализ приложений Threads

1. Android-приложение Threads
2. Сходство с приложением Instagram
3. iOS-приложение Threads
4. Время запуска Threads
5. Итог

Статья: https://apptractor.ru/develop/analiz-prilozheniy-threads.html
Платформа: iOS/Android
🔥1
Queryable - открытое приложения для iOS, которое использует модель CLIP (Contrastive Language-Image Pre-Training) для автономного поиска в альбоме Фотографий.

В отличие от функции поиска с распознаванием объектов, встроенной в галерею iOS, Queryable позволяет использовать для поиска в галерее фразы на естественном языке, например "коричневая собака сидит на скамейке". Приложение работает в автономном режиме, гарантируя, что конфиденциальность вашего альбома не будет передана никому, включая Apple/Google.

Queryable на GitHub: https://github.com/mazzzystar/Queryable
Платформа: iOS
⭐️: 989
Как я перестал волноваться и полюбил ошибки в Kotlin корутинах: Мифы обработки ошибок в корутинах

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

Статья: https://habr.com/ru/articles/747146/
Платформа: Android
👍1
Модуляризация мобильных приложений в масштабе

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

Статья: https://engineering.teknasyon.com/modularization-of-mobile-applications-at-scale-df57815ff19a
Платформа: разработка

Поставьте 👍, если хотите эту статью на русском.
👍61
Используем атрибут @backDeployed для расширения доступности функций

TLDR: для приложений практически бесполезно, может пригодиться тем, кто делает SDK.

В SE 376 Function Back Deployment атрибут был представлен в качестве предложения, после чего он был впервые реализован в Swift 5.8. Многие разработчики ожидали, что эта новая возможность позволит Apple осуществлять обратное развертывание многих функций SwiftUI, однако она оказалась недостаточно гибкой. Давайте погрузимся в эту тему!

Статья: https://apptractor.ru/info/articles/backdeployed.html
Платформа: iOS
AppFiles - Mobile Development
Reader - мультиплатформенный (iOS и Android) RSS-ридер, сделанный на Kotlin Mutliplatform и Compose Multiplatform. Кроме них из большого есть Ktor, SQLDelight, Decompose и Kotlin-inject. Reader на GitHub: https://github.com/msasikanth/reader Платформа: кроссплатформа…
Redwood - это библиотека для создания реактивных пользовательских интерфейсов для Android, iOS и веб на языке Kotlin. Redwood объединяет в себе компилятор Compose, дизайн систему и набор экранов, специфичных для конкретной платформы. Redwood - это библиотека, а не фреймворк. Она предназначена для постепенного внедрения в существующий Android-проект с минимальным риском. Использование Redwood в iOS или веб-приложениях более рискованно. В целом авторы говоря, что в настоящее время Redwood находится в стадии разработки и не готов к использованию. Однако вы уже можете протестировать сам подход.

Redwood на GitHub: https://github.com/cashapp/redwood
Платформа: кроссплатформа
⭐️: 1.1K
1
Храним краску с умом: как организовать ресурсы в многомодульном проекте

Привет, меня зовут Никита Чернобрисов, и я делаю Android-приложения в Doubletapp. Полтора года назад мы начали работать над приложением «Яндекс Путешествий» — само приложение доступно в Play Store, а про кейс подробно можно прочитать тут. При старте у нас возникло много архитектурных холиваров, в частности о том, как хранить ресурсы и пользоваться ими. И, как это и заведено, первые решения оказались неудачными. Я расскажу вам, дорогие читатели, удары каких граблей оставили больше следов и к чему мы пришли.

Статья: https://habr.com/ru/companies/doubletapp/articles/745606/
Платформа: Android
AppFiles - Mobile Development
Модуляризация мобильных приложений в масштабе Преобразование монолитного приложения в модульную архитектуру - это путь к масштабируемости, и очень важно установить набор правил для построения масштабируемого проекта. Эти правила стали нашим фонарем, позволяющим…
Модуляризация мобильных приложений в масштабе

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

• Модули функций
• Модули координаторов
• Модули плагинов
• Модули библиотек
• Модули запуска (лаунчеры)

Перевод: https://apptractor.ru/info/articles/modulyarizatsiya-mobilnyh-prilozheniy-v-masshtabe.html
Платформа: вообще Android, но в целом разработка