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

В этой статье мы рассмотрим процесс интеграции Face ID в приложения для iOS, чтобы повысить безопасность и удобство использования.

Статья: https://apptractor.ru/info/articles/realizuem-face-id-autentifikatsiyu-v-ios-prilozhenii.html
Платформа: iOS
Paralayout - это набор простых, полезных и понятных утилит, которые обеспечивают пиксельно идеальную верстку в iOS. С их помощью вы просто и быстро сможете определять размеры, взаимное отношение и распределение представлений на экране.

Paralayout на GitHub: https://github.com/square/Paralayout
Платформа: iOS
⭐️: 786
React Native полностью переделан

После 6 лет разработки команда React Native представила полностью переписанную архитектуру фреймворка (0.76) – самое значительное обновление с момента создания React Native. Это результат масштабной работы над улучшением производительности, стабильности и возможностей платформы.

Статья: https://habr.com/ru/articles/854348/
Платформа: кроссплатформенная разработка
Как написать Android приложение, которое не будет стыдно положить в портфолио. Гайд для новичков в Android разработке

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

Статья: https://habr.com/ru/articles/854450/
Платформа: Android
Поиск регрессий в Compose

В этой статье мы создадим приложение, добавим регрессии и сравним версию до и после с помощью Perfetto и Diffetto.

Статья: https://apptractor.ru/info/articles/poisk-regressiy-v-compose.html
Платформа: Android
Compose Unstyled - нестандартные компоненты для Jetpack Compose и Compose Multiplatform, которые вы можете настроить по своему усмотрению. Есть Bottom Sheet, диалоги, выпадающие меню, иконки, облапсть со скроллингом, меню с кнопками. Реализована полная доступность, работают на декстопах, Web (Js/WASM), Android, iOS и любой другой платформы, на которой может работать Compose.

Compose Unstyled на GitHub: https://github.com/composablehorizons/compose-unstyled
Платформа: Android/кроссплатформа
⭐️: 362
Делаем в SwiftUI размытие экрана при переключении задачи

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

Статья: https://apptractor.ru/info/articles/delaem-v-swiftui-razmytie-ekrana-pri-pereklyuchenii-zadachi.html
Платформа: iOS
Главный метод Android-приложения

Я Саша, старший Android-разработчик в Авито, ранее работал в Яндексе и Kaspersky. Пишу о разработке и всём, что с ней связано, в своем телеграм-канале. Сейчас поговорим немного про главный метод и про процесс Android-приложения.

Если вы когда-нибудь писали «Hello World» на Java (или любом другом C-подобном языке), то наверняка делали это в статическом методе main. Этот метод вызывается в JVM и является точкой входа любой Java программы.
public static void main(String[] args)

Но при разработке приложений для Android вы возможно, как и я до недавнего времени, ни разу метод main не встречали. Создается ощущение, что его вообще не существует, а при нажатии на иконку в лаунчере наши Application и Activity создаются какими-то волшебными гномами, спрятанными в устройстве.

Статья: https://habr.com/ru/articles/854726/
Платформа: Android
Geometrize - библиотека Swift для воссоздания изображений в виде геометрических примитивов.

Geometrize на GitHub: https://github.com/valeriyvan/swift-geometrize
Платформа: iOS
⭐️: 17
Лучшие клавиатуры 2024

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

Статья: https://devnotebooks.ru/best-keyboard-2024/
Платформа: устройства
Задачи с собеседований: Leetcode — Наибольший общий префикс

Напишите функцию для поиска самой длинной строки с общим префиксом среди массива строк.

Если общего префикса нет, верните пустую строку.

Пример:

Ввод: strs = [«flower»,»flow»,»flight»]
Вывод: «fl»

Пример:

Вход: strs = [«dog»,»racecar»,»car»]
Выходные данные: «»
Пояснения: среди входных строк нет общего префикса.

Статья: https://apptractor.ru/develop/coding/zadachi-s-sobesedovaniy-leetcode-naibolshiy-obschiy-prefiks.html
Платформа: программирование
👍3
FilmSimulator - это кроссплатформенное мобильное приложение, разработанное с использованием Kotlin Multiplatform и Compose UI Multiplatform. Оно работает на Android и iOS и позволяет пользователям применять различные LUT (Look-Up Tables) к своим изображениям, создавая уникальную эстетику, напоминающую классические стили кино. Технологический стек: MVVM, Compose UI, Material3, Compose Resources, FFMPEG-Kit, SQLDelight, Ktor, Voyager Navigation, Koin DI, Peekaboo Image Picker, Okio и т.д.

