iOS Good Reads – swift, разработка мобильных приложений, архитектура, блокчейн, VR, AR, карьера, IT
12.5K subscribers
699 photos
65 videos
4.08K links
Самые интересные статьи, видео и новости, связанные с iOS разработкой. Не больше трёх материалов в день.

Регистрация в РКН: https://gosuslugi.ru/snet/67b464d698a28c4e866d827a

Размещение рекламы: @tanyasanovna
Download Telegram
Скидки на плейлисты iOS Crew

Мы с командой запустили распродажу всех плейлистов Подлодки под Черную пятницу. Скидка накопительная, больше плейлистов – больше скидон. Вот несколько особенно крутых, которые рекомендую вам посмотреть:

🏎️Перфоманс и профайлинг с кучей воркшопов по разным инструментам и практикам
🌈Анимации: серия воркшопов от простых к самым сложным визуальным эффектам
🤯iOS под капотом: хардкорнейшие сессии про кишки iOS SDK, компилятора и билд системы
🧱Techlead Crew: Проектируем с нуля – для тех, кто хочет вкачать свои архитектурные навыки

Я опоздал рассказать вам про акцию, поэтому лучше поспешить – мы закроем ее уже завтра.

👉Магазин плейлистов
🤡46👍4🔥2
Скрытие информации Lock Screen Widgets в заблокированном устройстве

- Пользователь может запретить всем lock screen виджетам отображать информацию на заблокированном экране устройства. Но эта настройка довольно глубоко спрятана, а для некоторых типов приложений приватность – критична.
- Чтобы всегда скрывать информацию, нужно сделать две вещи – подкрутить Entitlements в приложении, добавив специальный флаг, и добавить виджету модификатор privacySensitive.

Перевод на русский язык
👍16
This media is not supported in your browser
VIEW IN TELEGRAM
iOS на YaTalks: уже 3 и 4 декабря

На YaTalks, традиционной конференции Яндекса для IT-комьюнити, один из треков посвятили mobile. В нем будет несколько докладов про iOS:

— Умная камера: как встроить в iOS приложение распознавание текста для незрячих.
— Подводные камни локализации iOS-приложений.
— Как iOS анализирует наше здоровье: HealthKit, ResearchKit, CareKit, Activity и какие датчики это считывают.

Кроме докладов организаторы YaTalks подготовили множество других форматов: дискуссии, дебаты, питчинг опенсорс-проектов, рэндом-кофе и индивидуальные консультации с экспертами. Скучно точно не будет.

Зарегистрироваться
🤡33🔥16👍2👎2
Протокол Layout в SwiftUI: кэширование

- SwiftUI умеет автоматически кешировать часть расчетов кастомного лэйаута, но гораздо эффективнее разобраться с кэшированием самостоятельно.
- У протокола Layout есть две функции – makeCache и updateCache, которые позволяют управлять состоянием закешированных расчетов.
- Кэш можно обновлять в функциях sizeThatFits и placeSubviews.

Перевод на русский язык
👍22😁3
Консультации с экспертами по работе с App Store

До 8 декабря Apple проводит консультации разработчиков со своими экспертами по различным аспектам работы с App Store: продвижению, оформлению страницы, работе с TestFlight. Формат – презентация по теме и Q&A после нее.
👍7👎2
Подборка материалов от Apple про продвижение приложения в App Store

За последний год команда Apple потратила много сил на то, чтобы улучшить документацию в областях, не связанных непосредственно с написанием кода. Один из таких обновленных разделов – статьи про работу с App Store.

👀 Страница приложения и поисковая оптимизация (кастомные лендинги приложений, тестирование страниц, получение фичеринга)
💰Бизнес и аналитика (снижение комиссии до 15%, сравнение бизнес-моделей, бандлинг)
🤩User Engagement (локализация, советы по онбордингу, работа с обновлениями)
🔥9🤡3
Тред иконок приложений, сгенерированных Midjourney

Прогресс нейронок, генерирующих иллюстрации, сделал более доступными и красивые иконки для ваших пет-проектов. Посмотрите, какая красота получается!
👍7417❤‍🔥8🔥5
Модификатор clipped() в SwiftUI не влияет на hit test

