Код Воробья для iOS разработчиков
11.3K subscribers
382 photos
96 videos
2 files
304 links
Пишу для iOS разработчиков про Xcode, разработку на Swift и SwiftUI.
Реклама: sparrowcode.io/ru/ads
Автор: @ivanvorobei

РКН: bit.ly/sparrowcode
Download Telegram
Вышла версия Release Candidate для Xcode 13.2. Номер сборки 13C90. Ожидаем релиз вместе с iOS 15.2
В AppStore Connect теперь можно создавать до 35 версий страницы приложения.

Меняйте скриншоты и промо-текст, изменить описание не получится. На каждую версию доступна ссылка для тестов и таргета.
This media is not supported in your browser
VIEW IN TELEGRAM
Наглядно как меняют кнопку titleEdgeInsets, imageEdgeInsets и contentEdgeInsets.

Рассказываю как работают отступы UIButton в туториале:
https://sparrowcode.io/ru/tutorials/edge-insets-uibutton
Внутри можно скачать проект-пример и поиграться с ползунками самому.
🙏1
Вышел Xcode 13.2.
Для установки нужен macOS 11.3 Big Sur и новее. Номер сборки совпадет с RC. Изменений много, это короткая сводка.

Что нового:
- Опциональный режим, который использует все ядра. Чтобы включить, введите в терминал defaults write com.apple.dt.XCBuild EnableSwiftBuildSystemIntegration 1
- Swift Concurrency. Включает async/await, акторы и параллелизм.
- Анализ показателей приложения, эпл называет это смарт-уведомления. Чтобы разрешить их, нажмите на колокольчик в верхнем левом углу органайзера Regressions.
- При выгрузке добавили два флага - уменьшать размер приложения, используя встроенные библиотеки и автоматическое управление номером билда. Скрин добавил в комментариях.

Проект больше не зависает, подготавливая часы к разработке. Исправили импорт XLIFF, плавающие варнинги между билдами и обновили SPM.
👍1
Если вы скачивали Xcode 13.2 из App Store, то у вас не работает SPM. Официальный аккаунт эпл на форуме подтвердил проблему. Так же добавили пояснения в Release Notes.

Скачайте релизную версию с сайта. Номер сборки 13C90 совпадает с номером для RC версии. В ней проблем с SPM нет.
Появилась официальная документация по HTTP Traffic Instrument.

Инструмент дебажит и записывает шифрованный и нешифрованный http-трафик приложения. Визуально отображает в каком статусе находится запрос.
Релизнули Swift Playground 4

Интересное завезли на айпад. Можно ставить SPM-пакеты, добавлять Capabilities и грузить в AppStore с айпада. Есть предпросмотр и полноэкранный режим для запущеного приложения.
В Xcode 13.2 и 13.2.1 остается уязвимость Log4j.

На это обратили внимание форумчане. После этого в Release Notes для 13.2.1 добавили комментарий, что Xcode автоматически обновит библиотеку Log4j, а для выгрузки будет использовать только новую версию.

Java-приложение, использующее Log4j, получает запрос и логирует его. Если запрос содержит URL-адрес интерфейса Java Naming and Directory Interface (JNDI), log4j подхватывает этот URL-адрес и открывает его. URL может содержать скрипт, который выполняется Log4j. Типичный случай RCE (Remote Code Execution).
Как добавить альтернативные иконки для Product Page Optimization

Варианты скриншотов добавляются через App Store Connect, а как добавить иконки документации нет. Александр Гузенко расскажет как это сделать. Накидайте огоньков в комментарии, ему будет приятно.

https://sparrowcode.io/ru/tutorials/product-page-optimization-alternative-icons
🔥8👍52🆒1
🛠 Навигация

📨 Чат iOS разработчиков и чат по реджектам
Помогут с разработкой, аккаунтами и ревью

😺 GitHub
Opensource библиотеки для iOS разработчиков

🐤 Лонгриды на sparrowcode.io
Большие туториалы с примерами кода и видео. Разборы системных приложений

📖 X / Twitter
На английском

🍎 Воробей про Apple
Пишу про яблочную компанию в отдельном канале

📨 Поддержать канал бустом
Для тех кто бустит даём 🤖 GPT 4-бот бесплатно

📦 Все каналы и чаты папкой
Please open Telegram to view this post
VIEW IN TELEGRAM
18👍1310432🔥1😡1
Если не работает автокомплит, выключите режим, который использует все ядра. Для этого введите в терминал:

defaults write com.apple.dt.XCBuild EnableSwiftBuildSystemIntegration 0

Проблему подтвердили на форуме и в нашем чате.
Новый год близко.

Земля движется по спирали за солцнем. Фактически мы не там, где были год назад. Отличный повод резюмировать прошедший год.

Оставьте комментарий будущему себе в декабрь следующего года. А я потом напомню.

В праздники обещаю никаких туториалов, роликов на ютуб и вакансий. Проблем с икскодом не будет - Тим Кук звонил, сказал до 5 января у прогеров забрали компы.

Побольше Ready for Sale вам в новом году!
🎉8👍3
В AppStore Connect добавили аналитику In-App Event

Доступно количество просмотров страницы события, количество напоминаний и уведомлений, количество загрузок приложения из события. Все метрики можно фильтровать по устройству, источнику и т.д.
🎉7🔥4👍1
На страницу ресурсов для дизайна добавили рамки устройств в PNG. Есть айфоны, айпады, макбуки, часы и TV.

Дизайнкод с проектом энгл напрягся.
🔥19🎉5👍2
Media is too big
VIEW IN TELEGRAM
SkeletonView показывает шаблон интерфеса вместо индикатора загрузки.

Можно настроить анимацию и цвет. Для нужной саб-вью установить isSkeletonable и вызывать анимацию у контейнера:

subView.isSkeletonable = true
view.showAnimatedSkeleton()

Библиотека умеет работать с таблицей и коллекцией - автор повторил протокол Data Source. Есть настройки для текста - количество строк, размеры и отступы.

#Библиотеки
👍369
Apple корректирует цены и выручку разработчиков в AppStore.

Изменятся выручка и цены:
Бахрейн, НДС с 5% до 10%
Украина, НДС 20%
Зимбабве, Налог на цифровые услуги 5%

Здесь цены не изменятся, но изменится выручка:
Багамы, НДС с 12% до 10%
Оман, НДС 5%
Таджикистан, НДС с 18% до 15%
Австрия, НДС с 5% до 10% для электронных книг и аудиокниг
Латвия, НДС с 21% до 5% для электронных книг

Цены для автовозобновляемых подписок не изменятся. Чтобы обновить цены, нужно обновить прайс в AppStore Connect. Выручка для подписок будет скорректирована.
😱10👍6
Код Воробья для iOS разработчиков
В App Store Connect обновили процесс ревью приложений Новые функции касаются только Ивентов (будут доступны в App Store с 27 октября). В панели добавили вкладку App Review. Сейчас переход на обновлённую систему по-желанию. До конца года все аккаунты переведут…
С 25 Января аккаунты всех разработчиков переведут на новую систему ревью.

Для отправки жмем новую кнопку Add for Review. Добавили соответсвуйщий статус приложения Ready for Review.
Можно прикреплять ивенты и оформления страницы в сторе.

В остальном новый процесс обновили только визуально, концепция выгрузил-заполнил-отправил осталась. Чтобы сейчас перейти на новый процесс ревью, пройдите по ссылке.
👍12😱3
Media is too big
VIEW IN TELEGRAM
SPAlert повторяет алерт из приложений музыки и почты. Есть готовые пресеты .done и .error с анимированной иконкой.

Показать алерт в одну строку:
SPAlert.present(title: "Added to Library", preset: .done)

Можно подставить кастомные иконки. Есть спинер. Поддерживает SwiftUI.

#Библиотеки
20🔥12👍5
В App Store Connect теперь можно добавлять уникальный код для офера. Оффер будет доступен по ссылке и через системный экран активации в App Store.

Количество активации ограничено (максиум 25000). Если нужно больше - создайте новый код. Опционально доступен срок годности кода.
🔥11👍5
Как устроен онбординг в App Store

Контроллер назвали OnboardingViewController. Не оборачивали в навигейшн. Основной вью выступает не коллекция, а UIScrollView.

Заголовок “What’s New…” поместили в контейнер, хотя внутри него только лейбл. Ячейки это UIView, а тайтл-описание находятся в стеке.

Тулбар обычная вью с фоном UIVisualEffectView. Текст с кнопкой "See how your data..." это UITextView.
Иконка, текст и кнопки в тулбаре поместили в вертикальный стек. Ненормально большой отсуп снизу тулбара задан фикс значением от layoutMargins.bottom + 89.

#ViewHierarchy
👍32🔥152