Telegram Web Link
Отличия Live Screen Widgets и Live Activities

В iOS 16 появилось сразу несколько новых способов взаимодействия с пользователем вне приложения. Держите сводную таблицу с их отличиями.
Переписывание парсера Swift с С++ на Swift

SwiftSyntax – SwiftPM пакет, который умеет парсить любой Swift код в синтаксическое дерево. Он используется в SwiftLint и swift-format. Исторически он был реализован поверх C++ библиотеки, которая привязана к инфраструктуре компилятора Swift. Сейчас стартанула активность по его переписыванию на Swift.

Вы можете либо почитать код, чтобы разобраться, как работают парсеры, либо помочь проекту, репортя баги или исправляя их самостоятельно!
XcLauncher – быстрый доступ к вашим Xcode проектам

XcLauncher – это живущее в трее приложение, которое помогает быстро открывать проекты, над которыми вы работаете.
Configuration Profiles и Apple MDM

- Configuration Profile – это XML файл, описывающий настройки, политики и ограничения, распространяющиеся на корпоративное устройство
- Для создания и подписывания этих профилей есть целый набор специальных инструментов
- MDM — это технология для удаленного управления устройством, позволяющая выполнять на нем команды с сервера
- MDM дает возможность удаленно устанавливать и удалять приложения, обновлять ОС, блокировать устройство
- MDM дает больше возможностей и на уровне клиентских приложений – например, можно получать данные сим-карты вплоть до номера телефона
Разбор ExtensionKit

ExtensionKit – новый фреймворк iOS 16, который позволяет реализовывать плагины для системных приложений или реализовывать собственнцю плагинную систему. Второе, правда, доступно только для macOS.

1️⃣Вы объявляете extension points в своем приложенит
2️⃣Этот API используется вами или сторонними разработчиками, чтобы интегрировать плагины, как с UI, так и без него
3️⃣Общение между хостом и плагином идет через XPC
4️⃣Распространять плагины можно только внутри .app, так что теоретически их даже в App Store залить можно
Xcode Cloud доступен для всех

- Xcode Cloud – новый сервис для CI/CD от Apple, который последний год крутился в закрытой бете
- 25 часов работы агентов в месяц бесплатны
- 100 часов работы в месяц – 50$
- 250 часов работы в месяц – 100$
- 1000 часов работы в месяц – 400$
Maestro – новый фреймворк для автоматизации UI тестов

Ключевая особенность – тест описывается не в коде, а в yaml файле. Создатели говорят, что на уровне core концепций зашили следующие вещи:

- Обработку флакующих сценариев и элементов интерфейса
- Тестирование задач с асинхронными компонентами
- Супер-быстрый раундтрип за счет того, что тесты интерпретируемые
- Очень быстрый сетап

Пока выглядит как решение только для очень простых случаев. К тому же yaml – очень-очень спорный формат. Если кто-то попробует – расскажите в комментах про результаты!
Навигация на стейт-машине

Revolut рассказывают, как устроена стейт-машина в их приложении, управляющая всей навигацией, и упрощающая работу с пошаговыми флоу.
Как реализовать поддержку lock screen виджетов

- API для работы с lock screen виджетами тот же самый, что и для home screen виджетов. Если вы уже поддержали их, все будет сильно проще
- Важно помнить про три разных режима рендеринга виджетов и подстраиваться под них: full-color mode, vibrant mode, accented mode
У Podlodka Crew акция! До 10 сентября на все плейлисты с записями конференций скидка до 20% по промокоду SCHOOL_TIME!🤑

Podlodka Crew – это онлайновые IT-конференции по самым разным направлениям: Android, iOS, Frontend, Backend-разработка, QA, тим- и техлидство, софтскиллы и даже дизайн и продукт! В программе конференций всегда особый упор сделан на прикладные навыки, а значит, даже после окончания сезона есть смысл пересмотреть самые полезные видео и попробовать что-то новое у себя на работе. Поэтому доступ к десяткам часов контента от Podlodka Crew – это отличная инвестиция в свою карьеру и профессиональный кругозор.

Переходите по ссылке ниже, выбирайте плейлисты, вводите промокод SCHOOL_TIME и смотрите записи Podlodka Crew. Отличной учебы!🧑‍🎓
https://podlodka.io/crew-records
Особенности работы со SwiftUI на macOS

Автор приложения Pulse, про которое я рассказывал на прошлой неделе, рассказывает про свой опыт портирования приложения с iOS на macOS.

- Советы по работе с колоночным лэйаутом и навигацией
- Менеджмент окон
- Реализация поиска в списках
- Создание собственного TextView
- Диплинки
Официальная книга про Swift теперь в Open Source

- Apple вынесли свою книгу «The Swift Programming Language» в опенсорс
- Вся книга собирается с помощью DocC – это крутой шаг для инструмента, изначально предполагавшегося только для генерации API reference
Разбор рефакторингов Xcode для async/await

В Xcode есть три рефакторинга, которые помогают конвертить код в поддерживающий Swift Concurrency.

- Convert Function to Async
- Add Async Alternative
- Add Async Wrapper
ViewInspector – библиотека для юнит-тестирования SwiftUI

ViewInspector проходится по графу вьюх и дает прямой доступ к их свойствам и стейту. Библиотека не использует приватный API, работает целиком с помощью рефлексии.
Xcode Playground со всеми фичами Swift 5.7

К релизу iOS 16 Paul Hudson обновил свой обзорный пост по всем изменениям в Swift. А для тех, кто предпочитает все потрогать руками – подготовил Xcode плейграунд.
This media is not supported in your browser
VIEW IN TELEGRAM
DeckUI – Swift DSL для создания презентаций

Простой DSl на Swift, с помощью которого собирается десктопное приложение, ведущее себя как слайды. Идеально для выступлений на митапах!
Новые Toolbar APIs в SwiftUI

- Модификаторы видимости, которые позволяют управлять отображением любых тулбаров: navigation, tab и bottom
- Модификаторы видимости бэкграунда тулбара, с помощью которых можно делать классные анимации
- Управление цветовой схемой каждого тулбара в отдельности
- Отображение контекстного меню по нажатию на заголовок
2024/10/01 22:44:08
Back to Top
HTML Embed Code: