AppFiles - Mobile Development
1.99K subscribers
2.53K photos
33 videos
8 files
3.41K links
Библиотеки, обучающие статьи, курсы и видео для (мобильных) разработчиков. Если есть вопросы - пишите @lbogolubov.
Download Telegram
TextWriter - анимированное появление текста. Зачем такое может понадобиться на вскидку трудно представить, но выглядит, надо признать, очень красиво.

Исходники: https://github.com/sarnavakonar/TextWriter
Prism - приложение с обоями для Android, написанное на Dart и использующее Flutter. Обои берет с WallHaven и Pexels, поддерживает темный режим, данные хранит внутри и в Firebase.

Исходники: https://github.com/Hash-Studios/Prism
Передача файлов между macOS и Android или любыми другими MTP-устройствами всегда была трудным делом. Есть несколько приложений для передачи файлов, которые доступны онлайн, но большинство из них либо слишком дороги, либо обладают плохим интерфейсом/UX. Официальное приложение Android File Transfer для macOS от Google сделано с ошибками и неисчислимыми ограничениями. В большинстве других приложений для передачи файлов используется протокол WiFi или ADB, что чрезвычайно трудоемко.

Это простое приложение организует передачу файлов с macOS на устройства Android/MTP. Исходники его доступны на GitHub: https://github.com/ganeshrvel/openmtp
WWDC20 завершилась. Что появилось нового в этом году для юнит-тестирования? Давайте посмотрим на изменения, внесенные Apple в бета-версию Xcode 12, а также некоторые изменения в текущей версии Xcode.

Видео: https://www.youtube.com/watch?v=qKqFMBCxDV0

Статья: https://qualitycoding.org/wwdc20-unit-testing/
У Apple обновились две книги - Develop in Swift Fundamentals и Develop in Swift Explorations. Обе теперь ориентированы на Xcode 11, обе посвящены разработке на языке Swift, обе бесплатны. Первая больше погружена в разработку приложений, вторая больше просто о влиянии программирования на жизнь и решению повседневных задач.

Apple Education: https://books.apple.com/us/author/apple-education/id939801385
Можно многое сделать, пока Gradle завершит сборку проекта - жениться, научиться летать на самолете, собрать “Тысячелетнего сокола” из LEGO… Но его можно ускорить. Эта статья посвящена оптимизации скорости сборки Android-проектов.

Статья: https://www.crazylegend.dev/2020/07/optimize-build-speeds-for-your-android.html
Diaguard - открытое приложение для людей с диабетом. Помогает вести дневник и отслеживать уровень сахара в крови.

Исходники: https://github.com/Faltenreich/Diaguard

Приложение: https://play.google.com/store/apps/details?id=com.faltenreich.diaguard
Руководство по созданию iOS-приложения, умеющего распознавать дорожные знаки. Оно основано на собственном сервисе MakeML, но подход применим и ко всем остальным подобным платформам, например, к тому же CreateML.

Статья: https://makeml.app/road-signs-detection-tutorial
This media is not supported in your browser
VIEW IN TELEGRAM
SortableTableView - TableView для Android с возможностью сортировки по разным столбцам. Интересна даже не сама таблица, а монетизация open source проекта - автор предлагает PRO-версию с дополнительным функционалом (поиск, пейджинг, документация! и т.п.) за 15 долларов.

Исходники: https://github.com/ISchwarz23/SortableTableView
Понимание того, что делают пользователи, позволит вашим приложениям интуитивно адаптироваться к этим действиям. А для некоторых приложений вообще может быть очень полезно определять, когда пользователь начинает или останавливает определенную активность. Например, фитнес-приложение может запускать музыку в фоновом режиме, если пользователь начинает бег, или оно может автоматически начинать рассчитывать количество сожженных калорий с этого момента.

В этой статье вы узнаете, как обнаруживать и распознавать действия в Android - таким образом, ваше приложение будет лучше взаимодействовать с пользователем и сможет предоставлять настраиваемые возможности.

