iOS Broadcast
3.31K subscribers
1.68K photos
82 videos
967 links
Подборка новостей и статей для iOS разработчиков.

Новости Kotlin и мультиплатформы @kotlin_broadcast
Новости Android @android_broadcast
Реклама и прочее @android_broadcast_bot
Download Telegram
▶️ Улучшение дизайна приложения для iPad
Самое значительное изменение настигло в этом году iPad, Apple больше не боится выводить на одно поле Mac и iPad и превращает планшеты в полноценные рабочие устройства. Новые подходы к разработке адаптивного интерфеса с окнами приложений и новыми компонентами.
Коротко:
🔵Начните с панели вкладок в качестве навигации
🔵Используйте боковую панель для сложной навигации
🔵В каждом приложении есть регулятор размера, элементы управления окном и строка меню
🔵Открывайте документы в новых окнах
🔵Новый эффект выделения указателя
🔵Никогда не скрывайте пункты меню!

Обновления для iPadOS 26
🟢Изменение размера окна для многозадачности
🟢Новые элементы управления окнами на панели инструментов
🟢Более точный и отзывчивый курсор
🟢Новая строка меню

Оптимизация приложений
🟢Шаблоны навигации: боковые панели и панели вкладок
🟢Адаптация макета к изменениям размера
🟢Использование "эффекта края прокрутки"

Новая система управления окнами
🟢Плавное изменение размера окон
🟢Обертывание панели инструментов вокруг элементов управления окном

Новый курсор
🟢Новая форма и точность
🟢Эффект подсветки из жидкого стекла
🟢Отсутствие намагничивания и привязки к цели

Строка меню iPad
🟢Доступ через перемещение указателя к верхнему краю или свайп вниз
🟢Меню приложения, системные меню и пользовательские меню
🟢Учет организации действий, сочетаний клавиш и неактивных элементов
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🧰🐥 Разработка на Swift под Android
Внутри сообщества официально собирается рабочая группа по созданию Android приложений на Swift. Основная цель - добавить и поддерживать Android как официальную платформу для Swift
Задачи рабочей группы:
🔵Улучшение и поддержка поддержки Android в официальном дистрибутиве Swift
🔵Усовершенствование основных пакетов Swift для работы с идиомами Android
🔵Определение уровней поддержки платформы и работа над достижением официальной поддержки
🔵Определение поддерживаемых уровней и архитектур Android API
🔵Развитие непрерывной интеграции для проекта Swift
🔵Выявление и рекомендация методов взаимодействия Swift и Java SDK для Android
🔵Разработка поддержки для отладки приложений Swift на Android
🔵Консультирование и помощь в добавлении поддержки Android в пакеты Swift сообщества
Общение через Форум Swift для Android и в рабочей группе на форумах Swift. Членство в рабочей группе открыто для всех желающих.

Новость интригующая, хотя в моменте ничего и не даст:
🔴Сейчас речь идет о начале работы рабочей группы, а не о готовом решении
🟢Apple на своем примере смогут показать как использовать swift для разработки под Andoid, т.к. имеют достаточно своих приложений (например, Apple music)
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥23🤔81👏1
🔨Макрос Playground: Запуск фрагментов кода в Xcode canvas
Небольшое но приятное нововведение в Xcode 26 - макрос #Playground для запуска фрагментов кода и превью в Xcode canvas.
🔵Макрос #Playground позволяет быстро экспериментировать с кодом без необходимости определения отдельного кода.
🔵Макрос #Playground можно использовать в любом месте файлов Swift, что делает его полезным дополнением к рабочему процессу.
🔵bitdrift предоставляет инструмент для наблюдения по запросу, созданный специально для мобильных команд.
🔵Новый макрос #Playground является отличным инструментом для быстрого экспериментирования с кодом проекта.
🔵Для работы с макросом #Playground необходимо импортировать фреймворк Playgrounds.
Звучит в качестве примеров использования библиотек прямо из кода. Было бы здорово чтобы разработчики библиотек это начали использовать.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥71
This media is not supported in your browser
VIEW IN TELEGRAM
📱 Разбираемся и улучшаем производительность SwiftUI
Очень поучительная история от Airbnb, они начали использовать SwiftUI еще в 2022 году, повысили скорость разработки и получили проблемы с производительностью приложения.

