Telegram Web Link
TCA Action Boundaries

При использовании архитектуры TCA в очень больших приложениях возникают проблемы, которые не решаются стандартными подходами. В статье разбирается какую проблему несет в себе стандартная реализация Action.
🔥17👎3🤯1
Релиз Pulse 2.0

Pulse – это система работы с логами для iOS и macOS приложений. Она записывает логи и сетевые запросы и позволяет удобно с ними работать. Состоит из встраиваемой в приложение библиотеки, экрана-консоли логов и сетевых запросов и приложений для анализа логов.

В версии 2.0 появилось много новых фичей:

- Отображение статуса pending сетевых запросов
- Улучшенное отображение метрик сетевых запросов, в том числе средней продолжительности и размеров запросов и ответов сервера
- Подробное отображение ошибок URLSession
- Улучшенное macOS приложение для анализа логов
🔥45👍8🌚32
DivKit — новый фреймворк для Server-Driven UI

- Позволяет управлять с сервера как отдельным элементом интерфейса, так и всем экраном
- Поддерживает server-driven ui второго поколения: описываются не параметры кастомизации крупных блоков, а вся верстка блока в целом
- Создан и применялся в приложениях Яндекса, сейчас опубликован командой на гитхабе.
🤡65👍29👎94🤔1🤬1
Как отловить приложения, которые трекают ваши действия во встроенном браузере

На прошлой неделе Felix Krause выпустил исследование, в котором он проверил, какие скрипты инжектятся во встроенные браузеры разных социальных сетей. TikTok, например, трекает в нем все ваши действия, вплоть до вводимых данных, в том числе и паролей.

Он же запустил сайт InAppBrowser.com. При заходе на него вы увидите, каким образом браузер модифицировал код страницы.
🔥42👍2
Визуализация алгоритмов сортировки на Swift Charts

Автор видео реализует различные алгоритмы сортировки на Swift и визуализирует их на графиках из Swift Charts.

🫧Bubble Sort
☝️Selection Sort
📥 Insertion Sort
💨 Quick Sort
👍37🔥14
SwiftUI и Large Content Viewer

- В iOS доступны семь дефолтных размеров текста – от супер маленького до супер большого
- Некоторые системные компоненты физически не могут показывать текст слишком большого размера, и вместо этого по лонг тапу показывает увеличенную вьюшку. Эта функциональность называется Large Content Viewer
- В посте разбирается, как ее поддержать в своих кастомных компонентах и настроить Large Content Viewer для своего кейса
😢9👍5🤔1
Осенняя презентация новых девайсов Apple

Apple анонсировали традиционный осенний ивент, на котором обычно показывают новые часы и айфоны. Подключайтесь к трансляции 7 сентября в 20 часов по Москве.
👍243👎3😁1😱1
Советы по работе с WidgetKit

- Виджеты получают от приложений «таймлайны» – массивы моделек для отображения. Даже если вам не нужно отображать всю последовательность сразу, это полезная техника для обновления стейта вовремя
- Если вы предоставляете данные для отображения на несколько часов вперед, не забывайте обновить их вручную, если они перестанут быть актуальными
- Если виджет работает с данными, которые недоступны в залоченном состоянии телефона, настройте правильный кеш. Пример можно посмотреть здесь
👍16👎2
Настройка кастомных Launch Screen для разных диплинков

Начиная с Xcode 12, можно конфигурировать отдельные launch screens для каждого из диплинков, которые обрабатывает приложение.
🔥861👍1💅1
Разбор алгоритма diff’инга в SwiftUI

Очень детальный разбор всех нюансов работы алгоритма, который определяет, когда и как нужно изменить лейаут.
👍24🔥7🤯1
SwiftTUI – аналог SwiftUI для консольных интерфейсов

Автор предыдущей статьи не просто так разбирался с устройством SwiftUI. Он написал собственную реализацию его движка для того, чтобы легко строить поверх него текстовые интерйесы для консоли.
👍20🔥185🤯3
Решение проблемы повышенного потребления батареи у Xcode 14 beta

- Иногда при запуске симулятора iOS 16 в Xcode 14 beta резко вырастает нагрузка на CPU и потребление батареи
- В статье разбирается воркэраунд, который помогает временно решить проблему
❤‍🔥9👍2
Отличия Live Screen Widgets и Live Activities

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

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

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

XcLauncher – это живущее в трее приложение, которое помогает быстро открывать проекты, над которыми вы работаете.
🤡72🤔18🔥4👎3😢1
Configuration Profiles и Apple MDM

- Configuration Profile – это XML файл, описывающий настройки, политики и ограничения, распространяющиеся на корпоративное устройство
- Для создания и подписывания этих профилей есть целый набор специальных инструментов
- MDM — это технология для удаленного управления устройством, позволяющая выполнять на нем команды с сервера
- MDM дает возможность удаленно устанавливать и удалять приложения, обновлять ОС, блокировать устройство
- MDM дает больше возможностей и на уровне клиентских приложений – например, можно получать данные сим-карты вплоть до номера телефона
👍12❤‍🔥2
2025/07/08 18:56:59
Back to Top
HTML Embed Code: