Достаточно давно (upd: iOS 10.3) появилась опция делать динамические иконки вашего приложения. Если вы еще не сделали, а очень хотите, то вот материал о том, как это сделать.
Никакого «вау эффекта» это не вызовет ни у кого из пользователей, конечно, но и сделать это достаточно просто .
https://medium.com/naukri-engineering/how-to-achieve-dynamic-app-icon-in-ios-a2f13691af75
Никакого «вау эффекта» это не вызовет ни у кого из пользователей, конечно, но и сделать это достаточно просто .
https://medium.com/naukri-engineering/how-to-achieve-dynamic-app-icon-in-ios-a2f13691af75
Medium
How to achieve dynamic app icon in iOS?
Personalisation is a powerful tool in all steps of mobile marketing 📈
Знаете, что такое «required reason API»? Даже не знаю, как это нормально перевести. В общем это API, использование которого нужно объяснить. Ну или в прямом переводе «нужны причины». В общем теперь Apple требует, чтобы вы объясняли, зачем вам то или иное API, которое Apple считает очень чувствительным для юзера. Это чтобы вы не делали всякие фингерпринты, чтобы в целом было тяжелее детектить один и тот же девайс и так далее.
В этой статье сможете чуть подробнее об этом прочитать и использовать скрипт из статьи, чтобы понять, что из «required reason API» используется в вашем приложении. Возможно, сторонние SDK используете что-то такое.
Лучше знать сейчас и перепроверить нужно ли оно вам, чем подвинусть на ревью в сторе!
https://blog.eidinger.info/how-to-check-if-you-use-a-required-reason-api
В этой статье сможете чуть подробнее об этом прочитать и использовать скрипт из статьи, чтобы понять, что из «required reason API» используется в вашем приложении. Возможно, сторонние SDK используете что-то такое.
Лучше знать сейчас и перепроверить нужно ли оно вам, чем подвинусть на ревью в сторе!
https://blog.eidinger.info/how-to-check-if-you-use-a-required-reason-api
Swifty Tech by Marco Eidinger
How to check if you use a required reason API
Learn about Apple's required reason APIs (which need to be declared in your app's privacy manifest) and use a shell script helping you to identity such APIs
This media is not supported in your browser
VIEW IN TELEGRAM
Небольшой обучающий материал по анимациям.
На этот раз про то, как анимировать используя новые
https://augmentedcode.io/2023/09/04/animating-with-phaseanimator-in-swiftui/
На этот раз про то, как анимировать используя новые
phase animation view modifiers
.https://augmentedcode.io/2023/09/04/animating-with-phaseanimator-in-swiftui/
При разработке с UIKit история размеров очень понятна. Есть точные координаты, размеры и всё, что нужно.
Со SwiftUI дела обстоят немного иначе 🤔
Вот большая (на 15 минут чтения) статья обо всём этом. Автор разбирает процесс верстки на SwiftUI, контейнеры, вьюшки, required size и многое другое.
По сути полезно всем, кто использует SwiftUI или планирует 👍
https://betterprogramming.pub/swiftui-layout-the-mystery-of-size-b82ce99e61d8
Со SwiftUI дела обстоят немного иначе 🤔
Вот большая (на 15 минут чтения) статья обо всём этом. Автор разбирает процесс верстки на SwiftUI, контейнеры, вьюшки, required size и многое другое.
По сути полезно всем, кто использует SwiftUI или планирует 👍
https://betterprogramming.pub/swiftui-layout-the-mystery-of-size-b82ce99e61d8
Medium
SwiftUI Layout — The Mystery of Size
Explaining, understanding, and using SwiftUI’s many sizes
Про новый Predicate Macro в Swift 5.9!
По сути просто замена старой работы с предикатами. Коротко и понятно.
Дает возможность писать type-safe и читаемый код для поиска и фильтрации! 👍
https://www.avanderlee.com/swift/predicate-macro-filtering-searching/
По сути просто замена старой работы с предикатами. Коротко и понятно.
Дает возможность писать type-safe и читаемый код для поиска и фильтрации! 👍
https://www.avanderlee.com/swift/predicate-macro-filtering-searching/
SwiftLee
Predicate Macro in Swift for filtering and searching
The #Predicate Macro allows you to filter or search a collection of data using type-safe and readable higher-level Swift code.
Небольшой обучающий материал о том, как сделать
Это когда вы трясете телефон, чтобы отменить последнее действие.
https://blog.thomasdurand.fr/story/2023-09-04-shake-to-undo-swiftui
shake to undo
на SwiftUI!Это когда вы трясете телефон, чтобы отменить последнее действие.
https://blog.thomasdurand.fr/story/2023-09-04-shake-to-undo-swiftui
Dean’s blog
Shake to undo in a SwiftUI app
Shake to undo is a more than common UI on iOS. From Notes, Reminder and, well, mostly all apps, users expect it.
This is why for my latest app SharePal, I decided it would be a nice to have for when the user manages his data.
This is why for my latest app SharePal, I decided it would be a nice to have for when the user manages his data.
iOS.Devs
Наверняка многие из вас знакомы с AppMetrica. Теперь там появились еще и A/B эксперименты 📊 Если вы хотите проверить гипотезу и принять взвешенное решение, основанное на данных, об изменениях в своем продукте, то A/B тесты вам точно нужны. По сути это альтернатива…
Теперь открыт исходный код AppMetrica!
Если хотите, можете даже модифицировать под свои нужды, только с указанием авторства.
В опенсорсе доступны все функции AppMetrica: сбор статистики по источникам трафика, аудитории и сценариям использования и проведение A/B-тестов, управление конфигурацией приложения.
А сама технология, что важно, соответствует требованиям App Store, Google Play и других магазинов приложений. Не использует ничего из приватных и запрещенных API.
Подробнее про всё это можно узнать на Хабре.
Если хотите, можете даже модифицировать под свои нужды, только с указанием авторства.
В опенсорсе доступны все функции AppMetrica: сбор статистики по источникам трафика, аудитории и сценариям использования и проведение A/B-тестов, управление конфигурацией приложения.
А сама технология, что важно, соответствует требованиям App Store, Google Play и других магазинов приложений. Не использует ничего из приватных и запрещенных API.
Подробнее про всё это можно узнать на Хабре.
Хабр
SDK AppMetrica — теперь в опенсорсе
AppMetrica — это инструмент для аналитики мобильных приложений. С помощью него можно формировать отчёты по источникам трафика, ключевым показателям мобильного приложения, аудитории и сценариям...
В Swift 5.9 появились «короткие» if-ы и switch-и. А конкретно в формате expressions.
Коротко, но с примерами об этом! 👍
https://www.avanderlee.com/swift/if-switch-expressions/
Коротко, но с примерами об этом! 👍
https://www.avanderlee.com/swift/if-switch-expressions/
SwiftLee
If and switch expressions in Swift
By using if and switch statements as expressions, you can omit the return keyword and reduce the lines of code while maintaining readability.
Небольшая статья про развитие VR и AR. От самых первых шагов до сегодняшних дней и Apple.
Это не техническая статья, а просто немного истории и размышлений автора, но выглядит интересно.
https://martiancraft.com/blog/2023/06/evolution-of-vr-and-ar/
Это не техническая статья, а просто немного истории и размышлений автора, но выглядит интересно.
https://martiancraft.com/blog/2023/06/evolution-of-vr-and-ar/
Если идея писать приложение разбивая его на модули и подключая через SPM вам кажется уже скучной, то вот новая идея!
App Intent Driven Development. То есть писать всё, как App Intent-ы, чтобы потом легко подключать и использовать в разных частях. На самом деле структурировать код это, конечно, поможет, но есть и другие варианты.
Вряд ли это то, что стоит брать на вооружение прямо так сходу, но хотя бы ознакомиться с предложением можно 🙃
Тем более, что статья маленькая, а какие-то здравые идеи всё же есть.
https://www.avanderlee.com/swift/app-intent-driven-development/
App Intent Driven Development. То есть писать всё, как App Intent-ы, чтобы потом легко подключать и использовать в разных частях. На самом деле структурировать код это, конечно, поможет, но есть и другие варианты.
Вряд ли это то, что стоит брать на вооружение прямо так сходу, но хотя бы ознакомиться с предложением можно 🙃
Тем более, что статья маленькая, а какие-то здравые идеи всё же есть.
https://www.avanderlee.com/swift/app-intent-driven-development/
SwiftLee
App Intent driven development in Swift and SwiftUI
By defining your actions and data as an App Intent, your code becomes reusable for both system-level services as your main app.
Мы уже как-то постили материал про Live Activity в iOS, но тут вышла очень большая и подробная статья на эту же тему, поэтому нельзя не поделиться.
Собственно статья о том, как сделать Live Activity. Прямо по шагам всё разложено.
На самом деле классный инструмент, много кейсов можно покрыть. От отображения счета в матче, до сроков доставки и много чего еще.
https://medium.com/kinandcartacreated/how-to-build-ios-live-activity-d1b2f238819e
Собственно статья о том, как сделать Live Activity. Прямо по шагам всё разложено.
На самом деле классный инструмент, много кейсов можно покрыть. От отображения счета в матче, до сроков доставки и много чего еще.
https://medium.com/kinandcartacreated/how-to-build-ios-live-activity-d1b2f238819e
Очень большой, очень детальный, очень свежий и очень крутой материал про MapKit + SwiftUI + iOS 17.
Ну дейсвительно подробно и хорошо описано. Для обучения и знакомства с Kit-ом вообще идеальный материал.
https://medium.com/simform-engineering/mapkit-swiftui-in-ios-17-1fec82c3bf00
Ну дейсвительно подробно и хорошо описано. Для обучения и знакомства с Kit-ом вообще идеальный материал.
https://medium.com/simform-engineering/mapkit-swiftui-in-ios-17-1fec82c3bf00
Medium
MapKit 🤝 SwiftUI in iOS 17
Implement MapKit APIs introduced at WWDC 2023 for SwiftUI with Xcode 15.
Большая статья от Airbnb, где они рассказывают, как и почему перешли с Epoxy (библиотечка для UI) и UIKit к SwiftUI, и используют его сейчас в своем приложении.
Интересный они путь прошли, конечно, от адептов React native, до UI библиотек с нативным UIKit и до SwiftUI сейчас.
https://medium.com/airbnb-engineering/unlocking-swiftui-at-airbnb-ea58f50cde49
Интересный они путь прошли, конечно, от адептов React native, до UI библиотек с нативным UIKit и до SwiftUI сейчас.
https://medium.com/airbnb-engineering/unlocking-swiftui-at-airbnb-ea58f50cde49
Medium
Unlocking SwiftUI at Airbnb
How Airbnb adopted SwiftUI in our iOS app
Если вдруг пропустили: Swift 5.9 вышел. Вот список апдейтов!
https://www.swift.org/blog/swift-5.9-released
https://www.swift.org/blog/swift-5.9-released
Swift.org
Swift 5.9 Released
Swift 5.9 is now available! 🎉
И в догонку ко вчерашней статье. Материал про одну из новых фич Swift 5.9. Про Value and Type parameter packs. Выглядит эта штука реально классно, главное не переусердствовать с использованием 🙃
https://www.avanderlee.com/swift/value-and-type-parameter-packs/
https://www.avanderlee.com/swift/value-and-type-parameter-packs/
SwiftLee
Value and Type parameter packs in Swift explained with examples
Value and type parameter packs allow you to write generic functions that accept an arbitrary number of arguments with distinct types
This media is not supported in your browser
VIEW IN TELEGRAM
Неплохой обучащий материал для новичков, чтобы разобраться в том, что такое struct, class и actor в Swift.
Не всё объясняется так же хорошо, как value vs reference на этой гифке, но для новичков всё равно много полезного будет👍
https://medium.com/@ganeshrajugalla/swift-struct-class-actor-4f5df683aa9e
Не всё объясняется так же хорошо, как value vs reference на этой гифке, но для новичков всё равно много полезного будет👍
https://medium.com/@ganeshrajugalla/swift-struct-class-actor-4f5df683aa9e
Мы постили несколько статей по разобру полетов с WWDC. Там было очень много обновлений по StoreKit 2 и всему, что связано с in-app-ами.
Одной из новых крутых (потенциально) штук является
Если у таких экранов будет неплохая конверсия в покупку, то звучит действительно круто, но сомневаюсь, что эти экраны смогут полностью заменить кастомные красивые и более продающие экраны, но нужно тестировать.
Так вот касаемо этой
Держите статью про неё со всеми примерами и объяснениями.
https://betterprogramming.pub/meet-storekit-subscriptionstoreview-in-ios-17-bdbe7a827a9
Одной из новых крутых (потенциально) штук является
SubscriptionStoreView
, которая упрощает процесс верстки paywall-ов. А точнее в целом (потенциально) убирает необходимость собирать такие экраны, а дает такую вьюшку из коробки.Если у таких экранов будет неплохая конверсия в покупку, то звучит действительно круто, но сомневаюсь, что эти экраны смогут полностью заменить кастомные красивые и более продающие экраны, но нужно тестировать.
Так вот касаемо этой
SubscriptionStoreView
.Держите статью про неё со всеми примерами и объяснениями.
https://betterprogramming.pub/meet-storekit-subscriptionstoreview-in-ios-17-bdbe7a827a9
Небольшой материал по улучшениям процесса дебагинга в Swift 5.9 🕵️♂️
Не сказать, что много крутого, но всё равно лучше, чем было.
- Чуть апдейтнули
- Улучшили работу с дженериками
- Научили lldb разделять входные параметры в функцию и параметр с таким же именем внутри функции
- Перестали печатать участок памяти для объектов, которые еще не проинициализированы. Честно пишут, что объекта нет.
Подробнее смотрите в статье.
https://www.swift.org/blog/whats-new-swift-debugging-5.9/
Не сказать, что много крутого, но всё равно лучше, чем было.
- Чуть апдейтнули
p
и po
- Улучшили работу с дженериками
- Научили lldb разделять входные параметры в функцию и параметр с таким же именем внутри функции
- Перестали печатать участок памяти для объектов, которые еще не проинициализированы. Честно пишут, что объекта нет.
Подробнее смотрите в статье.
https://www.swift.org/blog/whats-new-swift-debugging-5.9/
Swift.org
Debugging Improvements in Swift 5.9
Swift 5.9 introduced a number of new debugging features to the compiler and LLDB debugger.
Актуальный материал про то, какую же минимальную версию iOS всё-таки поддерживать в вашем приложении?
Тут без какого-либо пушинга. Скорее о том, на что нужно смотреть и о чём думать, когда такие решения принимаются.
Плюс для конкретно вашего кейса могут и еще быть различные причины поддерживать /не поддерживать ту или иную версию iOS, но этот материал может помочь с этими размышлениями! 🧐
https://www.avanderlee.com/workflow/minimum-ios-version/
Тут без какого-либо пушинга. Скорее о том, на что нужно смотреть и о чём думать, когда такие решения принимаются.
Плюс для конкретно вашего кейса могут и еще быть различные причины поддерживать /не поддерживать ту или иную версию iOS, но этот материал может помочь с этими размышлениями! 🧐
https://www.avanderlee.com/workflow/minimum-ios-version/
SwiftLee
Picking your minimum iOS version to support
Which minimum iOS version should you support? Which devices will I drop support for and how to decide based on facts. Convince your colleagues with data.
Большая статья для любителей покопаться во внутренностях Swift-а!
Подробный материал о том, как устроен async/await внутри!
Про память, про потоки, про проблемы, про вообще всё, что нужно знать о внутренней кухне async/await 🔥
https://swiftrocks.com/how-async-await-works-internally-in-swift
Подробный материал о том, как устроен async/await внутри!
Про память, про потоки, про проблемы, про вообще всё, что нужно знать о внутренней кухне async/await 🔥
https://swiftrocks.com/how-async-await-works-internally-in-swift
Swiftrocks
How async/await works internally in Swift
You probably know how to use async/await. But have you ever wondered how it works under the hood?