ar
Feedback
AppFiles - Mobile Development

AppFiles - Mobile Development

الذهاب إلى القناة على Telegram

Библиотеки, обучающие статьи, курсы и видео для (мобильных) разработчиков. Если есть вопросы - пишите @lbogolubov.

إظهار المزيد
2 163
المشتركون
-224 ساعات
-17 أيام
لا توجد بيانات30 أيام
أرشيف المشاركات
Меняем изображений у кнопки SwiftUI при нажатии Как изменить изображение, которое показывает кнопка SwiftUI, во время нажатия
Меняем изображений у кнопки SwiftUI при нажатии Как изменить изображение, которое показывает кнопка SwiftUI, во время нажатия пользователем? В этой статьи простой код, который меняет иконку при нажатии. Статья: https://apptractor.ru/info/articles/menyaem-izobrazheniy-u-knopki-swiftui-pri-nazhatii.html Платформа: iOS

Будущее за адаптивностью: изменения в API ориентации и изменения размеров в Android 16 Начиная с Android 16 постепенно отменя
Будущее за адаптивностью: изменения в API ориентации и изменения размеров в Android 16 Начиная с Android 16 постепенно отменяются атрибуты манифеста и API, используемые для ограничения ориентации и изменения размера приложения, что позволит улучшить пользовательский опыт для многих приложений на разных устройствах. Статья: https://apptractor.ru/info/articles/buduschee-za-adaptivnostyu-izmeneniya-v-api-orientatsii-i-izmeneniya-razmerov-v-android-16.html Платформа: Android

Нюансы разработки PWA для Банка Санкт-Петербург от первого лица Поддержка PWA в браузерах определенно развивается. Еще два го
Нюансы разработки PWA для Банка Санкт-Петербург от первого лица Поддержка PWA в браузерах определенно развивается. Еще два года назад реализовать подобное приложение было бы сложно. Сейчас у нас все получилось. Но работы пришлось проделать много - было множество реквестов, что что-то хорошо работает на iOS, но не работает под Android, и наоборот. Мы же старались решать все эти проблемы так, чтобы код на обеих платформах был одинаковый - не хотели уходить от унификации. В целом это интересный опыт, который для нас еще не закончился. Статья: https://habr.com/ru/companies/liptsoft/articles/877020/ Платформа: кроссплатформа

Kompose Country Code Picker - это библиотека Jetpack Compose на основе Material 3, которая предоставляет возможность выбора к
Kompose Country Code Picker - это библиотека Jetpack Compose на основе Material 3, которая предоставляет возможность выбора кода страны в приложениях для Android. Kompose Country Code Picker на GitHub: https://github.com/joelkanyi/kompose-country-code-picker Платформа: Android ⭐️: 181

Как Android управляет маленькой памятью: Kswapd и LMK Будучи мобильной операционной системой, Android приходится иметь дело с
Как Android управляет маленькой памятью: Kswapd и LMK Будучи мобильной операционной системой, Android приходится иметь дело с ограниченными ресурсами памяти. ОС тщательно следит за использованием памяти и принимает меры по ее освобождению, когда ее становится мало. В этой статье мы рассмотрим, как Android распределяет память и реагирует на ситуации с нехваткой памяти. Платформа Android работает на основе принципа, что свободная память - это зря потраченная память. Учитывая это правило, ОС Android всегда старается выделить всю доступную память. Это очень полезная и удивительная техника. Так как система может хранить в памяти недавно использовавшиеся приложения, и пользователь может быстро переключиться на них без задержек при запуске. В любом случае, память нужна системе, и Android OS использует ее эффективно. Но что делать, если вся память занята? Как открыть больше приложений? Статья: https://apptractor.ru/info/articles/kak-android-upravlyaet-malenkoy-pamyatyu-kswapd-i-lmk.html Платформа: Android

Погружение в мир Lint'a в Android-проекте (часть 2) Продолжим рассматривать различные нюансы статического анализа с помощью L
Погружение в мир Lint'a в Android-проекте (часть 2) Продолжим рассматривать различные нюансы статического анализа с помощью Lint. Опираться будем на предыдущую статью. С момента её публикации прошло много времени, за которое вышло несколько значимых обновлений Android Gradle Plugin (а с ним и всех артефактов линтера), а также вторая версия Kotlin с новым компилятором. Вкратце рассмотрим наиболее заметные для нас изменения с небольшими примерами. Кроме того, удалось найти что-то похожее на полноценную документацию по lint (правда, редко обновляющуюся), наиболее интересные моменты оттуда тоже рассмотрим. Статья: https://habr.com/ru/companies/domclick/articles/870650/ (первая часть) Платформа: Android

