Список основных анонсов для iOS разработчиков с WWDC’22. На этой неделе я буду публиковать много постов с деталями по каждой из тем, так что перешлите этот пост друзьям, чтобы они тоже подписались!
🍏Изменения в iOS
- WidgetKit: поддержка новых виджетов для lock-скринов и complications для Apple Watch
- Focus Filter API: кастомизация поведения приложения с учетом того, включен ли режим “не беспокоить”
- Message Collaboration API: коллаборативное обсуждение и редактирование документов с помощью Facetime и Messages.
- Live Text API: поддержка копирования текста из фото и видео в вашем приложении
- WeatherKit: получение данных о текущей погоде и прогнозов на 10 дней вперед
📦Ключевые фреймворки и инструменты
- SwiftUI: новое решение для навигации, библиотека графиков, новый протокол Layout и миллиард мелких изменений
- Xcode Cloud: открытый доступ начнется с лета, цены начинаются с 15$ в месяц, до 2023 года у всех будет 25 бесплатных часов в месяц
- Passkeys: альтернатива использованию паролей
- StoreKit 2: сильно улучшенный фреймворк для работы с внутренними покупками
⛏Xcode
- Бинарник Xcode стал весить меньше на треть
- Bitcode deprecated
- Больше не нужно заливать все размеры иконкок приложения, достаточно одного 1024х1024 файла
- Xcode сможет параллелить сборку таргетов и их зависимостей (вроде как до 25% быстрее)
- Нереально классный Build Timeline, который показывает диаграмму шагов параллельной сборки
- Починили хот релоад для SwiftUI
- При скролле в области редактора всегда остаются видимыми декларации классов и функций
💻Swift
- if let
- Улучшенный вывод типов для замыканий
- Clock, Instant, Duration API
- Сильно прокачали регулярки: новый тип Regex, удобный DSL и разные алгоритмы для работы со строками
- Swift concurrency доступна в top-level коде
- Distributed actor isolation
- Swift сниппеты
📖Подробный What’s new
🍏Изменения в iOS
- WidgetKit: поддержка новых виджетов для lock-скринов и complications для Apple Watch
- Focus Filter API: кастомизация поведения приложения с учетом того, включен ли режим “не беспокоить”
- Message Collaboration API: коллаборативное обсуждение и редактирование документов с помощью Facetime и Messages.
- Live Text API: поддержка копирования текста из фото и видео в вашем приложении
- WeatherKit: получение данных о текущей погоде и прогнозов на 10 дней вперед
📦Ключевые фреймворки и инструменты
- SwiftUI: новое решение для навигации, библиотека графиков, новый протокол Layout и миллиард мелких изменений
- Xcode Cloud: открытый доступ начнется с лета, цены начинаются с 15$ в месяц, до 2023 года у всех будет 25 бесплатных часов в месяц
- Passkeys: альтернатива использованию паролей
- StoreKit 2: сильно улучшенный фреймворк для работы с внутренними покупками
⛏Xcode
- Бинарник Xcode стал весить меньше на треть
- Bitcode deprecated
- Больше не нужно заливать все размеры иконкок приложения, достаточно одного 1024х1024 файла
- Xcode сможет параллелить сборку таргетов и их зависимостей (вроде как до 25% быстрее)
- Нереально классный Build Timeline, который показывает диаграмму шагов параллельной сборки
- Починили хот релоад для SwiftUI
- При скролле в области редактора всегда остаются видимыми декларации классов и функций
💻Swift
- if let
- Улучшенный вывод типов для замыканий
- Clock, Instant, Duration API
- Сильно прокачали регулярки: новый тип Regex, удобный DSL и разные алгоритмы для работы со строками
- Swift concurrency доступна в top-level коде
- Distributed actor isolation
- Swift сниппеты
📖Подробный What’s new
Apple Developer Documentation
WidgetKit | Apple Developer Documentation
Extend the reach of your app by creating widgets, watch complications, Live Activities, and controls.
👍67🔥13👎5❤3😁1
Самый детальный обзор всех изменений в Swift 5.7 от Paul Hudson – со ссылками на пропозалы, примерами кода и кейсов использования.
Hacking with Swift
What’s new in Swift 5.7
Or as I’ve started calling it, what isn’t new in Swift 5.7?
👍47👎5❤3🔥1
Краткое содержание главной сессии WWDC для разработчиков – Platform State of the Union, в которой по верхам прошлись по большинству упомянутых мной в утреннем посте изменений. Рекомендую пролистать – так вы точно не пропустите важные именно для вас нововведения!
Xcoding with Alfian
WWDC 2022 - Platform State of the Union Recap | Swift 5.7, SwiftUI 4.0, System Experiences Latest APIs | Xcoding with Alfian
In this article, I am going to give a recap on all the new software technologies that Apple Engineers announced during the Platform State of the Union keynote from Swift 5.7, SwiftUI 4.0, and System Experiences Latest APIs.
👎9👍7
Ребята из Qonversion подготовили разбор изменений в App Store Server API и StoreKit 2:
- Новый App Transaction API для верификации покупок в приложении
- Новые свойства в StoreKit: PriceLocale, Environment, Recent Subscription Start Date
- Улучшенная интеграция со SwiftUI
- Новый API для сообщений StoreKit
- Новый App Transaction API для верификации покупок в приложении
- Новые свойства в StoreKit: PriceLocale, Environment, Recent Subscription Start Date
- Улучшенная интеграция со SwiftUI
- Новый API для сообщений StoreKit
👍18👎2
В этот раз на WWDC пробовали новый формат общения iOS разработчиков с командой Apple – Digital Lounge. Это был текстовый Q&A, в котором инженеры Apple старались дать ответы на разные вопросы, не покрытые документацией. Digital lounge был закрытым, но все вопросы и ответы собрали в Notion документе. Это кладезь полезной информации про архитектуру, перфоманс, лучшие практики и конкретные приемы работы со SwiftUI!
midnight-beanie-ccb on Notion
WWDC22 #SwiftUI | Notion
Every question and answer from WWDC 22’s SwiftUI digital lounge!
👍33🔥4👎3❤2🤔1
Приложения, запущенные на симуляторе, теперь поддерживают полноценные remote push notifications! их может отправить ваш сервер, подключившись к сендбоксовому APNS.
X (formerly Twitter)
Donny Wals 👾 (@DonnyWals) on X
This rocks! Finally we’ll have proper support for push notifications in the simulator rather than having to use a local json payload to simulate one 😁 #WWDC22
👍84😱20🔥8👏4👎2❤1😁1🤔1😢1
Выпуск подкаста Санделла с Ben Cohen, менеджером команды разработки Swift:
- Главные изменения в Swift 5.7
- Улучшения в дженериках, в том числе нюансы использования
- Планы по Swift 6
- Главные изменения в Swift 5.7
- Улучшения в дженериках, в том числе нюансы использования
some
и any
- Планы по Swift 6
Swift by Sundell
117: “Swift 5.7, generics, and the road to Swift 6”, with special guest Ben Cohen | Swift by Sundell
Ben Cohen, manager of the Swift team at Apple, joins John on this WWDC22 special to discuss Swift 5.7, how generics have been made more powerful and easy to use, and how the language is expected to evolve towards Swift 6.
👍28👎3
Читать про новые анонсы с WWDC – интересно. Но еще лучше – сразу спланировать, как вы сможете какие-то из них притащить в свои рабочие проекты. Чтобы разобраться с этим, приходите на новый сезон Podlodka iOS Crew, где топовейшие эксперты расскажут:
- Как внедрить SwiftUI в legacy-проект
- Какую архитектуру использовать с SwiftUI
- Как перейти с CocoaPods и Carthage на SPM
Если вы вдруг забыли, то конференции Подлодки это:
💻 Лайвкодинги и воркшопы
👀 Сессии с разбором ваших кейсов и проблем
💬 Нетворкинг с топ-10 айосников СНГ
Подписчикам Good Reads скидка: `modern_iosgr`
👉Сезон стартует с понедельника, залетаем на борт!
- Как внедрить SwiftUI в legacy-проект
- Какую архитектуру использовать с SwiftUI
- Как перейти с CocoaPods и Carthage на SPM
Если вы вдруг забыли, то конференции Подлодки это:
💻 Лайвкодинги и воркшопы
👀 Сессии с разбором ваших кейсов и проблем
💬 Нетворкинг с топ-10 айосников СНГ
Подписчикам Good Reads скидка: `modern_iosgr`
👉Сезон стартует с понедельника, залетаем на борт!
podlodka.io
Онлайн-конференция Podlodka iOS Crew, сезон #16
Недельное мероприятие от команды Podlodka: ежедневные интерактивные сессии в Zoom по актуальным проблемам iOS-разработки, нон-стоп общение с экспертами и звёздами индустрии, закрытое профессиональное сообщество в Telegram.
🔥9👎2👍1
В iOS 16 завезли Find and Replace. В SwiftUI он автоматически поддерживается компонентом TextEditor (а в TextField – нет). Что круто – его поведение можно дополнительно кастомизировать, хоть и немного. Подробнее – в статье.
Nil Coalescing
Find and replace in iOS and iPadOS 16
Find and replace feature is automatically supported by SwiftUI TextEditor, but we also have some APIs to customize its behavior, such as disable replace or present the find UI programmatically.
❤13👍2👎2😁1
Не считая небольших фейслифтингов, экран блокировки iPhone практически не менялся с первых версий iOS. В iOS 16 его переработали очень сильно, постаравшись сделать более функциональным. В этом материале рассказывается, как дизайн-команда Apple подошла к проработке каждого аспекта обновлнного экрана.
TechRadar
Exclusive: inside Apple’s iOS 16 remake of the iPhone’s iconic Lock Screen
Apple takes us inside the iOS 16 reinvention of the iconic iPhone Lock Screen
👍7👎4
Apple разрешила передавать на другие аккаунты разработчика приложения с включенным iCloud. Раньше, если что, это было запрещено, из-за чего разработчика, случайно включившего iCloud в проекте, могли дружно бить тряпками.
Важный момент – если несколько приложений на вашем аккаунте шарят один и тот же CloudKit контейнер, то при переносе одного из приложений доступ к этим данным у всех остальных заблокируется.
Важный момент – если несколько приложений на вашем аккаунте шарят один и тот же CloudKit контейнер, то при переносе одного из приложений доступ к этим данным у всех остальных заблокируется.
👍27👎5🔥2❤1
Разбираемся с Xcode Cloud
🛠Ключевые фичи
- Вся настройка сервиса, управление очередями и просмотр результатов тестов работают через Xcode или App Store Connect
- Есть интеграция с TestFlight
- Работает с Bitbucket Server, GitHub, GitHub Enterprise
💰Цены
- 25 ч/мес – 15$
- 100 ч/мес – 45$
- 250 ч/мес – 100$
- 1000 ч/мес – 400$
🔗Полезные ссылки
Подробная документация по сервису
WWDC22: Get the most out of the Xcode Cloud
🛠Ключевые фичи
- Вся настройка сервиса, управление очередями и просмотр результатов тестов работают через Xcode или App Store Connect
- Есть интеграция с TestFlight
- Работает с Bitbucket Server, GitHub, GitHub Enterprise
💰Цены
- 25 ч/мес – 15$
- 100 ч/мес – 45$
- 250 ч/мес – 100$
- 1000 ч/мес – 400$
🔗Полезные ссылки
Подробная документация по сервису
WWDC22: Get the most out of the Xcode Cloud
Apple Developer
Xcode Cloud - Apple Developer
Xcode Cloud is a continuous integration and delivery service built into Xcode and designed expressly for Apple developers.
👍14👎5🔥3
В новом SwiftUI подвезли, возможно, самую важную фичу для интеропа с UIKit, которая поможет постепенно затаскивать его в свой легаси код – рендеринг SwiftUI вьюшки в качестве ячейки таблицы или коллекции. Что там по перфомансу, правда, пока совсем непонятно – если кто-то сделает бенчмарки, обязательно поделитесь.
Swift by Sundell
Rendering SwiftUI views within UITableView or UICollectionView cells on iOS 16 | Swift by Sundell
Exploring how iOS 16’s new UIHostingConfiguration API enables us to inline SwiftUI views within our UITableView or UICollectionView cells.
👍55🤯10👎4❤2
Если вам лень смотреть какую-то сессию с WWDC, потому что вы не уверены, будет ли от нее польза, попробуйте найти ее транскрипт на этом сайте. Например, тут уже есть транскрипты для:
What's new in SF Symbols 4
Link fast: Improve build and launch times
Improve app size and runtime performance
Visualize and optimize Swift concurrency
What's new in SF Symbols 4
Link fast: Improve build and launch times
Improve app size and runtime performance
Visualize and optimize Swift concurrency
👍15👎3🔥3❤1🤬1
В Swift 5.7 появилась новая языковая фича – if let, которая помогает разворачивать дженерики очень простой конструкцией. Если вы решили ее заадоптить в своей кодовой базе, вот рецепт быстрого переезда:
Search:
Replace:
Search:
if let (\w+) = (\1) \{
Replace:
if let $1 \{
DEV Community
If let shorthand project wide refactoring using Xcode regex search & replace.
Swift 5.7 introduced this beauty (if let...
👍38👎8❤4
Серия из двух статей, которые помогут вам познакомиться с новой библиотекой Swift Charts – часть 1 и часть 2. Получается рисовать довольно сложные графики, так что, похоже, про большинство сторонних решений для этого можно будет скоро забыть.
Nil Coalescing
Build and style a chart with the new Swift Charts framework
Explore the capabilities of the new Swift Charts framework introduced at WWDC 2022 while making a stream graph with custom colour gradient and text labels.
🔥36👍2👎2
В SwiftUI появился новый API для работы с адаптивными лэйаутами – ViewThatFits (держите сразу мемный твит про выбор его названия). Автор статьи поэкспериментировал с ним, чтобы оценить, как он ведет себя в различных сценариях.
👍8😁7👎1🔥1🤔1
ViewThatFits понравился не всем из-за своего API и отсутствия анимаций. Посмотрите, как можно собрать аналогичный компонент, который будет вести себя значительно лучше.
Исходники на GitHub
Исходники на GitHub
X (formerly Twitter)
Ryan Lintott (@ryanlintott) on X
ViewThatFits is awesome but I didn't like the duplicate content and the lack of animation so I created LayoutThatFits which takes a single closure for content and an array of "any Layout" #WWDC22 #SwiftUI
👍20👎8❤2
Это очень смешно. Если вынести на Touch Bar макбука кнопку для AirPlay, то macOS начинает постоянно искать в бэкграунде доступные мониторы, из-за чего перестают нормально функционировать остальные сетевые протоколы. Держите детальное расследование.
mnpn.github.io
Mnpn's website and blog containing projects and other information.
😁41👎3👍1