FilmSimulator на GitHub: https://github.com/YahiaAngelo/Film-Simulator
Платформа: Android/кроссплатформа
⭐️: 28
1
Красота системы типов Kotlin

С Any в качестве верхнего типа, Nothing в качестве нижнего типа и Optional в стороне, я надеюсь, что вы так же найдете систему типов Kotlin приятной и красивой.

Статья: https://apptractor.ru/info/articles/krasota-sistemy-tipov-kotlin.html
Платформа: Android
👍3🥴2
Малоизвестные фичи SwiftUI

Я уже 2 месяца прохожу обучение в онлайн‑школе и у нас на этой неделе был открытый урок, нужно было подготовить доклад на тему «Малоизвестные фичи или особенности языка Swift»

Так вот — я решила погуглить этот вопрос, подготовилась, написала код. Но когда дело дошло до самого выступления, оказалось, что говорить ртом — это не так‑то и просто. Да и в целом выступать, даже в Zoom.

Тем не менее, поделюсь с вами маленькими фишечками, которые я нашла. Уровень легкий, в отличие от меня там ребята подготовили нормальные доклады про SPM и пр. Я же решила начать с простых вещей, которые, тем не менее, мне были неизвестны. Надеюсь кому‑то тоже окажется полезным.

Статья: https://habr.com/ru/articles/855484/
Платформа: iOS
👍1
Внедрение электронной цифровой подписи в мобильное приложение на Android

Сегодня мы хотим поделиться решением интересной и новой для нас задачи: нужно встроить поддержу ЭЦП в мобильное приложение заказчика.

Статья: https://habr.com/ru/companies/ppr/articles/855314/
Платформа: Android
👍21
Как я писал суперкастомизированное Android-приложение в 2024 году

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

Статья: https://habr.com/ru/companies/ruvds/articles/851256/
Платформа: Android
👍5
Ultraviolence - декларативный фреймворк для рендеринга Metal в Swift.

Metal - невероятно мощный API, но имеет репутацию сложного в работе. В основном потому, что это низкоуровневый API, требующий кучи шаблонного кода для того, чтобы запустить что-то базовое. С другой стороны, такие фреймворки, как SceneKit и RealityKit, предлагают высокоуровневые абстракции, которые упрощают 3D-рендеринг, но могут быть ограничены, когда вам нужно больше контроля.

Ultraviolence (пока это только рабочее название) будет стремиться найти баланс между этими крайностями. Он предоставит декларативный API, вдохновленный SwiftUI, который будет прост в использовании, но при этом даст вам низкоуровневый контроль, когда это необходимо.

Ultraviolence на GitHub: https://github.com/schwa/Ultraviolence
Платформа: iOS
⭐️: 22
1
Диалог — часть навигации или нет?

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

Одной из обсуждаемых тем стало: «Следует ли диалог отображаться через навигацию и сохраняться как часть истории пользовательской навигации?» Мой ответ: «Это зависит от того, что именно мы подразумеваем под диалогом».

Меня зовут Кирилл Розов, и в этой статье я расскажу, что я понимаю под диалогом в Material Design и как, на мой взгляд, стоит работать с ними в системе навигации.

Статья: https://habr.com/ru/articles/854988/
Платформа: Android
👍1
Как использовать URLSession с Async/Await для сетевых запросов в Swift

URLSession позволяет выполнять сетевые запросы и становится еще более мощным благодаря API async/await. Вы можете запросить данные с целевого URL и спарсить их в декодированную структуру перед отображением в представлении.

Популярные фреймворки, такие как Alamofire, стремятся упростить выполнение запросов, но для многих приложений можно обойтись и без сторонних решений. В этой статье мы расскажем об основах выполнения API-запросов и декодирования JSON-данных с помощью Swift Concurrency.

Статья: https://apptractor.ru/info/articles/kak-ispolzovat-urlsession-s-async-await-dlya-setevyh-zaprosov-v-swift.html
Платформа: iOS
Talaiot - это расширяемая библиотека, предназначенная для команд, использующих систему сборки Gradle. Она записывает продолжительность сборок/задач, помогая понять проблемы и обнаружить узкие места. Для каждой записи она добавляет дополнительную информацию, определяемую стандартными или пользовательскими метриками.

Talaiot совместим с различными системами, такими как InfluxDb, Elasticsearch или RethinkDb. Для работы с Talaiot необходимо использовать плагины. Вы можете использовать стандартные, включающие всю функциональность, или, если у вас есть специфические требования, создать свой плагин.

Talaiot на GitHub: https://github.com/cdsap/Talaiot
Платформа: Android
⭐️: 588
👍2