Пиксельные изображения на iOS10 при сборке с Xcode 10 - PullRequest
0 голосов
/ 22 ноября 2018

Согласно моему тесту, я сталкиваюсь с этой проблемой только при создании архива и загрузке его в Fabric или iTunesConnect.Все нормально в симуляторе и на реальном устройстве в отладке.Я пробовал как PDF, так и PNG.И я попытался изменить тип сжатия в каталоге ресурсов.

Архив слева, Отладка справа

Archive on the left, Debug on the right

1 Ответ

0 голосов
/ 03 декабря 2018

Инструкции по созданию изображений ButtonBarItem

  • Создайте файл PDF с размерами 22 x 22 * ​​1006 *
  • для рисования содержимого с помощью векторных инструментов (не вставляйте изображенияв PDF)
  • используйте ширину обводки 1pt или 1,5pt
  • перетащите PDF-файл в Assets.xcassets
  • есть слоты с тремя различными масштабами, выберитеосталось 1x
  • в противном случае не изменяйте настройки по умолчанию

Во время сборки XCode создает правильные изображения в масштабе 1x, 2x и 3x.

Если этоне дает желаемого результата, вы найдете здесь несколько советов о том, как копать дальше.

В чем разница между отладочной и окончательной версией выпуска

Когда вы отправляете наВ магазине приложений запускается процесс, называемый App Thinning, который создает варианты для разных реальных устройств.Тогда также происходит сжатие изображений.

Ждать сборку версии App Store неудобно, но вы также можете выполнять Разбавку приложений локально и анализировать точную версию созданного изображения.Но есть некоторые ручные шаги.

Мы ищем файл .png, созданный из файла PDF со стрелкой.Поскольку несколько изображений сжимаются и объединяются в файл .car, нам также необходим инструмент для извлечения изображений из этого файла.Можно использовать приложение под названием «Tinkerer каталога активов», доступное на GitHub, но его также можно установить с помощью диспетчера пакетов Homebrew, см. https://brew.sh. Подробнее ниже.

Как сделать приложениелокально

  • в Xcode выберите
  • открыто
  • для созданного архива выберите «Распределить приложение» с правой стороны
  • на листе выберите «Ad Hoc»
  • из комбинированного приложения «Разбавление», выберите модель или «Все»совместимые варианты устройств '
  • в следующем диалоговом окне выберите «Автоматически управлять подписью»
  • , затем потребуется некоторое время
  • , затем выберите «Экспорт» и сохраните его

Извлечь Asset.car

  • в выходной папке теперь есть файл 'App Thinning Size Report.txt', откройте его в текстовом редакторе
  • есть все сгенерированные варианты для различных устройств в списке
  • например, если у вас 5s с iOS 10, он будет отображаться как [device: iPhone6,2, os-version: 10]
  • , соответствующий .ipa-файл будет просто zip-файлом, разархивируйте его из командной строки ('unzip xxx.ipa')
  • в извлеченной папке 'Payload' находится приложение, в Finder щелкните его правой кнопкой мыши и выберите «Показать содержимое пакета»
  • есть файл под названием «Asset.car», который содержит изображения, созданные вl формат

Извлечение изображений из Asset.car

  • установка Asset Catalog Tinkerer с помощью homebrew в командной строке: brew cask install asset-catalog-tinkerer
  • Запустите Asset Catalog Tinkerer из обычного каталога приложений
  • useчтобы открыть «Asset.car»
  • , выберите «Экспортировать все изображения ...»
  • , после чего вы можете посмотреть окончательное изображение в графическом редакторе

У него должно быть имя, например «XXX-ABC-ZZZ-Normal@2x.png», и разрешение должно составлять 44x44, поскольку оно имеет 2-кратную шкалу.

Дополнительная информация:

Взгляните на это видео WWDC 2018: сессия 227, Оптимизация активов приложения, https://developer.apple.com/videos/play/wwdc2018/227/

...