Смешивание цветов в SwiftUI В последней версии SwiftUI компания Apple представила новую функцию - смешивание цветов. Это функ
Смешивание цветов в SwiftUI В последней версии SwiftUI компания Apple представила новую функцию - смешивание цветов. Это функция, которая позволяет выполнять различные творческие задачи. В этой статье мы рассмотрим смешивание цветов в SwiftUI и изучим возможности его применения. Статья: https://apptractor.ru/info/articles/smeshivanie-tsvetov-v-swiftui.html Платформа: iOS

qBitControl - удаленный клиент для qBittorrent. С его помощью вы можете добавлять торренты через .torrent-файлы или magnet-сс
qBitControl - удаленный клиент для qBittorrent. С его помощью вы можете добавлять торренты через .torrent-файлы или magnet-ссылки, следить за ходом загрузки, управлять торрентами - делать паузу/возобновление, просматривать и управлять торрент-файлами, получать статистику в реальном времени. qBitControl на GitHub: https://github.com/Michael-128/qBitControl Платформа: iOS ⭐️: 226

Интеграция Docker в Android разработку Если говорить о Docker в контексте Android-разработки, то чаще всего кейсы его использ
Интеграция Docker в Android разработку Если говорить о Docker в контексте Android-разработки, то чаще всего кейсы его использования встречаются в тестировании и развертывании приложений. Docker позволяет создать изолированную среду, в которой можно запустить приложение вместе со всеми его зависимостями, что очень ценится в тестировании. Ключевым фактором является то, что внесенные изменения, никак не влияют на другие контейнеры или систему. Конвейеризация же только ускоряет эти и другие процессы. Звучит непросто? Но на самом же деле, в этом нет ничего сложного. Чтобы в этом убедиться, напишем небольшой Pipeline для Android проекта. Статья: https://habr.com/ru/articles/875940/ Платформа: Android

Вызов защищенного API из iOS-приложения на Swift Пошаговое руководство по использованию OAuth 2.0 при доступе к защищенным AP
Вызов защищенного API из iOS-приложения на Swift Пошаговое руководство по использованию OAuth 2.0 при доступе к защищенным API из iOS‑приложения на Swift с Auth0. Статья: https://habr.com/ru/companies/otus/articles/875968/ Платформа: iOS

CuteMusic - это простой, легкий и открытый музыкальный плеер для Android, написанный на Jetpack Compose & Media3. Фичи: воспр
CuteMusic - это простой, легкий и открытый музыкальный плеер для Android, написанный на Jetpack Compose & Media3. Фичи: воспроизводите любую песню из любого места, просто поделившись аудиофайлом с приложением, не скачивая его, удобный поиск по всей вашей музыке/альбомам/артистам, очень быстрый, никаких лишних разрешений, поддержка Material 3/You & Monet, красивый ландшафтный UI, редактор тегов. CuteMusic на GitHub: https://github.com/sosauce/CuteMusic Платформа: Android ⭐️: 295

Отлаживаем неотлаживаемое В статье Брайс Боствик делится своим опытом обхода различных защитных механизмов в iOS-приложении. Это приложение блокировало подключение отладчика, завершало работу при попытке инъекции кода и даже приводило к перезагрузке устройства при запуске на взломанном (jailbroken) iPhone. Брайс подробно описывает, как приложение использует функцию ptrace с параметром PT_DENY_ATTACH для предотвращения присоединения отладчика. Он предлагает несколько методов обхода этой защиты, включая установку точки останова перед вызовом ptrace и использование команды thread return в lldb для пропуска выполнения этой функции. Кроме того, автор обнаружил, что приложение содержит функцию, которая вызывает бесконечный цикл создания снимков экрана с помощью метода snapshotViewAfterScreenUpdates, что приводит к перезагрузке устройства. Это служит дополнительной мерой защиты от отладки и модификации приложения. Брайс также рассматривает проблему инъекции кода, когда приложение завершается при попытке добавить новый код. Он объясняет, что это может быть связано с отсутствием корректной группы приложений (App Group) после повторной подписи приложения. В качестве решения он предлагает использовать метод swizzling для замены вызова containerURLForSecurityApplicationGroupIdentifier на возвращение временного каталога, что позволяет обойти эту защиту. В целом, статья предоставляет ценные инсайты и практические методы обхода сложных защитных механизмов в iOS-приложениях. Эти знания могут быть полезны разработчикам, сталкивающимся с подобными проблемами при отладке и модификации приложений. Статья: https://bryce.co/undebuggable/ Платформа: iOS

