9.9 KiB
9.9 KiB
Рекомендации для доработки и выпуска 360 Clock в App Store
✅ Исправленные проблемы
1. Секундная стрелка в темной теме
- Исправлено: Секундная стрелка теперь корректно меняет цвет в темной теме (белый в темной теме, черный в светлой)
- Дополнительно: Улучшена поддержка темной темы для циферблата и меток градусов
2. Иконка приложения
- Создана структура: Добавлена папка
Assets.xcassets/AppIcon.appiconset - Требуется действие: Необходимо добавить изображения иконок всех размеров (см. раздел ниже)
🔧 Обязательные доработки перед публикацией
1. Иконка приложения
Текущая ситуация: Структура создана, но изображения отсутствуют.
Что нужно сделать:
- Создать иконку размером 1024x1024 пикселей (основная иконка для App Store)
- Использовать
IconGenerator.swiftдля генерации иконки или создать дизайн вручную - Добавить все необходимые размеры в
Assets.xcassets/AppIcon.appiconset/:- 20x20 (@2x, @3x) - 40x40, 60x60
- 29x29 (@2x, @3x) - 58x58, 87x87
- 40x40 (@2x, @3x) - 80x80, 120x120
- 60x60 (@2x, @3x) - 120x120, 180x180
- 76x76 (@1x, @2x) - 76x76, 152x152 (iPad)
- 83.5x83.5 (@2x) - 167x167 (iPad Pro)
- 1024x1024 (@1x) - для App Store
Рекомендация: Используйте инструменты типа App Icon Generator или создайте скрипт для экспорта из IconGenerator.
2. Bundle Identifier
Проблема: В project.pbxproj указан bilal.-60Clock (похоже на опечатку)
Рекомендация: Измените на bilal.360Clock или более профессиональный вариант типа com.yourname.360clock
Как исправить:
- Откройте проект в Xcode
- Выберите проект в навигаторе
- Выберите таргет "360Clock"
- Во вкладке "Signing & Capabilities" измените Bundle Identifier
3. Минимальная версия iOS
Текущая: iOS 18.2 (очень новая версия)
Рекомендация: Понизить до iOS 17.0 или iOS 16.0 для большей совместимости
Как изменить:
- В Xcode: Project → Target → General → Minimum Deployments
- Или в
project.pbxproj: изменитьIPHONEOS_DEPLOYMENT_TARGET
4. Privacy Info (Обязательно с iOS 17+)
Требуется: Файл PrivacyInfo.xcprivacy для App Store Connect
Что нужно:
- Создать файл
PrivacyInfo.xcprivacyв корне проекта - Указать, какие данные собирает приложение (если не собирает - указать это)
- Добавить файл в проект через Xcode
Пример содержимого (если не собираете данные):
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>NSPrivacyTracking</key>
<false/>
<key>NSPrivacyTrackingDomains</key>
<array/>
<key>NSPrivacyCollectedDataTypes</key>
<array/>
<key>NSPrivacyAccessedAPITypes</key>
<array/>
</dict>
</plist>
5. Описание приложения для App Store
Необходимо подготовить:
- Название приложения (до 30 символов)
- Подзаголовок (до 30 символов)
- Описание (до 4000 символов)
- Ключевые слова (до 100 символов)
- Скриншоты для разных размеров устройств:
- iPhone 6.7" (iPhone 14 Pro Max, 15 Pro Max)
- iPhone 6.5" (iPhone 11 Pro Max, XS Max)
- iPhone 5.5" (iPhone 8 Plus)
- iPad Pro 12.9"
- iPad Pro 11"
6. Категория и возрастной рейтинг
Рекомендации:
- Категория: Утилиты (Utilities) или Образование (Education)
- Возрастной рейтинг: 4+ (приложение не содержит контента для взрослых)
🎨 Рекомендации по улучшению UX/UI
1. Launch Screen
- Текущая ситуация: Используется автоматически генерируемый экран запуска
- Рекомендация: Создать кастомный Launch Screen с логотипом приложения
2. Адаптация для iPad
- Приложение поддерживает iPad, но можно улучшить:
- Увеличить размер циферблата на больших экранах
- Добавить поддержку Split View и Slide Over
3. Анимации
- Добавить плавные переходы при смене темы
- Улучшить анимацию движения стрелок (сейчас обновление каждую миллисекунду - можно оптимизировать)
4. Дополнительные функции (опционально)
- Настройки для изменения цветов стрелок
- Выбор формата времени (12/24 часа)
- Виджет для домашнего экрана
- Поддержка Apple Watch
🔒 Технические требования
1. Подпись кода (Code Signing)
- Убедитесь, что у вас есть:
- Apple Developer Account ($99/год)
- Сертификат разработчика
- Provisioning Profile для App Store
2. Тестирование
- Протестируйте на реальных устройствах:
- iPhone (разные размеры)
- iPad (если поддерживается)
- Разные версии iOS
- Проверьте работу в темной и светлой темах
- Проверьте ориентацию экрана (портретная/ландшафтная)
3. Производительность
- Текущая проблема: Таймер обновляется каждую миллисекунду (0.001 сек)
- Рекомендация: Изменить на 0.1 секунды для секундной стрелки или использовать более эффективный подход
Пример оптимизации:
// Вместо 0.001 можно использовать 0.1 для секундной стрелки
let timer = Timer.publish(every: 0.1, on: .main, in: .common).autoconnect()
4. Локализация
- Текущая ситуация: Только английский язык
- Рекомендация: Добавить поддержку русского языка (особенно если целевая аудитория - русскоязычные пользователи)
📋 Чеклист перед отправкой в App Store
Подготовка проекта
- Исправлен Bundle Identifier
- Добавлены все размеры иконок приложения
- Создан файл PrivacyInfo.xcprivacy
- Проверена минимальная версия iOS
- Протестировано на реальных устройствах
- Проверена работа в темной/светлой теме
- Оптимизирована производительность
App Store Connect
- Создан App Store Connect запись
- Заполнено описание приложения
- Подготовлены скриншоты для всех размеров
- Указана категория и возрастной рейтинг
- Настроена цена и доступность по странам
Юридические требования
- Политика конфиденциальности (если требуется)
- Условия использования (опционально)
- Контактная информация разработчика
Финальная проверка
- Архив создан успешно
- Валидация прошла без ошибок
- Приложение загружено в App Store Connect
- Заполнена вся необходимая информация
- Отправлено на ревью
🚀 Полезные ресурсы
📝 Примечания
- Все исправления, связанные с кодом, уже внесены в проект
- Структура для иконок создана, но требуется добавить изображения
- Рекомендуется протестировать приложение на нескольких устройствах перед отправкой
Удачи с публикацией! 🎉