Архитектура SwiftUI в Airbnb
🔵Airbnb использует самописную UDF библиотеку Epoxy
🔵SwiftUI не всегда хорошо работает с однонаправленными подходами.
🔵SwiftUI использует алгоритм для определения, какие представления нуждаются в перерисовке
🔵Лишние перерисовки снижают производительность.
🔵SwiftUI сравнивает свойства View для определения необходимости перерисовки
🔵Некоторые типы, такие как замыкания, не поддерживаются.
🔵Простые типы данных могут сравниваться по ссылке, а не по значению.
🔵Если представление соответствует Equatable, SwiftUI использует его эквивалентное соответствие.

Проблемы с производительностью
🔴При изменении состояния экрана весь код тела представления полностью пересчитывается.
🔴Это может привести к большому количеству ненужной работы и ухудшению производительности.

Повышение производительности
🟢Реализация декомпозиция на отдельные SwiftUI View позволяет корректно совершать перерисовку
🟢SwiftUI обновляет только те части представления, которые действительно изменились
🟢SwiftLint для анализа сложности представления
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3
🎯 Руководство по промптингу FoundationModels
Создание эффективных управляемых подсказок для FoundationModels имеет свою специфику. Они обучены для работы на устройствах и взаимодействию со SwiftUI.

🟢Ограниченный размер контекста: 4096 токенов для ввода и вывода.
🟢Защита от небезопасного ввода и вывода, что может привести к ложным срабатываниям.
🟢Описание персонажа улучшает генерацию.
🟢Формулировка подсказок лучше работает при наличии четкой команды.
🟢Важно учитываеть ограничение пользовательского ввода для предотвращения неожиданных результатов.
🟢Важно обрабатывать ошибки, возникающие при неправильном вводе пользователя.
🟢LanguageModelSession выдает специализированные ошибки. Необходимо продумать, как справляться с этими ошибками в пользовательском интерфейсе.
🟢С помощью Generable, guided вывода и тестирования на устройстве можно экспериментировать.
🟢Не нужно беспокоиться о форматировании в формате JSON или особенностях удаленного API.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍21
📱 WebKit для SwiftUI
На WWDC25 Apple представила WebView и WebPage для упрощения работы с веб-контентом в SwiftUI. Удивительно, но эти новые API уже доступны начиная с iOS 18.4. Давайте разбираться!
🔵WebPage обеспечивает поддержку состояния загрузки и оценки прогресса.
🔵Для обработки разных состояний, таких как ошибки или перенаправления, есть свойство currentNavigationEvent.
🔵Добавлены элементы управления для сохранения контента, включая селектор типа контента.
🔵Для сохранения снимков, PDF и веб-архивов используются разные методы.
🔵Новый WebArchiveView позволяет отображать сохраненные веб-архивы.
🔵Возможность скроллить к элементу веб-страницы
🔵Расширенные возможности по работе с JavaScript
Новые API значительно упрощают обработку веб-контента в SwiftUI. Все детали в отдельном разделе документации
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from Android Broadcast
This media is not supported in your browser
VIEW IN TELEGRAM
🐱 Lokilizer - open source инструмент для перевода строк. Работает на основе AI с поддержкой различных моделей

Уникальная фича - перевод с 2 языков на другие сразу. Например, с русского и английского.

Приложение разворачивается как сервер. Есть подробная инструкция и Docker образ

Автор описал больше про инструмент в статье
Please open Telegram to view this post
VIEW IN TELEGRAM
4