- clipped() прячет контент вьюшки, находящийся за пределами ее границ. Но невидимая часть вьюшки все равно продолжает принимать на себя все нажатия, а компоненты, находящиеся под ней, невозможно нажать.
- Чтобы это исправить, используйте дополнительно другой модификатор – contentShape(). Он определяет hit testing area для компонента.

Перевод на русский язык
👍41🤯16😁4
Статистика по использованию различных размеров Dynamic Size шрифта

David Smith поделился статистикой из своих приложений, которая должна быть +/- репрезентативна – у него миллионы пользователей. Ожидаемо, больше всего у L, но удивляет популярность размера XS.
👍17👎2
Настройка окружений с помощью .xcconfig

Если в вашем проекте много значений, которые вы меняете в зависимости от окружения, например, локального, тестового и продакшн, можно значительно упростить работу с ними, положив их в .xcconfig, откуда затем использовать в Info.plist и в коде.

Перевод на русский язык
👍23🤡2🔥1
Media is too big
VIEW IN TELEGRAM
Пример использования UIScreenshotServiceDelegate

UIScreenshotServiceDelegate – API, который позволяет переопределить поведение приложения при снятии скриншота. Подумайте о том, в каких сценариях пользователь скриншотит ваше приложение, и попробуйте подготовить контент так, чтобы им было удобнее пользоваться. Например, в MindNode таким образом можно легко экспортнуть майндмэп в PDF и пошарить его с кем-нибудь.
👍23❤‍🔥3🔥2
CocoaHeads на Кипре

Друзья стартанули локальное кипрское ответвление CocoaHeads. Если вы вдруг оказались на острове, обязательно загляните к ним 15 декабря. В программе – доклад про some и any в Swift, нетворкинг и другая веселуха.
👍40🤡37
dataTile – визуальный логгер поверх os_log()

dataTile – новый инструмент, который помогает визуализировать большое количество логов в приложении. Работает только с симулятором. Пока находится в бесплатной бете.

💻Короткое демо-видео
👀Блогпост про запуск
🔗Ссылка на загрузку

Перевод на русский язык
🔥7🤡41👍1
Послушали дискуссию мобильных разработчиков из Яндекса в формате ютуб-шоу 1+1.
Из особо интересного – размышления о фреймворках.

Например Flutter – хороший фреймворк, особенно, если вам нужно быстро и дешево получить несколько платформ сразу, в том числе и web. Но он не всегда корректно поддерживается iOS, а еще недружелюбен к вносимым изменениям. Можно согласиться с тем, что React Native все же более гибок в этом плане.

Еще в видео обсудили особенности работы над супераппами, mobile разработчикам рекомендуем посмотреть целиком.
🤡62👍5🔥21
This media is not supported in your browser
VIEW IN TELEGRAM
Декларативные анимации в AirBnb

- В AirBnb активно используют анимированные переходы между контроллерами. Стандартные императивные подходы для определения таких анимаций – сложные, хрупкие, требуют много бойлерплейта.
- Вместо этого, команда AirBnb перешла на декларативные анимации. При этом подходе надо определить начальный и конечный экраны, а затем описать поведение каждого из элементов при переходе. Все остальное работает само по себе.
- Сам фреймворк они не шарят, но подход и примеры расписали довольно подробно.

Перевод на русский язык
🔥38🤡9👍4
This media is not supported in your browser
VIEW IN TELEGRAM
Релиз Lottie 4.0

Раз мы начали день статьей от AirBnb, вот еще одна новость от их команды – новый релиз Lottie, движка для рендеринга анимаций из After Effect.

- Движок рендеринга полностью переписан на CoreAnimation, благодаря чему анимации переехали на GPU, перестали грузить CPU, и перфоманс значительно улучшился.
- Переписан декодер описаний анимаций, работа ускорилась в два раза.
- Помимо JSON, анимации можно определять в более кратком формате dotLottie.

Перевод на русский язык
🔥131👍11👏4❤‍🔥1