This media is not supported in your browser
VIEW IN TELEGRAM
Settings iOS - учебное приложение на SwiftUI, воспроизводящее стандартные Настройки в iOS.
Settings iOS на GitHub: https://github.com/zhrispineda/Settings-iOS
Платформа: iOS
⭐️: 14
Settings iOS на GitHub: https://github.com/zhrispineda/Settings-iOS
Платформа: iOS
⭐️: 14
Профилирование приложений на SwiftUI с помощью Instruments
Когда приложения начинают расти в размере и усложняться, становится всё труднее решать проблемы производительности с помощью простых методов, таких как использование операторов вывода, чтение кода и тестирование приложения. Проблемы производительности, как и ваше приложение, становятся всё более сложными — а это означает, что появляется потребность воспользоваться более сложными инструментами для профилирования и проверки фиксов.
В этой статье мы рассмотрим, как можно использовать Instruments для получения новых и интересных данных о вашем приложении.
Статья: https://habr.com/ru/companies/otus/articles/838490/
Платформа: iOS
Когда приложения начинают расти в размере и усложняться, становится всё труднее решать проблемы производительности с помощью простых методов, таких как использование операторов вывода, чтение кода и тестирование приложения. Проблемы производительности, как и ваше приложение, становятся всё более сложными — а это означает, что появляется потребность воспользоваться более сложными инструментами для профилирования и проверки фиксов.
В этой статье мы рассмотрим, как можно использовать Instruments для получения новых и интересных данных о вашем приложении.
Статья: https://habr.com/ru/companies/otus/articles/838490/
Платформа: iOS
💅1
10 самых распространенных ошибок с Jetpack Compose
Jetpack Compose произвел революцию в создании пользовательского интерфейса для приложений Android, внедрив декларативный подход. Он упрощает многие аспекты разработки пользовательского интерфейса, но также вводит новые концепции, которые могут поставить в тупик даже опытных разработчиков. Вот 10 основных ошибок, которые многие из нас совершали при работе с Jetpack Compose, а также пояснения и фрагменты кода, которые помогут вам их избежать.
1. Не помнить о правильном использовании remember
2. Чрезмерное использование Modifier.fillMaxSize()
3. Игнорирование оптимизаций производительности
4. Путать State и MutableState
5. Неправильное использование LaunchedEffect
6. Неправильное управление рекомпозицией
7. Переусложнение пользовательского интерфейса с помощью вложенных композабл
8. Неэффективное использование тем и стилей
9. Неадекватное тестирование
10. Пренебрежение доступностью
Статья: https://apptractor.ru/info/articles/10-samyh-rasprostranennyh-oshibok-s-jetpack-compose.html
Платформа: Android
Jetpack Compose произвел революцию в создании пользовательского интерфейса для приложений Android, внедрив декларативный подход. Он упрощает многие аспекты разработки пользовательского интерфейса, но также вводит новые концепции, которые могут поставить в тупик даже опытных разработчиков. Вот 10 основных ошибок, которые многие из нас совершали при работе с Jetpack Compose, а также пояснения и фрагменты кода, которые помогут вам их избежать.
1. Не помнить о правильном использовании remember
2. Чрезмерное использование Modifier.fillMaxSize()
3. Игнорирование оптимизаций производительности
4. Путать State и MutableState
5. Неправильное использование LaunchedEffect
6. Неправильное управление рекомпозицией
7. Переусложнение пользовательского интерфейса с помощью вложенных композабл
8. Неэффективное использование тем и стилей
9. Неадекватное тестирование
10. Пренебрежение доступностью
Статья: https://apptractor.ru/info/articles/10-samyh-rasprostranennyh-oshibok-s-jetpack-compose.html
Платформа: Android
👍1
This media is not supported in your browser
VIEW IN TELEGRAM
Compose Stopwatch - еще один учебный проект, таймер с секундомером в стиле iOS. Сделан полностью на Jetpack Compose. Есть соответствующая статья про его создание.
Compose Stopwatch на GitHub: https://amit-bhandari.github.io/posts/jetpack-compose-custom-view/
Платформа: Android
⭐️: 10
Поставьте 👍, если хотите статью на русском.
Compose Stopwatch на GitHub: https://amit-bhandari.github.io/posts/jetpack-compose-custom-view/
Платформа: Android
⭐️: 10
Поставьте 👍, если хотите статью на русском.
👎2👏1
Проверяем пакет iOS-приложения
Если вы знаете секретные языки ipa-нский и bundle-инди, вы можете удивить и порадовать интервьюера неожиданным отзывом — если потратите 10 минут на проверку и анализ его пакета приложений заранее.
Статья: https://apptractor.ru/info/articles/proveryaem-paket-ios-prilozheniya.html
Платформа: iOS
Если вы знаете секретные языки ipa-нский и bundle-инди, вы можете удивить и порадовать интервьюера неожиданным отзывом — если потратите 10 минут на проверку и анализ его пакета приложений заранее.
Статья: https://apptractor.ru/info/articles/proveryaem-paket-ios-prilozheniya.html
Платформа: iOS
Карточка навигации для iOS 18 на SwiftUI
Эта карточка заменяет заголовок в навигационной панели при прокрутке к верху. Когда карточка прокручивается за панель навигации, встроенный заголовок появляется, когда на виду — исчезает. Это небольшая, но важная деталь, поскольку она уменьшает ненужное дублирование информации и одновременно усиливает связь между заглавной карточкой и заголовком страницы.
Давайте посмотрим, как это можно сделать в SwiftUI.
Статья: https://apptractor.ru/info/articles/kartochka-navigatsii-dlya-ios-18-na-swiftui.html
Платформа: iOS
Эта карточка заменяет заголовок в навигационной панели при прокрутке к верху. Когда карточка прокручивается за панель навигации, встроенный заголовок появляется, когда на виду — исчезает. Это небольшая, но важная деталь, поскольку она уменьшает ненужное дублирование информации и одновременно усиливает связь между заглавной карточкой и заголовком страницы.
Давайте посмотрим, как это можно сделать в SwiftUI.
Статья: https://apptractor.ru/info/articles/kartochka-navigatsii-dlya-ios-18-na-swiftui.html
Платформа: iOS
Подходы к многомодульной функциональной архитектуре на Android
Разработка эффективной архитектуры для вашего Android-проекта имеет решающее значение, особенно если вы намерены поддерживать его в долгосрочной перспективе. Выбор стратегии зависит от различных факторов, включая масштаб проекта, ресурсы, цели и технологический стек.
При использовании многомодульной функциональной архитектуры вы можете выиграть от улучшения повторного использования, параллельной разработки и децентрализованного фокуса. Однако необходимо тщательно продумать, как разделить модули — по функциям, доменам или другим критериям, соответствующим конкретным потребностям вашего проекта.
Статья: https://apptractor.ru/info/articles/podhody-k-mnogomodulnoy-funktsionalnoy-arhitekture-na-android.html
Платформа: Android
Разработка эффективной архитектуры для вашего Android-проекта имеет решающее значение, особенно если вы намерены поддерживать его в долгосрочной перспективе. Выбор стратегии зависит от различных факторов, включая масштаб проекта, ресурсы, цели и технологический стек.
При использовании многомодульной функциональной архитектуры вы можете выиграть от улучшения повторного использования, параллельной разработки и децентрализованного фокуса. Однако необходимо тщательно продумать, как разделить модули — по функциям, доменам или другим критериям, соответствующим конкретным потребностям вашего проекта.
Статья: https://apptractor.ru/info/articles/podhody-k-mnogomodulnoy-funktsionalnoy-arhitekture-na-android.html
Платформа: Android
Supercool App - модульное приложение для Android, созданное на Jetpack Compose и Kotlin на чистой архитектуре с использованием удивительного паттерна проектирования Use Case. Технологический стек вобрал все, что только можно - Android KTX, AndroidX, корутины, Lifecycle, Viewmodel, LiveData, Retrofit, Flow, Hilt, Navigation Components, GitHub Actions, Mockito Kotlin, Room, Material Compose и т.п.
Supercool App на GitHub: https://github.com/im-o/jetpack-compose-clean-architecture
Платформа: Android
⭐️: 71
Supercool App на GitHub: https://github.com/im-o/jetpack-compose-clean-architecture
Платформа: Android
⭐️: 71
👎1
Как я ускорил свое мобильное приложение BookDesk на React Native в 3 раза?
В этом материале я поделюсь с вами практическим опытом по оптимизации своего мобильного приложения на React Native. Расскажу как ускорил свое приложение в 3 раза.
В первую очередь, я писал этот материал для себя чтобы упорядочить свои знания в виде гайда по оптимизации RN приложений. Возможно, данный материал будет кому-нибудь полезен.
Статья: https://habr.com/ru/articles/839248/
Платформа: кроссплатформа
В этом материале я поделюсь с вами практическим опытом по оптимизации своего мобильного приложения на React Native. Расскажу как ускорил свое приложение в 3 раза.
В первую очередь, я писал этот материал для себя чтобы упорядочить свои знания в виде гайда по оптимизации RN приложений. Возможно, данный материал будет кому-нибудь полезен.
Статья: https://habr.com/ru/articles/839248/
Платформа: кроссплатформа
Mapping объектов с помощью MapStruct
В огромном приложении Android с Clean Architecture много рутинной работы, связанной с отображением объектов между различными слоями. Хорошим решением будет автоматизация этого процесса.
В этой статье рассматривается опыт использования библиотеки MapStruct, которая помогает mapp-ить объекты.
Статья: https://habr.com/ru/articles/839362/
Платформа: Android
В огромном приложении Android с Clean Architecture много рутинной работы, связанной с отображением объектов между различными слоями. Хорошим решением будет автоматизация этого процесса.
В этой статье рассматривается опыт использования библиотеки MapStruct, которая помогает mapp-ить объекты.
Статья: https://habr.com/ru/articles/839362/
Платформа: Android
👎4
SwiftDraw - это Swift-библиотека для парсинга и отрисовки SVG-изображений, включающая инструмент командной строки для преобразования SVG в SFSymbol, PNG, PDF и исходный код Swift.
SwiftDraw на GitHub: https://github.com/swhitty/SwiftDraw
Платформа: iOS
⭐️: 360
SwiftDraw на GitHub: https://github.com/swhitty/SwiftDraw
Платформа: iOS
⭐️: 360
Видео и подкасты за неделю @AppFiles
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
#ios #android #mobile #video
•
(iOS Ru) Стратегия автотестирования для iOS приложений•
(iOS Ru) 5 вопросов для iOS разработчика•
(iOS Ru) Борьба с утечками памяти: от задачи до победы•
(iOS En) Import & Export Swift Data with Password•
(iOS En) Interactive Expandable Header - SwiftUI•
(And Ru) 5 уроков из опыта реализации pixel-perfect тестирования дизайн-системы в Android•
(And Ru) Gradle-сборка. Измеряем самое важное•
(And Ru) Шифруем файлы в Android•
(And En) Now in Android: 109 - Android 15 Beta 4, Samsung Galaxy Unpacked, Google Play's new feature, & more•
(And En) Hot Flows vs. Cold Flows In Kotlin - When to Use What?•
(And En) 5 Kotlin Coroutine Secrets I Wish I Knew Earlier•
(And En) Kotlin After 2.0•
(And En) Revamping and Extending Kotlin's Type System•
(And En) The state of code coverage for Kotlin•
(Crs En) There's more than a mouse in Compose Multiplatform for Desktop•
(Dev Ru) Как писать чистый код — угадываем что ввел юзер и дизайним с нуля Clean Code Approach•
(Dev Ru) Егор Бугаенко про ТикТок, Huawei и ленивых разработчиков•
(Dev Ru) Зачем учить язык Си в 2024 году — Как выбрать между C или C++ или Rust#ios #android #mobile #video
SSNeumorphicView - это сложная, но гибкая библиотека для iOS, которая легко интегрирует модный стиль неоморфизм в пользовательский интерфейс вашего приложения. Неоморфизм, известный своими мягкими, тонкими тенями в сочетании с глубиной и текстурой, создает элегантный эффект мягкого тиснения, благодаря которому компоненты вашего пользовательского интерфейса выглядят тактильно и привлекательно.
SSNeumorphicView упрощает процесс внедрения неоморфных элементов в ваше приложение, обеспечивая совместимость с UIKit и SwiftUI. Благодаря широким возможностям настройки цвета, глубины и стиля теней вы без труда создадите современный и визуально привлекательный пользовательский опыт. Кроме того, он обратно совместим с iOS 13, что обеспечивает широкую поддержку на различных устройствах.
SSNeumorphicView на GitHub: https://github.com/SimformSolutionsPvtLtd/SSNeumorphicKit
Платформа: iOS
⭐️: 44
SSNeumorphicView упрощает процесс внедрения неоморфных элементов в ваше приложение, обеспечивая совместимость с UIKit и SwiftUI. Благодаря широким возможностям настройки цвета, глубины и стиля теней вы без труда создадите современный и визуально привлекательный пользовательский опыт. Кроме того, он обратно совместим с iOS 13, что обеспечивает широкую поддержку на различных устройствах.
SSNeumorphicView на GitHub: https://github.com/SimformSolutionsPvtLtd/SSNeumorphicKit
Платформа: iOS
⭐️: 44
2,5 тысяч экрано-состояний и тесты на сотнях устройств: как мы с нуля делали темную тему в приложении
Несмотря на пользу, темную тему часто разрабатывают по остаточному принципу. Например, выделяют на задачу по нескольку часов в неделю, и за это время просто инвертируют цвета светлой темы. Но в таком случае ни о какой пользе для глаз говорить не приходится.
Чтобы сделать действительно полезную фичу, потратили десятки часов и протестировали 2,5 тысячи макетов на сотнях устройств. С чем работали в процессе и что из этого вышло в этой статье.
Статья: https://habr.com/ru/articles/839636/
Платформа: дизайн и прототипирование
Несмотря на пользу, темную тему часто разрабатывают по остаточному принципу. Например, выделяют на задачу по нескольку часов в неделю, и за это время просто инвертируют цвета светлой темы. Но в таком случае ни о какой пользе для глаз говорить не приходится.
Чтобы сделать действительно полезную фичу, потратили десятки часов и протестировали 2,5 тысячи макетов на сотнях устройств. С чем работали в процессе и что из этого вышло в этой статье.
Статья: https://habr.com/ru/articles/839636/
Платформа: дизайн и прототипирование
❤1👍1
Я получил новый iPhone, но мой аккаунт в социальных сетях заблокирован
Как разработчик iOS, я знаю, что у Apple нет никаких API, которые разработчики могут использовать для отслеживания пользователей. Разработчики не могут получить доступ к серийному номеру устройства, а identifierForVendor сбрасывается, когда пользователь удаляет все приложения издателя. Так как же Snapchat мог распознать устройство?
Статья: https://apptractor.ru/develop/ya-poluchil-novyy-iphone-no-moy-akkaunt-v-sotsialnyh-setyah-zablokirovan.html
Платформа: iOS
Как разработчик iOS, я знаю, что у Apple нет никаких API, которые разработчики могут использовать для отслеживания пользователей. Разработчики не могут получить доступ к серийному номеру устройства, а identifierForVendor сбрасывается, когда пользователь удаляет все приложения издателя. Так как же Snapchat мог распознать устройство?
Статья: https://apptractor.ru/develop/ya-poluchil-novyy-iphone-no-moy-akkaunt-v-sotsialnyh-setyah-zablokirovan.html
Платформа: iOS
aDp - эта библиотека используется в Jetpack Compose для преодоления различий в пользовательском интерфейсе на разных Android-устройствах для одного и того же кода. Библиотека принимает на вход задуманную разработчиком ширину экрана и затем масштабирует все размеры в соответствии с настройками устройства, обеспечивая их точное соответствие дизайну. Например, выше сравнение двух TextView: при ширине дизайна 360 вы видите, как изменяется TextView, использующий стандартный dp, а тот, что использует aDp, настраивается так, чтобы выглядеть почти идентично дизайну (у автора есть статья с объяснением).
aDp на GitHub: https://github.com/mohitsoni48/aDp
Платформа: Android
⭐️: 12
aDp на GitHub: https://github.com/mohitsoni48/aDp
Платформа: Android
⭐️: 12
NFC на Android: создание системы предоплаты с использованием NDEF меток
В этой статье мы рассмотрим, как реализовать NFC в приложении для Android, читая и записывая данные в метки с помощью формата NDEF. Мы продемонстрируем это на примере реализации простой системы предоплаты, похожей на системы общественного транспорта, где метки, обычно в формате карт, можно заряжать и использовать для проезда. Android-устройство будет выступать в роли платежного терминала, а метки будут хранить баланс и список приобретенных товаров.
Статья: https://apptractor.ru/info/news/nfc-na-android-sozdanie-sistemy-predoplaty-s-ispolzovaniem-ndef-metok.html
Платформа: Android
В этой статье мы рассмотрим, как реализовать NFC в приложении для Android, читая и записывая данные в метки с помощью формата NDEF. Мы продемонстрируем это на примере реализации простой системы предоплаты, похожей на системы общественного транспорта, где метки, обычно в формате карт, можно заряжать и использовать для проезда. Android-устройство будет выступать в роли платежного терминала, а метки будут хранить баланс и список приобретенных товаров.
Статья: https://apptractor.ru/info/news/nfc-na-android-sozdanie-sistemy-predoplaty-s-ispolzovaniem-ndef-metok.html
Платформа: Android
Swift AST Explorer - это инструмент для визуализации абстрактного синтаксического дерева (Abstract Syntax Tree, AST) исходного кода Swift.
Swift AST Explorer на GitHub: https://github.com/SwiftFiddle/swift-ast-explorer
Платформа: iOS
⭐️: 567
Swift AST Explorer на GitHub: https://github.com/SwiftFiddle/swift-ast-explorer
Платформа: iOS
⭐️: 567
This media is not supported in your browser
VIEW IN TELEGRAM
Создаем атомный лоадер в Jetpack Compose
В этой статье мы создадим потрясающую 3D-анимацию Atomic Loader в Jetpack Compose.
Интересно? Давайте сделаем! ⚛️🚀
Статья: https://apptractor.ru/info/articles/sozdaem-atomanyy-loader-v-jetpack-compose.html
Платформа: Android
В этой статье мы создадим потрясающую 3D-анимацию Atomic Loader в Jetpack Compose.
Интересно? Давайте сделаем! ⚛️🚀
Статья: https://apptractor.ru/info/articles/sozdaem-atomanyy-loader-v-jetpack-compose.html
Платформа: Android
👍5
Voice - это удобное приложение для прослушивания аудиокниг на вашем Android-устройстве. Поддерживая широкий спектр аудиоформатов, включая MP3, M4A, OGG и другие, Voice Audiobook Player обеспечивает интуитивно понятный интерфейс, гладкий и комфортный опыт прослушивания вашей любимой аудиокниги.
Voice на GitHub: https://github.com/PaulWoitaschek/Voice
Платформа: Android
⭐️: 2.4K
Voice на GitHub: https://github.com/PaulWoitaschek/Voice
Платформа: Android
⭐️: 2.4K
Время сборки и верификация модулей
Постепенно время сборки Secrets становилось все медленнее и медленнее, и я не замечал этого... до бета-версии Xcode 16, когда я почувствовал, что мне действительно нужно понять, что происходит.
Статья: https://apptractor.ru/info/articles/vremya-sborki-i-verifikatsiya-moduley.html
Платформа: iOS
Постепенно время сборки Secrets становилось все медленнее и медленнее, и я не замечал этого... до бета-версии Xcode 16, когда я почувствовал, что мне действительно нужно понять, что происходит.
Статья: https://apptractor.ru/info/articles/vremya-sborki-i-verifikatsiya-moduley.html
Платформа: iOS