AppFiles - Mobile Development
2.01K subscribers
2.57K photos
33 videos
8 files
3.45K links
Библиотеки, обучающие статьи, курсы и видео для (мобильных) разработчиков. Если есть вопросы - пишите @lbogolubov.
Download Telegram
RemoteCam - камера для Android, транслируемая на рабочий стол (аналог Droidcam). Бесплатно, без рекламы, с открытым исходным кодом. Приложение позволяет пользователю выбрать сенсор и разрешение. После этого оно захватывает каждый кадр в формате JPEG и передает его на подключенный http-клиент в виде потока MJPEG.

RemoteCam на GitHub: https://github.com/Ruddle/RemoteCam
Платформа: Android
⭐️: 239
Не дадим Windows Phone умереть! Как я написал свои клиенты VK, YouTube для Nokia Lumia

Сегодня вы узнаете о моей мотивации привносить жизнь старым смартфонам, о тонкостях разработки мобильных приложений, чем Windiows Phone был на голову выше Android в техническом плане и о том, почему провал Windows Phone — одна из самых больших потерь мобильного рынка. Интересно?

Статья: https://habr.com/ru/companies/timeweb/articles/757050/
Платформа: разработка
💩5
Technotes 3154: SwiftUI navigation split view

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

Статья: https://developer.apple.com/documentation/technotes/tn3154-adopting-swiftui-navigation-split-view
Платформа: iOS
Что такое Kotlin Symbol Processing (KSP)

В Dagger появилась поддержка KSP и самое время разобраться, что же это такое. Kotlin Symbol Processing (KSP) — это упрощенный API для создания плагинов к компиляторам, который позволяет использовать возможности Kotlin, сохраняя при этом минимальную кривую обучения. По сравнению с KAPT процессоры аннотаций, использующие KSP, могут работать в 2 раза быстрее.

Статья: https://apptractor.ru/info/articles/ksp.html
Платформа: Android
2
Инженеры AvitoTech разработали инструмент для ускорения автотестов мобильных приложений. Знакомьтесь, Emcee.

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

Можно попробовать бесплатно или сразу разогнать тестирование на полную мощность. Больше подробностей — в официальном канале Emcee.

Подписывайтесь!

Реклама ООО "Авито Тех", ИНН 9710089440
erid: LdtCK4J7b
Продолжаем осваивать StoreKit 2

Осваиваем StoreKit 2
ProductView и StoreView в SwiftUI
SubscriptionStoreView в SwiftUI

Платформа: iOS
👍1
Crush - библиотека, расширяющая возможности CoreData за счет обеспечения большей безопасности типов и интуитивно понятной функциональности.

Crush на GitHub: https://github.com/ezoushen/Crush
Платформа: iOS
⭐️: 24
Видео и подкасты за неделю:

(iOS Ru) Простая анимация для всплывающего окна
(iOS Ru) Как мы делали новую iOS-камеру ВКонтакте и VK Клипов
(iOS Ru) Показываем красивое с помощью видеоредактора в VK Клипах на iOS
(iOS En) SwiftUI Animated Tab Icons - Animated SF Symbols
(iOS En) Build Switcher: Local Build Caching for Xcode
(iOS En) How to Save and Manage Data with Core Data in Swift
(iOS En) Using @_exported attribute for Simplified Module Imports
(iOS En) Enhancements to ScrollView in iOS 17
(And Ru) Кодогенерация. KAPT. KSP. Manual DI
(And Ru) Android-разработчик: Middle за 1 год в Казахстане
(And En) Full Guide to Manual Dependency Injection + Removing Dagger
(And En) How to create an advanced text validation with Combine
(And En) Using the Gradle Version Catalog in Android projects
(Dev Ru) VR: как это работает
(Dev Ru) Podlodka #334: стартап-акселераторы
(Dev Ru) Мобильные виджеты
(Dev Ru) 5 проектов выходного дня, которые значительно повысят ваши навыки кодинга
(Dev Ru) Почему стоит вкладываться в опенсорс
(Mrk Ru) Как правильно выстроить монетизацию в первую сессию пользователя

Посмотрели/выпустили какое-то другое интересное видео? Отправьте боту🧑🏻‍💻
MPV - готовый видео-плеер для Android, основанный на libmpv. В основных фичах - аппаратное и программное декодирование видео, поиск, управление громкостью  на основе жестов, продвинутая обработка видео (интерполяция, масштабирование), проигрывание сетевых стримов, картинка в картинке, фоновое воспроизведение. MPV не является библиотекой, которую вы можете встроить в свое приложение, но примером для вдохновения и решения нужных задач.

MPV for Android на GitHub: https://github.com/mpv-android/mpv-android
Платформа: Android
⭐️: 1.5K
Использование Compose для ТВ-версии приложения Иви

