Нашёл офигенное видео:
Apple’s Widget Backdoor
Что внутри:
👉 clockHandRotationEffect — приватное API из старых SDK. Позволяет анимировать стрелки в SwiftUI. Да, даже в виджете.
Image(systemName: "clock")
.clockHandRotationEffect(.hours, angle: .degrees(90))В Xcode 14 это уже выпилили, но можно собрать в Xcode 13 и притянуть как статическую либу.
👉 BlinkingView — вот это настоящая черная магия.
Используется кастомный bitmap-шрифт, где каждый символ — это PNG-кадр.
Виджет показывает Text("A"), потом Text("B"), потом Text("C")…
Каждая буква = кадр анимации. Получается плавная картинка без приватного API, и всё официально.
👉 WidgetAnimation — репозиторий с примером анимированного виджета.
Создаёт 30-секундную зацикленную анимацию в iOS-виджете, используя только публичные API.
Пример работает на 8 FPS, но можно достичь до 30 FPS, используя ту же технику.
Если любишь ломать iOS аккуратно и красиво — must-watch.
App Review пока спит. Но ты не спи.
И вот исходники:
github.com/brycebostwick/WidgetAnimation