Шаринг токенов между iOS/macOS/watchOS с помощью iCloud Keychain
Конечно, для этого нужно включить саму опцию
📖 А вот тут можно узнать о дополнительных шагах в коде и необходимости дополнительных ключей
Кстати, в канале есть пост и о способах обмена данными между своими приложениями.
😃 iOS Dev
Конечно, для этого нужно включить саму опцию
Keychain Sharing
, при этом не забыв о важности одной и той же Keychain Group
.📖 А вот тут можно узнать о дополнительных шагах в коде и необходимости дополнительных ключей
kSecAttrAccessGroup
и kSecAttrSynchronizable
.Кстати, в канале есть пост и о способах обмена данными между своими приложениями.
Please open Telegram to view this post
VIEW IN TELEGRAM
Formatters в Swift: их больше, чем вы думаете!
Если у вас есть небольшой опыт работы с iOS, то вы наверняка использовали и
Но пул форматтеров намного шире. Например, при работе с файлами (особенно, когда требуется красиво показать размер) сложно обойтись без
📖 А в этом материале Винсент делится и другими видами, которые могут пригодиться в нашей работе.
😃 iOS Dev
Если у вас есть небольшой опыт работы с iOS, то вы наверняка использовали и
DateFormatter
, и NumberFormatter
.Но пул форматтеров намного шире. Например, при работе с файлами (особенно, когда требуется красиво показать размер) сложно обойтись без
ByteCountFormatter
📖 А в этом материале Винсент делится и другими видами, которые могут пригодиться в нашей работе.
Please open Telegram to view this post
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
Pow - библиотека для создания эффектов в iOS-приложениях теперь в открытом доступе
Moving Parts совместно с Emergetools (создателями и других крутых продуктов) приняли решение открыть исходный код библиотеки эффектов Pow.
🤩 К слову, уже 2 100 звёзд на GitHub.
🛠 Посмотреть на доступные эффекты и примеры использования в проектах можно здесь.
😃 iOS Dev
Moving Parts совместно с Emergetools (создателями и других крутых продуктов) приняли решение открыть исходный код библиотеки эффектов Pow.
🛠 Посмотреть на доступные эффекты и примеры использования в проектах можно здесь.
Please open Telegram to view this post
VIEW IN TELEGRAM
От viewWillAppear к viewIsAppearing: адаптация пользовательского интерфейса
На WWDC23 Apple представила важное дополнение к жизненному циклу UIViewController:
По факту это революционное решение помогает создавать более отзывчивые и динамичные интерфейсы.
📖 На этих несложных примерах можно понять, почему этот момент стратегически важен, и как именно можно использовать его в приложениях.
😃 iOS Dev
На WWDC23 Apple представила важное дополнение к жизненному циклу UIViewController:
viewIsAppearing
. По факту это революционное решение помогает создавать более отзывчивые и динамичные интерфейсы.
📖 На этих несложных примерах можно понять, почему этот момент стратегически важен, и как именно можно использовать его в приложениях.
Please open Telegram to view this post
VIEW IN TELEGRAM
Искусство работы с Corner Radius: пара трюков и хитростей
ℹ️ Работа со скруглениями едва ли не самая распространенная штука при работе над дизайном приложений.
Базовых скруглений легко добиться, но при работе с несколькими составляющими могут возникнуть трудности.
📖 В этой статье David Yang делится некоторыми несложными шагами при работе с таким дизайном.
😃 iOS Dev
Базовых скруглений легко добиться, но при работе с несколькими составляющими могут возникнуть трудности.
📖 В этой статье David Yang делится некоторыми несложными шагами при работе с таким дизайном.
Please open Telegram to view this post
VIEW IN TELEGRAM
Начиная с весны 2024 года, разработчики будут обязаны включать в приложения новые манифесты и подписи для SDK, которые могут влиять на конфиденциальность пользователей.
Подписи будут нужны, даже если SDK (пока список от Apple как на скриншоте выше) включены в качестве зависимостей.
Любая версия и SDK, которые переупаковывают вышеуказанные, также включены в требования.
Для каждого вида данных понадобится словарь
NSPrivacyCollectedDataType
с ключами:NSPrivacyCollectedDataType
, NSPrivacyCollectedDataTypeLinked
, NSPrivacyCollectedDataTypeTracking
и NSPrivacyCollectedDataTypePurposes
.Все значения должны соответствовать этому списку. Если будут указаны иные варианты, то Xcode не сможет корректно генерить отчёт о конфиденциальности.
Please open Telegram to view this post
VIEW IN TELEGRAM
AsyncPhoto и пример использования для отображения больших фотографий
ℹ️
Можно, например, создать кастомный плейсхолдер и управлять загруженной картинкой с помощью параметра
📖 В этом материале приводится пример использования AsyncImage в случаях, когда нужно уменьшить изображение (в том числе и для экономии памяти).
😃 iOS Dev
AsyncImage
нужен, как и следует из названия, для того, чтобы асинхронно грузить и отображать изображения.Можно, например, создать кастомный плейсхолдер и управлять загруженной картинкой с помощью параметра
content
.📖 В этом материале приводится пример использования AsyncImage в случаях, когда нужно уменьшить изображение (в том числе и для экономии памяти).
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
Скрытая особенность typealias
⭐️ Скорее всего, при разработке вы периодически используете
Также как при работе со структурами или классами, мы можем объявлять дженерик-аргументы в
📖 В этой статье разбираются возможности
😃 iOS Dev
typealias
.Также как при работе со структурами или классами, мы можем объявлять дженерик-аргументы в
typealias
(и даже можем ограничить использование только числовых типов, например, с использованием Numeric
).📖 В этой статье разбираются возможности
typealias
на реальных примерах. Please open Telegram to view this post
VIEW IN TELEGRAM
Как и когда использовать Lazy Collections в Swift
➡️ Такие коллекции откладывает вычисления до тех пор, пока они действительно не понадобятся.
И хотя это может быть полезно (например, можно предотвратить выполнение ненужной работы, если элементы в итоге так и не будут запрошены), но у них есть и недостатки.
Условно, если у нас 5 элементов, вряд ли мы получим существенный выигрыш в производительности. Поэтому решение об использовании таких коллекций должно приниматься индивидуально в каждом случае.
📖 А о преимуществах и недостатках можно прочесть здесь.
😃 iOS Dev
И хотя это может быть полезно (например, можно предотвратить выполнение ненужной работы, если элементы в итоге так и не будут запрошены), но у них есть и недостатки.
Условно, если у нас 5 элементов, вряд ли мы получим существенный выигрыш в производительности. Поэтому решение об использовании таких коллекций должно приниматься индивидуально в каждом случае.
📖 А о преимуществах и недостатках можно прочесть здесь.
Please open Telegram to view this post
VIEW IN TELEGRAM
Приготовил для вас сюрприз ❤️
🔨 Что, если бы Xcode показывал нам статистику по итогам года?
Или, например, мы знали, сколько крашей пофиксили?
☕️ А сколько минут собирались наши проекты?
🤩 Я представил эту альтернативную реальность в стиле Spotify (или других сервисов, как вам удобнее), и делюсь итогами года iOS-разработчика с вами!
😃 iOS Dev • 🐱 Доступ к алгоритмам
Или, например, мы знали, сколько крашей пофиксили?
☕️ А сколько минут собирались наши проекты?
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM