С выходом новых iPhone Pro, наконец, стали актуальны кастомные интенты от приложений в приложение Команды (Shortcuts).
Одна из опций - кастомный Shortcut, который может представлять любую мини программу. Ваше приложение может добавить простую команду, которую будет удобно использовать как в формате самостоятельного действия (открыть последний купленый билет) так и в формате интеграции, которая принимает аргументы и возвращает значение. У меня, к примеру, есть шорткат который я запускаю через Spotlight для создания QR кодов, достаточно скопировать строку в буфер обмена и запустить шорткат QR, чтобы в буфере обмена появился QR код.
Как вы используете шорткаты и используете ли вообще? Верите в бум шорткатов с распространением action button? 👍👎
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👎7👍4
This media is not supported in your browser
VIEW IN TELEGRAM
Быстрый и простой способ получить rootViewController.
В iOS 13 появилась концепция несколько сцен и окон и Apple прекратила поддержку
UIApplication.shared.keyWindow
и UIApplication.shared.windows
в iOS 13 и iOS 15 соответственно.В статье приводится пример как быстро добавить поддержку rootViewController если очень нужно и приводится пример, почему этот способ
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9👎1
Как Airbnb пришли к SwiftUI (10 мин, 🇺🇸 )
Путь Airbnb от самописного декларативного фреймворка🐱 Epoxi к стандарту индустрии - 😀 SwiftUI. Epoxi - фреймворк для декларативного конструирования экранов был оберткой над UIKit, потенциально даже с возможностью Backend-Driven UI. Такие задачи привлекают классных инженеров к созданию фреймворка, но 🚫 не привлекают инженеров к разработке продуктовых фич.
Главный вывод для меня - после миграции на SwiftUI стали счастливы iOS инженеры, 77% заявили что стали более эффективны.
Бизнесу достаточно легко продать BDUI, кроссплатформу, даже если это ReactNative, но это не так просто продать разработчикам, особенно в продуктовых командах.
Искренне рад за Airbnb и их инженерную команду, счастливые разработчики = качественный продукт
Путь Airbnb от самописного декларативного фреймворка
Главный вывод для меня - после миграции на SwiftUI стали счастливы iOS инженеры, 77% заявили что стали более эффективны.
Бизнесу достаточно легко продать BDUI, кроссплатформу, даже если это ReactNative, но это не так просто продать разработчикам, особенно в продуктовых командах.
Искренне рад за Airbnb и их инженерную команду, счастливые разработчики = качественный продукт
Please open Telegram to view this post
VIEW IN TELEGRAM
👍16👎2
В Swift 5.9 появилось упрощение для if и switch выражений, которок позволяет писать более короткий код, опуская ключевое слово return.
Эта фича напоминает новшевство Swift 5.1, SE-0255 - опускание ключевого слова return в однострочных функциях.
Хотя более короткий код не всегда приводит к более читабельному коду, пропуск ключевых слов return внутри выражений if и switch определенно способствует этому.
Ваш код становится легче и естественнее для чтения, что приводит к беспроигрышному результату.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7👎1
Forwarded from Android Broadcast (Кирилл Розов)
Инструмент Emcee от AvitoTech продолжает развиваться и обрастает новыми возможностями (для Android и iOS)
Инструмент параллелит тестирование на разных машинах. Если не хотите настраивать свой сервер, то можно воспользоваться облачной инфраструктурой Emcee.
Больше информации в официальном канале Emcee
Инструмент параллелит тестирование на разных машинах. Если не хотите настраивать свой сервер, то можно воспользоваться облачной инфраструктурой Emcee.
Больше информации в официальном канале Emcee
👍2👎1
В iOS 17 появилась новая View - PhaseAnimator с одноименным модификатором, которые позволяют просто создавать многошаговые анимации. Теперь в SwiftUI есть удобная замена UIKit animateKeyframes и addKeyframe
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5👎1
Проверка подписи бинарных фреймворков — это новая функция в Xcode 15, которая обеспечивает безопасность для разработчиков приложений на основе подписи кода, выполненной авторами SDK.
Xcode 15 автоматически проверяет зависимости вашего приложения и защищает целостность вашей цепочки поставок, предупреждая вас в случае обнаружения проблемы.
Xcode теперь отображает новый раздел в Инспекторе, в котором отображается статус подписи для xcframework, который вы включаете в свое приложение.
В этом разделе содержится информация о подписи, например личность автора. Он покажет, подписан ли xcframework
идентификатор программы разработчиков Apple
самоподписанный сертификат или
в настоящее время не подписан
Xcode запишет идентификатор при первом использовании xcframework и проверит, что он не изменится во время последующих сборок.
Если подпись изменилась, сборка вашего приложения завершится неудачно с соответствующим сообщением об ошибке.
Сборка не удалась при изменении подписи
При выборе ошибки отображается предупреждение, объясняющее, что личность разработчика изменилась, и показывает, как ожидаемая личность соотносится с тем, что присутствует в новой версии. Изменение может указывать на то, что двоичная структура была скомпрометирована. Изменение может быть законным. При необходимости свяжитесь с автором SDK для получения разъяснений через проверенный общедоступный канал.
Авторам SDK настоятельно рекомендуется подписывать свои XCFrameworks, но не принуждают к этому.
Для авторов SDK важно подписывать SDK криптографической подписью, поскольку это позволяет разработчику приложения подтвердить личность и гарантирует, что код не был изменен или подделан после его подписания.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1👎1
Изменения в клавиатуре iOS 17
В iOS 17 клавиатура была перенесена в отдельный процесс, почти полностью работающий вне приложения.
Аспекты этого нового асинхронного подхода теперь могут вносить некоторые небольшие различия в скорости реакции. Особенно если приложение чувствительно к времени ввода текста, изменениям выделения или любым другим операциям, связанным с текстом, следует помнить об изменении.
В iOS 17 клавиатура была перенесена в отдельный процесс, почти полностью работающий вне приложения.
Аспекты этого нового асинхронного подхода теперь могут вносить некоторые небольшие различия в скорости реакции. Особенно если приложение чувствительно к времени ввода текста, изменениям выделения или любым другим операциям, связанным с текстом, следует помнить об изменении.
👍3👎1
Forwarded from Android Broadcast (Кирилл Розов)
В этом году @android_broadcast номинировали на премию Highload++ "за вклад в сообщество".
Прошу вас поддержать мой проект голосом и показать сплоченность мобильного сообщества. Голосование проходит тут
Пост уже был, но голосование запустили с начала и теперь можно отдать не один голос, а три!
Прошу вас поддержать мой проект голосом и показать сплоченность мобильного сообщества. Голосование проходит тут
Пост уже был, но голосование запустили с начала и теперь можно отдать не один голос, а три!
⚡️ Очень крутые новости по доработке 🐛 LLDB дебаггера Swift 5.9
Что это дает для разработчиков:
👉 Вывод переменных в консоли с помощью p и po быстрее и понятнее
👉 Поддержка Generic параметров выражений
👉 Более точное понимание скоупа выражения и переменных
Те самые изменения, которые мы, обычно не замечаем, но они значительно улучшают опыт взаимодействия с языком
* LLDB дебаггер - следующее поколение высокоэффективного дебаггера, являющегося частью LLVM проекта
Что это дает для разработчиков:
👉 Вывод переменных в консоли с помощью p и po быстрее и понятнее
👉 Поддержка Generic параметров выражений
👉 Более точное понимание скоупа выражения и переменных
Те самые изменения, которые мы, обычно не замечаем, но они значительно улучшают опыт взаимодействия с языком
* LLDB дебаггер - следующее поколение высокоэффективного дебаггера, являющегося частью LLVM проекта
👍11👎1
👉
birthdate
- дата рождения👉
birthdateDay
- компонент дня в дате рождения👉
birthdateMonth
- компонент месяца в дате рождения👉
birthdateYear
- компонент года в дате рождения👉
creditCardSecurityCode
- код безопасности карты👉
creditCardName
- все части ФИО, указанные на карте👉
creditCardGivenName
- имя, указанное на карте👉
creditCardMiddleName
- отчество, указанное на карте👉
creditCardFamilyName
- фамилия, указанная на карте👉
creditCardExpiration
- срок действия кредитной карты👉
creditCardExpirationMonth
- компонент месяца срока действия кредитной карты👉
creditCardExpirationYear
- компонент года срока действия кредитной карты👉
creditCardType
- тип кредитной картыЕсли у вас в приложении есть поле ввода для карты или даты рождения, новые инпут типы можно применить уже сегодня, пометив строчку
if #available(iOS 17, *)
Please open Telegram to view this post
VIEW IN TELEGRAM
👍10👎1
В SwiftUI каждый год появляются новые ViewModifier, которые хочется использовать уже сейчас, но для сохранения обратной совместимости не понятно куда вставить if #available. Хочу поделиться с вами своим подходом к опциональным модификаторам, которые помогают подготовиться к миграции на новые API а так же добавить функциональность в те версии где это возможно
1️⃣ Создаем дженерик Wrapper Backport
2️⃣ Добавляем его к View
3️⃣ Добавляем нужную нам реализацию в Backport
4️⃣ Используем тот же ViewModifier только из backport
А как вы решаете эту задачу?
А как вы решаете эту задачу?
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍17👎1