Темы в современных iOS-приложениях с UITraitCollection Совсем недавно (с iOS 17) Apple представила довольно удобный способ об
Темы в современных iOS-приложениях с UITraitCollection Совсем недавно (с iOS 17) Apple представила довольно удобный способ обработки смены тем в приложениях для iOS. Раньше это было довольно мучительно. Но с появлением UITraitAppearance все стало проще. Эта статья представляет собой законченное описание того, как добавить тематическое оформление в реальное приложение. Статья: https://apptractor.ru/info/articles/temy-v-sovremennyh-ios-prilozheniyah-s-uitraitcollection.html Платформа: iOS

😖Ваши тесты на Flutter — это боль? UI ломается, ошибки появляются в последний момент, а автоматизация тестирования — пустые
😖Ваши тесты на Flutter — это боль? UI ломается, ошибки появляются в последний момент, а автоматизация тестирования — пустые мечты? 🚀Представьте, что каждая строчка кода протестирована. Вы ловите баги ещё до релиза, а CI/CD работает, как часы. Ваши приложения — надёжные, быстрые, готовые к любым нагрузкам. ➡️Приходите на открытый урок «Хитрости тестирования приложений на Flutter» 27 января в 20:00 мск. Узнайте всё про тестирование, CI и лучшие инструменты. Всем участникам — скидка на большое обучение! 🔴Регистрация открыта: https://otus.pw/8X6a/ Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576

Как синтаксический сахар Kotlin может сломать вам логику работы приложения Kotlin предоставил много возможностей и позволил убрать написание однотипного кода, но это стало тем что разработчики стали забывать, что не весь синтаксический сахар позволит реализовать задуманное. В Java же сложность написания чего-то заставляла нас делать выбор осознанным. Не используйте бездумно всё, что вам предлагает язык программирования и IDE, реализуйте логику работы объектов вашей программы соотвественно их поведению! Статья: https://habr.com/ru/articles/875460/ Платформа: Android

Recall - это приложение-календарь, предназначенное для записи ежедневных событий, чтобы иметь возможность просматривать тенде
Recall - это приложение-календарь, предназначенное для записи ежедневных событий, чтобы иметь возможность просматривать тенденции в продуктивности, достижении целей и управлении временем. Оно построено на базе Swift и SwiftUI, а на бэкенде использует MongoDB и Realm DeviceSync. Recall на GitHub: https://github.com/Brian-Masse/Recall Платформа: iOS ⭐️: 7

Jetpack Compose и Edge-to-Edge на Android 15 В Android 15 (API 35) Google продолжает продвигать иммерсивные пользовательские
Jetpack Compose и Edge-to-Edge на Android 15 В Android 15 (API 35) Google продолжает продвигать иммерсивные пользовательские интерфейсы от края до края (edge-to-edge). Несмотря на то, что это улучшает дизайн современных приложений, это вносит тонкие изменения, которые могут нарушить существующие макеты - особенно если ваше приложение полагается на точную работу с системными панелями. В этой статье мы рассмотрим, как перенести приложение Jetpack Compose на API 35, и обсудим лучшие методы управления переходом к edge-to-edge UI. Статья: https://apptractor.ru/info/articles/jetpack-compose-i-edge-to-edge-na-android-15.html Платформа: Android

⁉️ Знаешь, куда движется мир бэкенда? В 2024-м экосистема Kotlin взлетела на новый уровень. Что дальше? Какие тренды взорвут
⁉️ Знаешь, куда движется мир бэкенда? В 2024-м экосистема Kotlin взлетела на новый уровень. Что дальше? Какие тренды взорвут 2025? Какие технологии войдут в топ, а какие окажутся в аутсайдерах? ⚡️ Узнай всё на открытом вебинаре «Тенденции бэкенд-разработки в экосистеме Kotlin». Мы подведем итоги прошлого года, разберем ключевые тренды и поможем тебе подготовиться к новым вызовам. 🎙 Спикер Сергей Окатов — кандидат физико-математических наук и архитектор в Solar Security. 🗓 Регистрируйся на вебинар 30 января в 19:00 мск. Участники получат скидку на большое обучение «Kotlin Backend Developer. Professional». ➡️Регистрация открыта: https://otus.pw/y6doi/ Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru

Для других языков тоже вполне подходит
Для других языков тоже вполне подходит