Недавно мы успешно выпустили версию для Android TV, используя инновационный инструмент — Jetpack Compose. Так как библиотека Compose для ТВ еще находится в альфа-версии, мы хотим поделиться своим опытом, рассказать о трудностях, с которыми столкнулись, и обратиться к вопросу: стоит ли использовать Jetpack Compose, особенно для ТВ-приложений?

Статья: https://habr.com/ru/companies/ivi/articles/757550/
Платформа: Android
👍1
AppFlowy - открытая альтернатива Notion, системы управления проектами. Написана система на Flutter и Rust, а значит работает под любой платформой и вполне поддается кастомизации. Кроме того, хранит все данные на ваших собственных серверах, а значит вся информация находится полностью под вашим контролем.

AppFlowy на GitHub: https://github.com/AppFlowy-IO/appflowy
Сайт: https://appflowy.io/
Платформа: кроссплатформа
⭐️: 37.9K
Лучшие практики обработки ошибок в Kotlin

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

Kotlin обладает основными возможностями обработки ошибок, такими как Null Safety, let, оператор Элвис (?:), поздняя инициализация, безопасное приведение с помощью оператора 'as?'. Другие продвинутые техники обработки ошибок в Kotlin мы рассмотрим ниже.

Статья: https://apptractor.ru/info/articles/luchshie-praktiki-obrabotki-oshibok-v-kotlin.html
Платформа: Android
OpenAPI - это открытая спецификация для документирования HTTP API. Swift OpenAPI Generator - это плагин от Apple, который позволяет сразу генерировать “церемониальный” код, необходимый для выполнения вызовов API или реализации API сервера.

Swift OpenAPI Generator на GitHub: https://github.com/apple/swift-openapi-generator
Платформа: iOS
⭐️: 602
Две стратегии скриншот-тестирования в мобильных проектах

Инвестирование в скриншот-тесты (в первую очередь через дизайн-систему) позволяет проекту ловить больше визуальных регрессий в наборе тестов при одновременном сокращении количества интеграционных тестов в долгосрочной перспективе.

Статья: https://apptractor.ru/info/articles/dve-strategii-skrinshot-testirovaniya-v-mobilnyh-proektah.html
Платформа: тестирование
🔥1
Поваренная книга SwiftUI: cоздание и предварительный просмотр представления SwiftUI

Добро пожаловать в раздел «Начало работы с SwiftUI»! Здесь начинается ваш путь к тому, чтобы стать мастером SwiftUI.

Мы начнем с основ, изучим, как создать и просмотреть представление SwiftUI. Затем мы погрузимся в основополагающую концепцию SwiftUI — представления (View) и и их иерархия, где вы поймете структуру SwiftUI-приложений и то, как представления располагаются слоями.

Статья: https://apptractor.ru/info/articles/povarennaya-kniga-swiftui-cozdanie-i-predvaritelnyy-prosmotr-predstavleniya-swiftui.html
Платформа: iOS
Meeting Room Compose - приложение для организации видеоконференций (переговорных комнат) в режиме реального времени, созданное с помощью Jetpack Compose и Stream Video SDK for Compose и напоминающее по дизайну Google Meet.

Основная задача этого репозитория - продемонстрировать следующее:

• Полная реализация компонентов пользовательского интерфейса с использованием Jetpack Compose.
• Разработка приложения для митингов в реальном времени с бесшовным пользовательским интерфейсом, выполненным в стиле Google Meet путем настройки CallContent и ParticipantVideo.
• Создание экрана лобби, обеспечивающего управление физическими устройствами перед входом в переговорную комнату, включая переключение камеры/микрофона и переключение вида камеры.
• Иллюстрация подключения нескольких участников с различных платформ, таких как Web и Android.

Meeting Room Compose на GitHub: https://github.com/GetStream/meeting-room-compose
Платформа: Android
⭐️: 91
Как публиковать и воспроизводить видео на Android с помощью опенсорс-библиотеки и стриминговой платформы EdgeЦентр

Сделать собственный сервис, где пользователи могли бы смотреть готовые видео на смартфонах в хорошем качестве, с адаптивным битрейтом кажется довольно сложной и дорогой задачей. Но на самом деле реализовать публикацию и проигрывание VOD (Video on Demand, видео по запросу) — не так уж и сложно, а в качестве составных частей можно использовать опенсорс.

Меня зовут Денис Филиппов, я руководитель отдела разработки стриминговой платформы EdgeЦентр. Сегодня расскажу вам, как с помощью нашей платформы и опенсорс-библиотеки tus-android-client сделать приложение, где пользователи смогут смотреть видео на Android.

Статья: https://habr.com/ru/companies/edgecenter/articles/759180/
Платформа: Android