Казалось бы, как связана iOS разработка с веб-пушами? Это одна из фичей которой я занимался в этом году и могу этим поделиться. Понимание работы нативных Apple пушей помогло мне на коленке собрать MVP пример веб пушей на первой бете iOS 16.4. В отличии от нативных пушей, аккаунт разработчика или сертификат не требуется, все реализовано по веб стандартам Notifications, Permissions и Push API. В статье же мы делимся с сообществом всеми неочевидными проблемами, с которыми столкнулись:
👉 Нюансы процесса доставки транзакционных пушей
👉 Невозможность переподписки
👉 Не имплементирована отписка
👉 Когда iOS устройство перестает принимать пуши
*upd: в последней бете появились звуки у веб пушей
Please open Telegram to view this post
VIEW IN TELEGRAM
👍12👎5
Pointfee, авторы известной архитектуры TCA, анонсировали интеграцию Observation фреймворка. Детали реализации и обсуждение на
Самое интересное тут то, что они реализовали бекпорт Observation на iOS 13
👉 Если вы используете TCA, самое время попробовать мигрировать, проверить компиляцию и тесты
👉 Если не используете, можно посмотреть реализацию бекпорта Observation фреймворка и конкретно на структуру WithPerceptionTracking
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6
Apple, в своей манере, оттходит от стандартов индустрии и вводит свои понятия, такие как таргет и бандл. Если вам нужно объяснить коллегам про что вы говорите или вы сами не понимаете чем таргет отличается от модуля и в каком случае нужно выделять отдельный бандл для ресурсов, этот лонгрид для вас!
👉 Введение в таргеты и бандлы
👉 Рассмотрение концепции бандлов
👉 Изучение внутренностей таргетов
👉 Лучшие практики с примерами использования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍10
Полезное напоминание от Apple: впереди самый загруженный сезон ревью App Store. Убедитесь, что ваши приложения обновлены и готовы к предстоящим праздникам. В этом году команда ревьюверов будет работать на праздниках. В среднем 90% заявок рассматриваются менее чем за 24 часа. Однако проверка может занять немного больше времени (с 22 по 27 декабря).
Please open Telegram to view this post
VIEW IN TELEGRAM
Apple
Get your apps ready for the holidays - Latest News - Apple Developer
The busiest season on the App Store is almost here! Make sure your apps and games are up to date and ready in advance of the upcoming holidays. We’ll remain open throughout the season and look forward to accepting your submissions. On average, 90% of submissions…
👍4
Периодически пытаясь интегрировать в свою рутину AI, пробую разные инструменты. Все что было доступно для Xcode работает откровенно плохо, так что решил зайти с другой стороны. Инструмент который отлично работает с AI помощником Github copilot - VSCode и прикрутить к нему поддержку Swift. Обсуждая свой опыт с коллегами, обнаружил, что не все знают о существовании официальной реализации LSP (Language Server Protocol) для Swift. Если вы тоже не знаете что можно добавить поддержку Swift в VSCode, нашел для вас простую и ламповую статью на NSHipster
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7❤1
Если вы тоже пытаетесь интегрировать макросы в свой проект, возможно, вы уже столкнулись со сложностями интеграции их в Cocoapods. В данной статье рассматривается на примере как нужно сконфигурировать .podspec файл и подключить к проекту для разработки и тестирования, все достаточно просто. А если вы хотите использовать уже доступный макрос, который не поддерживает Cocoapods, вот статья рассматривающая решения этого кейса.
Please open Telegram to view this post
VIEW IN TELEGRAM
Регулярный разбор обновлений, в преддверии релиза Xcode 15.1:
🐛 Исправили краш в рантайме на iOS 14, в кейсе слабого определения символов
🐛 Исправили провисание при первом выполнении Unit/UI тестов
🐛 Исправили возможность использования макросов в Playground
🐛 Исправили скачивание последней версии iOS симмулятора, при наличии более старой
⚠️ @IBDesignable задепрекейтили, 🫡
🎁 Xcode Cloud получил бесплатный тариф, 25 часов в месяц
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7
Apple, наконец, дала пояснения по манифесту для сторонних либ, давайте разбираться!
🗓5 июня в рамках WWDC23 Apple анонсировала новый манифест приватности для сторонних SDK, новость, видео с WWDC
🗓8 июня появилась документация по заполнению данного манифест-файла
🗓7 декабря появились новые данные, что начиная с "весны 2024" загруженные ipa должны содержать манифест фалы для сторонних зависимостей
🗓7 декабря Apple опубликовала список сторонних зависимостей, которые обязательно должны будут содержать манифест файлы, в списке перечислены такие как:
📦Alamofire
📦Charts
📦Kingfisher
📦Lottie
📦RealmSwift
📦RxSwift
📦SwiftyJSON
Что делать с этой информацией:
1️⃣ Сматчить ваш список зависимостей со списком Apple
2️⃣ Завести задачку с датой выполнения 1 марта 2024 (первый день весны)
3️⃣ Проверить все ли версии в проекте содержат Manifest (например, Issue в Alamofire)
4️⃣ Следить за обновлениями Apple с точными датами
Please open Telegram to view this post
VIEW IN TELEGRAM
👍11❤2🔥2
Вышла iOS 17.2, главным нововведением которой стало приложение Дневник (Journal).
Давайте рассмотрим это приложение как разработчики. На WWDC23, Apple представила новый API для предоставления саджестов дневнику. Нам предлагается обширный API, приправленый повсеместной приватностью
1️⃣ Поддерживается несколько типов ассетов:
🤸Активность
🎧 Медиа
👫Контакты
📷Фото
📍Локация
2️⃣ Новый пикер для интеграции поверх ваших приложений с простой интеграцией
3️⃣ Ограничения в приватности, пользователь может выбрать что готов предоставить
#wwdc23
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8❤2
В своем посте на хабре "Насколько Swift удобен для DSL?", я вскользь упоминал про свои снипеты assignOnWeak и методе weakify. В представленной либе, автор пошел дальше и сделал простую библиотеку для всех возможных случаев с Readme и примерами
publisher
.sink(weak(ThisClass.handle))
.store(in: &cancellables)
var userNameBinding: Binding<String> = .init(
set: unowned(\.userName),
get: unowned(\.userName)
)
networkManager.performTask(weak(
capture: (userId, chatId), ThisClass.process)
)
#weak #swift
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2🔥2
SwiftData как замена CoreData
Опубликовали мой доклад с Mobius, про внутреннее устройство SwiftData и мои замеры производительности. Уже работаю над постом на Хабр, а пока можно посмотреть в формате доклада🥳
Опубликовали мой доклад с Mobius, про внутреннее устройство SwiftData и мои замеры производительности. Уже работаю над постом на Хабр, а пока можно посмотреть в формате доклада
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥21👍5
Apple опубликовала новость с призывом начать тестирование новых бета версий iOS и Xcode. Что там нового:
Xcode 15.2: 24!! пункта исправлений VisionOS и ничего больше. Пахнет скорым релизом Vision Pro
iOS 17.3:
👉 Новая защита украденных устройств, которая делает ваш смартфон еще надежнее, даже если к нему получили пароль
👉 Поддержка RCS для полной совместимости СМС-сообщений между Айфоном и Андроид
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2
Внезапно, Apple анонсировала новую программу для разработчиков, позволяющую предлагать скидки на встроенные подписки, исходя из подписок приложений конкурентов
Please open Telegram to view this post
VIEW IN TELEGRAM
Apple
Announcing contingent pricing for subscriptions - Latest News - Apple Developer
Contingent pricing for subscriptions on the App Store — a new feature that helps you attract and retain subscribers — lets you give customers a discounted subscription price as long as they’re actively subscribed to a different subscription. It can be used…
🤔3
Современные шаблоны навигации
Периодически приходится обсуждать с коллегами различные подходы к навигации в мобильных приложениях. На этой странице собраны все популярные шаблоны навигации для организации экранов в мобильных приложениях. Особенно радует присутствие ссылок на Apple HIG, актуальную сессию WWDC22 про навигацию в iOS и книгу O'Relly про дизайн интерфейсов. Если нужно обсудить навигацию, очень удобно использовать данную страницу в качестве референса
Периодически приходится обсуждать с коллегами различные подходы к навигации в мобильных приложениях. На этой странице собраны все популярные шаблоны навигации для организации экранов в мобильных приложениях. Особенно радует присутствие ссылок на Apple HIG, актуальную сессию WWDC22 про навигацию в iOS и книгу O'Relly про дизайн интерфейсов. Если нужно обсудить навигацию, очень удобно использовать данную страницу в качестве референса
👍10❤2