Новые версии операционных систем уже доступны для установки разработчикам
1️⃣ iOS 16
2️⃣ iPadOS 16
3️⃣ macOS 13
4️⃣ watchOS 9
🛠И, конечно, Xcode вместе с ними.
@iOS Dev
1️⃣ iOS 16
2️⃣ iPadOS 16
3️⃣ macOS 13
4️⃣ watchOS 9
🛠И, конечно, Xcode вместе с ними.
@iOS Dev
Ну неужели они это сделали!
🥳 В общем, теперь можно использовать одну единственную иконку, которая заресайзится сразу под все нужные размеры в зависимости от таргета!
🎉 Кайфово? Да! Конечно, уже были сторонние решения для этого, которые упрощали жизнь, но теперь-то это будет нативно. Amazing!
ℹ️ Сейчас раздел с release notes подлагивает, но позже, надеюсь, он вернётся к своему рабочему состоянию.
@iOS Dev
🥳 В общем, теперь можно использовать одну единственную иконку, которая заресайзится сразу под все нужные размеры в зависимости от таргета!
🎉 Кайфово? Да! Конечно, уже были сторонние решения для этого, которые упрощали жизнь, но теперь-то это будет нативно. Amazing!
ℹ️ Сейчас раздел с release notes подлагивает, но позже, надеюсь, он вернётся к своему рабочему состоянию.
@iOS Dev
SwiftUI получил ещё одну причину писать на нём проекты в проде!
Swift Charts - это мощный и лаконичный фреймворк SwiftUI для преобразования данных в информативные визуализации. С помощью Swift Charts вы можете создавать эффективные и настраиваемые графики с минимальным количеством кода.
👏 Этот фреймворк предоставляет метки, шкалы, оси и легенды в качестве компонентов, которые можно комбинировать для создания широкого спектра графиков, управляемых данными.
🧑💻 Графики — теперь нативнее некуда!
@iOS Dev
Swift Charts - это мощный и лаконичный фреймворк SwiftUI для преобразования данных в информативные визуализации. С помощью Swift Charts вы можете создавать эффективные и настраиваемые графики с минимальным количеством кода.
👏 Этот фреймворк предоставляет метки, шкалы, оси и легенды в качестве компонентов, которые можно комбинировать для создания широкого спектра графиков, управляемых данными.
🧑💻 Графики — теперь нативнее некуда!
@iOS Dev
ℹ️ Появились важные обновления в App Store Review Guidelines
📌 2.5.4: Удалено требование для приложений, использующих фоновый режим определения местоположения. Не нужно показывать напоминание, что это может значительно сократить время работы от батареи.
🤔 Возможно, Apple получали жалобы от пользователей. Плюс для разработчиков в том, что количество негативных отзывов снизится.
📌 4.2.3: Удалено требование о включении в двоичный файл содержимого, достаточного для функционирования приложения при запуске.
🤔 Похоже, первый запуск в некоторых приложениях затянется.
📌 4.7: Удалено ограничение на проведение лотерей или благотворительных пожертвований в коде, не встроенном в двоичный файл.
📌 5.2.5: Если приложение отображает данные Apple Weather, оно должно следовать требованиям атрибуции, представленным в документации WeatherKit.
📌 5.3.3: Удалено ограничение на покупку лотерейных билетов или инициирование перевода средств в приложении.
🤔 Думаю, перевод средств останется под жестким ревью.
@iOS Dev
📌 2.5.4: Удалено требование для приложений, использующих фоновый режим определения местоположения. Не нужно показывать напоминание, что это может значительно сократить время работы от батареи.
🤔 Возможно, Apple получали жалобы от пользователей. Плюс для разработчиков в том, что количество негативных отзывов снизится.
📌 4.2.3: Удалено требование о включении в двоичный файл содержимого, достаточного для функционирования приложения при запуске.
🤔 Похоже, первый запуск в некоторых приложениях затянется.
📌 4.7: Удалено ограничение на проведение лотерей или благотворительных пожертвований в коде, не встроенном в двоичный файл.
📌 5.2.5: Если приложение отображает данные Apple Weather, оно должно следовать требованиям атрибуции, представленным в документации WeatherKit.
📌 5.3.3: Удалено ограничение на покупку лотерейных билетов или инициирование перевода средств в приложении.
🤔 Думаю, перевод средств останется под жестким ревью.
@iOS Dev
iOS Dev
Список всех новых фреймворков в одной таблице 📖 А вот здесь их можно отфильтровать и почитать подробнее. @iOS Dev
Список всех новых фреймворков, доступных в iOS 16
⚫ App Intents — для Siri и быстрых команд.
⚫ AVRouting — для потокового мультимедиа в маршруте.
⚫ BackgroundAssets — фоновая загрузка тяжелых ресурсов.
⚫ CarKey — удалённые функции авто без ключа.
⚫ Swift Charts — графики на каждой Apple-платформе.
⚫ DeviceDiscoveryExtension — стриминг медиа на стороннее устройство.
⚫ DeviceDiscoveryUI — подключаем tvOS к мобильному приложению.
⚫ Distributed — для создания распределённых систем.
⚫ ExtensionFoundation — исполняемые пакеты для расширения функциональности других приложений.
⚫ ExtensionKit — для расширения функциональности других приложений, представив пользовательский интерфейс.
⚫ MetalFX — для повышения производительности Metal.
⚫ Push To Talk — cистемный пользовательский интерфейс для служб Push-to-Talk вашего приложения.
⚫ RegexBuilder — регулярные выражения теперь на более понятном языке.
⚫ RoomPlan — для создания 3D-модели комнаты, интерактивно помогая людям сканировать свое физическое окружение с помощью камеры устройства.
⚫ Spatial — для создания трёхмерных математических примитивов и управления ими.
⚫ WeatherKit — погодные условия и оповещения для пользователей.
🙆 Лично я выделил бы Swift Charts, ExtensionKit, RegexBuildex. Всё это выглядит впечатляюще!
😎Собрал список в одном месте специально для разработчиков и читателей:
@iOS Dev
⚫ App Intents — для Siri и быстрых команд.
⚫ AVRouting — для потокового мультимедиа в маршруте.
⚫ BackgroundAssets — фоновая загрузка тяжелых ресурсов.
⚫ CarKey — удалённые функции авто без ключа.
⚫ Swift Charts — графики на каждой Apple-платформе.
⚫ DeviceDiscoveryExtension — стриминг медиа на стороннее устройство.
⚫ DeviceDiscoveryUI — подключаем tvOS к мобильному приложению.
⚫ Distributed — для создания распределённых систем.
⚫ ExtensionFoundation — исполняемые пакеты для расширения функциональности других приложений.
⚫ ExtensionKit — для расширения функциональности других приложений, представив пользовательский интерфейс.
⚫ MetalFX — для повышения производительности Metal.
⚫ Push To Talk — cистемный пользовательский интерфейс для служб Push-to-Talk вашего приложения.
⚫ RegexBuilder — регулярные выражения теперь на более понятном языке.
⚫ RoomPlan — для создания 3D-модели комнаты, интерактивно помогая людям сканировать свое физическое окружение с помощью камеры устройства.
⚫ Spatial — для создания трёхмерных математических примитивов и управления ими.
⚫ WeatherKit — погодные условия и оповещения для пользователей.
🙆 Лично я выделил бы Swift Charts, ExtensionKit, RegexBuildex. Всё это выглядит впечатляюще!
😎Собрал список в одном месте специально для разработчиков и читателей:
@iOS Dev
Немного о том, что умеет новый Xcode
1️⃣ На 30% меньше двоичный файл. SDK можно ставить отдельно.
2️⃣ Проекты собираются на 25% быстрее благодаря улучшенному параллелизму на всех этапах сборки и соединения.
3️⃣ А новая временная шкала сборки помогает выявить неожиданно затянувшиеся задачи сборки и узкие места в вашей сборке. Как тут не упомянуть Build Graph от Михаила Рубанова. Может быть, это новые возможности?
4️⃣ Новый target создает единый интерфейс SwiftUI для использования на iOS, iPadOS, macOS и tvOS.
5️⃣ Регулярки в Swift с подсветкой синтаксиса, поддержкой рефакторинга и многим другим.
6️⃣ Swift, SwiftUI и Xcode 14 работают как единое целое. Превью SwiftUI сразу же интерактивно, а светлый и темный интерфейсы доступны одним щелчком мыши.
@iOS Dev
1️⃣ На 30% меньше двоичный файл. SDK можно ставить отдельно.
2️⃣ Проекты собираются на 25% быстрее благодаря улучшенному параллелизму на всех этапах сборки и соединения.
3️⃣ А новая временная шкала сборки помогает выявить неожиданно затянувшиеся задачи сборки и узкие места в вашей сборке. Как тут не упомянуть Build Graph от Михаила Рубанова. Может быть, это новые возможности?
4️⃣ Новый target создает единый интерфейс SwiftUI для использования на iOS, iPadOS, macOS и tvOS.
5️⃣ Регулярки в Swift с подсветкой синтаксиса, поддержкой рефакторинга и многим другим.
6️⃣ Swift, SwiftUI и Xcode 14 работают как единое целое. Превью SwiftUI сразу же интерактивно, а светлый и темный интерфейсы доступны одним щелчком мыши.
@iOS Dev
Обновления для Simulator в iOS 16
🎉 Simulator теперь поддерживает удаленные уведомления в iOS 16 при запуске в macOS 13 на Mac с Apple silicon или T2. Используется Apple Push Notification Service Sandbox. Каждый симулятор генерирует токен из комбинации самого симулятора и аппаратного обеспечения Mac.
🎉 Уведомления поддерживают больше функций с помощью .apns payload или команды simctl push.
🎉 simctl теперь поддерживает управление симуляцией местоположения, включая запуск сценариев и интерполяцию между списком путевых точек.
⚫ simctl addmedia прокачан для поддержки многих дополнительных форматов изображений (включая многие популярные форматы RAW).
⚫ Теперь вы можете загружать устройства симулятора, например x86_64 на Mac с Apple silicon, используя новый аргумент командной строки --arch в simctl boot.
Внимание! Токены симулятора могут быть длиннее, чем токены физического устройства. Не задавайте жестко определенную длину или формат для этих токенов.
@iOS Dev
🎉 Simulator теперь поддерживает удаленные уведомления в iOS 16 при запуске в macOS 13 на Mac с Apple silicon или T2. Используется Apple Push Notification Service Sandbox. Каждый симулятор генерирует токен из комбинации самого симулятора и аппаратного обеспечения Mac.
🎉 Уведомления поддерживают больше функций с помощью .apns payload или команды simctl push.
🎉 simctl теперь поддерживает управление симуляцией местоположения, включая запуск сценариев и интерполяцию между списком путевых точек.
⚫ simctl addmedia прокачан для поддержки многих дополнительных форматов изображений (включая многие популярные форматы RAW).
⚫ Теперь вы можете загружать устройства симулятора, например x86_64 на Mac с Apple silicon, используя новый аргумент командной строки --arch в simctl boot.
Внимание! Токены симулятора могут быть длиннее, чем токены физического устройства. Не задавайте жестко определенную длину или формат для этих токенов.
@iOS Dev
This media is not supported in your browser
VIEW IN TELEGRAM
В Xcode 14 добавили code snippet для генерации memberwise initializer 🎉
Ну наконец-то! Раньше для этого можно было юзать, конечно, правую кнопку мыши и так далее, но теперь-то заживём 😅
@iOS Dev
Ну наконец-то! Раньше для этого можно было юзать, конечно, правую кнопку мыши и так далее, но теперь-то заживём 😅
@iOS Dev
Новый синтаксис в Swift 5.7 для optional unwrapping
😎 В Swift 5.7 появился новый, более лаконичный способ optional unwrapping с помощью операторов
👌Теперь мы можем просто опустить присваивание после оператора
Также это сработает и для
👍 Конечно, у нас все еще есть возможность делать как раньше: из-за стиля кода, либо если мы хотим дать другое имя преобразуемому опциональному значению.
@iOS Dev
😎 В Swift 5.7 появился новый, более лаконичный способ optional unwrapping с помощью операторов
if let
и guard let
. 👌Теперь мы можем просто опустить присваивание после оператора
if let
, и компилятор Swift автоматически преобразует наш опциональный параметр в конкретное значение с точно таким же именем.Также это сработает и для
guard
.👍 Конечно, у нас все еще есть возможность делать как раньше: из-за стиля кода, либо если мы хотим дать другое имя преобразуемому опциональному значению.
@iOS Dev
SwiftUI в ячейках UITableView или UICollectionView с помощью UIHostingConfiguration
⏳ С момента своего первоначального появления в 2019 году SwiftUI обладал приличной совместимостью с UIKit. Экземпляры UIView и UIViewController можно было обернуть для полной совместимости со SwiftUI, а UIHostingController позволял нам отображать SwiftUI в контроллере на базе UIKit.
🤔 Однако, несмотря на то, что в macOS существовал NSHostingView для встраивания SwiftUI в любой NSView, в iOS никогда не было простого способа сделать также. Мы могли взять UIHostingController, но даже это решение было так себе.
😉 В 14 оси ввели content configurations. Этот API теперь был расширен
Взаимодействие между SwiftUI и UIKit становится все более мощным, и это здорово.
🛠У меня в рабочем проекте не используется SwiftUI, но теперь я вижу веский повод попробовать.
@iOS Dev
⏳ С момента своего первоначального появления в 2019 году SwiftUI обладал приличной совместимостью с UIKit. Экземпляры UIView и UIViewController можно было обернуть для полной совместимости со SwiftUI, а UIHostingController позволял нам отображать SwiftUI в контроллере на базе UIKit.
🤔 Однако, несмотря на то, что в macOS существовал NSHostingView для встраивания SwiftUI в любой NSView, в iOS никогда не было простого способа сделать также. Мы могли взять UIHostingController, но даже это решение было так себе.
😉 В 14 оси ввели content configurations. Этот API теперь был расширен
UIHostingConfiguration
, позволяющим определять содержимое ячейки, используя любую иерархию SwiftUI. Здесь статья с разбором, описывающая и некоторые сложности.Взаимодействие между SwiftUI и UIKit становится все более мощным, и это здорово.
🛠У меня в рабочем проекте не используется SwiftUI, но теперь я вижу веский повод попробовать.
@iOS Dev
This media is not supported in your browser
VIEW IN TELEGRAM
Ещё одна фича нового Xcode — Sticky Headers при скролле
😉 Наглядно видна иерархия, работает и для Objective-C тоже.
📓 Разработчикам альтернативных IDE стоит взять на заметку, выглядит очень удобно.
@iOS Dev
😉 Наглядно видна иерархия, работает и для Objective-C тоже.
📓 Разработчикам альтернативных IDE стоит взять на заметку, выглядит очень удобно.
@iOS Dev
Открылась регистрация на WWDC labs и lounges от Apple
Что это вообще такое?
💬 Digital lounges
Ежедневно в Slack проходит множество интересных мероприятий.
⚫ Можно задавать вопросы по проектированию и дизайну.
⚫ Следить за переписками в режиме реального времени во время совместного просмотра.
⚫ Знакомиться с другими разработчиками в непринуждённой обстановке.
⚫ Экспериментируйте с новейшими фреймворками.
🔵 Викторина против лучших в своём деле 9 июня.
💻 Лаборатории
⚫ Получите индивидуальные консультации по основам разработки или сложным концепциям.
⚫ Узнайте, как внедрять новые технологии Apple, принципы дизайна и многое другое.
Кому можно участвовать?
🙋 Активности открыты для всех участников программ Apple Developer Program и Apple Developer Enterprise Program, а также для победителей 2022 Swift Student Challenge.
Где?
Регистрация на Labs здесь.
Регистрация на Lounges здесь.
@iOS Dev
Что это вообще такое?
💬 Digital lounges
Ежедневно в Slack проходит множество интересных мероприятий.
⚫ Можно задавать вопросы по проектированию и дизайну.
⚫ Следить за переписками в режиме реального времени во время совместного просмотра.
⚫ Знакомиться с другими разработчиками в непринуждённой обстановке.
⚫ Экспериментируйте с новейшими фреймворками.
🔵 Викторина против лучших в своём деле 9 июня.
💻 Лаборатории
⚫ Получите индивидуальные консультации по основам разработки или сложным концепциям.
⚫ Узнайте, как внедрять новые технологии Apple, принципы дизайна и многое другое.
Кому можно участвовать?
🙋 Активности открыты для всех участников программ Apple Developer Program и Apple Developer Enterprise Program, а также для победителей 2022 Swift Student Challenge.
Где?
Регистрация на Labs здесь.
Регистрация на Lounges здесь.
@iOS Dev