Для этого используется Activity Recognition Transition API. Эта библиотека считывает данные с доступных датчиков устройства (гироскоп, акселерометр и т.д.) для выявления изменений в активности пользователя.

Статья: https://heartbeat.fritz.ai/detect-users-activity-in-android-using-activity-transition-api-f718c844efb2
This media is not supported in your browser
VIEW IN TELEGRAM
PullUpController - выдвижное меню с несколькими точками фиксации, как в оригинальных Картах на iOS.

Исходники: https://github.com/MarioIannotta/PullUpController
WWDC 2020 давно закончиалсь, а мы продолжаем разгребать новинки конференции. В этой статье 10 примеров кода (5 строчек максимум!), показывающих реализацию каких-либо новых функций в iOS 14. Это:

1. SKOverlay - оверлей с предложением установить приложение.
2. Configurations - API для определения контента и вида View и ячеек.
3. Список в Collection View - в iOS 14 коллекция может быть таблицей.
4. Точная Location - запрос прав на точное определение координат в Core Location.
5. Запрос на отслеживание - теперь необходимо запрашивать права.
6. Действия для контролов - нет больше selector, есть action.
7. Меню из кнопок - каждая кнопка теперь может просто показывать меню.
8. UIColorPickerViewController - простой выбор цвета.
9. UIPageControl и UIDatePicker - обновленные элементы.
10. Mac идиома - для понимания того, что приложение работает на Mac.

Весь код: https://medium.com/swlh/10-code-snippets-from-wwdc20-5dba158e2903
AndroidBottomBar - легковесная красивая (с индикатором и анимациями) нижняя панель навигации.

Библиотека: https://github.com/skydoves/AndroidBottomBar
В этом видео рассказывается о том, как создать стильное и настраиваемое выдвигающееся боковое меню с помощью SwiftUI.

Смотрите: https://www.youtube.com/watch?v=QZzgM99m7Ak
Translate-SwiftUI - воссоздание приложения-переводчика из iOS 14 на SwiftUI.

Статья о разработке: https://thecreativedeveloper.substack.com/p/recreate-the-translate-app-part-1

Исходники: https://github.com/vijaywargiya/Translate-SwiftUI
При разработке приложения для Android важно планировать архитектуру проекта. Это позволит создавать сложные, надежные, качественные, простые в обслуживании приложения.

В этой статье - Архитектура Android: Hilt, MVVM, Kotlin Coroutines, Live Data, Room и Retrofit (ft. Rick and Morty) - свой подход к использованию рекомендуемых практик в разработке Android.

Статья: https://itnext.io/android-architecture-hilt-mvvm-kotlin-coroutines-live-data-room-and-retrofit-ft-8b746cab4a06
Tabler Icons - 558 бесплатных SVG-иконок. Можно настраивать размер, толщину линий, цвет, темный или светлый фон.

Сайт: https://tablericons.com/
Пример поиска и устранения проблемы долгого старта приложения. Оно - классифайд, смесь Swift и устаревшего кода Objective-C, более 4000 файлов, распределенных в 8 репозиториях (основное приложение и 7 внутренних библиотек), 30+ сторонних библиотек, связанных с помощью Cocoapods.

Спойлер: дело всего в одной строчке.

Статья: https://medium.com/flawless-app-stories/optimizing-app-launch-detecting-performance-issues-using-instruments-bca421da43b
Приложение для NY Times, призванное показать возможности JSoup и современные инструменты разработки Android-приложений. Внутри Kotlin, JSoup (открытый Java HTML парсер), корутины, Android Architecture Components - LiveData, ViewModel, Room, Jetpack Navigation.

Исходники: https://github.com/TheCodeMonks/NYTimes-App
Streamoji - библиотека рендеринга эмодзи для iOS. Поддерживает GIF, изображения и Unicode. Загружает их из интернета или из локальных ресурсов. Есть кеширование для ускорения.

Исходники: https://github.com/getstream/streamoji