Подтвердить что ты не робот

Отсутствие необходимых файлов значков в сборке из Xcode 9

Использование Xcode 9 и Application Loader:

введите описание изображения здесь

Но, как вы видите, есть все необходимые значки:

введите описание изображения здесь

В чем дело?

Это мой podfile:

use_frameworks!
source 'https://github.com/CocoaPods/Specs.git'

def pods

    pod 'GoogleMaps'
    pod 'PickerView'
    pod 'SWNavigationController'
    pod 'Branch'
    pod 'JTAppleCalendar', :git => 'https://github.com/patchthecode/JTAppleCalendar.git', :branch => 'master'
    pod 'SVProgressHUD'
end

def universal_pods

    pod 'AFNetworking'
    pod 'Crashlytics'
    pod 'Fabric'
    pod 'MagicalRecord'
end

target 'FieldService' do

    pods
    universal_pods
end

target 'FieldServiceTests' do

    pods
    universal_pods
end

target 'FieldServiceTodayTimer' do
    universal_pods
end

target 'FieldServiceTodayCurrent' do
    universal_pods
end

post_install do |installer|
    copy_pods_resources_path = "Pods/Target Support Files/Pods-FieldService/Pods-FieldService-resources.sh"
    string_to_replace = '--compile "${BUILT_PRODUCTS_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}"'
    assets_compile_with_app_icon_arguments = '--compile "${BUILT_PRODUCTS_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" --app-icon "${ASSETCATALOG_COMPILER_APPICON_NAME}" --output-partial-info-plist "${BUILD_DIR}/assetcatalog_generated_info.plist"'
    text = File.read(copy_pods_resources_path)
    new_contents = text.gsub(string_to_replace, assets_compile_with_app_icon_arguments)
    File.open(copy_pods_resources_path, "w") {|file| file.puts new_contents }
end

inhibit_all_warnings!

и он вообще не работает; (

EDIT:

введите описание изображения здесь введите описание изображения здесь

Contents.json:              ASCII text
Icon-60.png:                PNG image data, 60 x 60, 8-bit/color RGBA, non-interlaced
[email protected]:             PNG image data, 120 x 120, 8-bit/color RGBA, non-interlaced
[email protected]:             PNG image data, 180 x 180, 8-bit/color RGBA, non-interlaced
Icon-76.png:                PNG image data, 76 x 76, 8-bit/color RGBA, non-interlaced
[email protected]:             PNG image data, 152 x 152, 8-bit/color RGBA, non-interlaced
Icon-Small.png:             PNG image data, 29 x 29, 8-bit/color RGBA, non-interlaced
[email protected]:        PNG image data, 58 x 58, 8-bit/color RGBA, non-interlaced
[email protected]:          PNG image data, 58 x 58, 8-bit/color RGBA, non-interlaced
[email protected]:          PNG image data, 87 x 87, 8-bit/color RGBA, non-interlaced
Icon-Spotlight-40.png:      PNG image data, 40 x 40, 8-bit/color RGBA, non-interlaced
[email protected]: PNG image data, 80 x 80, 8-bit/color RGBA, non-interlaced
[email protected]:   PNG image data, 80 x 80, 8-bit/color RGBA, non-interlaced
[email protected]:   PNG image data, 120 x 120, 8-bit/color RGBA, non-interlaced
Icon-Spotlight-41.png:      PNG image data, 40 x 40, 8-bit/color RGBA, non-interlaced
Icon-Spotlight-42.png:      PNG image data, 40 x 40, 8-bit/color RGBA, non-interlaced
Icon-Spotlight-43.png:      PNG image data, 20 x 20, 8-bit/color RGBA, non-interlaced
[email protected]:        PNG image data, 167 x 167, 8-bit/color RGBA, non-interlaced
fieldservice.png:           PNG image data, 1024 x 1024, 8-bit/color RGBA, non-interlaced
4b9b3361

Ответ 1

Как сказал Даниэль Кута, решение:

  • найдите файл приложения xcarchive,
  • показать содержимое пакета → продукты → приложения → ваше имя приложения → показать содержимое пакета.
  • Найдите здесь информационный слой и измените BuildMachineOsBuild на 16A323.

Однако выше решение устранит первые три ошибки, но не последнее предупреждение.

Ответ 2

У меня та же проблема. Проверьте это: решение

Просто добавьте этот код ниже в свой файл:

post_install do |installer|
      installer.aggregate_targets.each do |target|
        copy_pods_resources_path = "Pods/Target Support Files/#{target.name}/#{target.name}-resources.sh"
        string_to_replace = '--compile "${BUILT_PRODUCTS_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}"'
        assets_compile_with_app_icon_arguments = '--compile "${BUILT_PRODUCTS_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" --app-icon "${ASSETCATALOG_COMPILER_APPICON_NAME}" --output-partial-info-plist "${BUILD_DIR}/assetcatalog_generated_info.plist"'
        text = File.read(copy_pods_resources_path)
        new_contents = text.gsub(string_to_replace, assets_compile_with_app_icon_arguments)
        File.open(copy_pods_resources_path, "w") {|file| file.puts new_contents }
      end
    end

а затем запустите консоль pod install

EDIT:

Если он не работает, найдите файл приложения xcarchive, щелкните правой кнопкой мыши → показать содержимое пакета, перейдите к продуктам → приложения → ваше имя приложения → показать содержимое пакета. Найдите здесь информационный слой и измените BuildMachineOsBuild на 16A323. Это в основном заставляет компьютер думать об этом на более старой ОС.. Проблема, похоже, связана с High Sierra. Затем отправьте приложение.

Ответ 3

Убедитесь, что Copy Bundle Resources находится под [CP] Embed Pods Frameworks и [CP] Copy Pods Resources в фазах сборки.

введите описание изображения здесь

Ответ 4

  • Архивный проект как обычно
  • В последней сборке в организаторе из контекстного меню выберите "Reveal in finder"
  • В архиве в finder из контекстного меню выберите "Показать содержимое пакета"
  • Откройте терминал и компакт-диск в этой папке
  • Запустите эту команду в терминале:

найти Продукты /-name Info.plist -print0 | xargs -0n1 plutil -replace BuildMachineOSBuild -string 16A323

Затем продолжайте обычную загрузку. В конце вы увидите предупреждающее всплывающее окно о недостатке значка маркетинга, но сборка будет проходить через

Ответ 5

У меня была такая же проблема. Исправлено удалением ключа CFBundleIcons~ipad из info.plist

Проверить здесь

Ответ 6

После того, как некоторые из вышеперечисленных предложений удалили некоторые ошибки, в моем случае я смог решить их все, переименовав AppIcon в файл проекта .xcassets. Проект использует CocoaPods, и некоторые из этих модулей содержат примеры проектов с AppIcon в нем. Поэтому вместо их удаления я просто переименовал свой AppIcon и изменил ссылку в настройках проекта. С этого момента он, наконец, обрабатывается после нескольких часов проб и ошибок.

При просмотре файлов xcassets с Xcode у них отсутствовали значок маркетинга и определение значка iPad Pro (более старые библиотеки). Это были точные ошибки, которые я получил. В архиве теперь файлы называются AppIcon, и они ссылаются на файл Info.plist.

PS: чтобы узнать, есть ли у вас несколько активов AppIcon, вы можете использовать find . -name AppIcon*

Ответ 7

В моем случае один из Pods имеет .xcassets с ресурсами. Ошибки с иконками исчезли после исключения этого контейнера. Наконец, pod был исправлен заменой .xcassets на .bundle.

Часть журнала изменений .podspec:

-  s.resources = '**/*.xcassets'
+  s.resources = '**/*.bundle'

Ответ 8

Пожалуйста, переместите AppIcon по умолчанию Assets.xcassets вместо Icon.xcassets.

Также есть несколько советов... https://developer.apple.com/library/content/qa/qa1686/_index.html

Я предлагаю хранить старые имена значков, даже если яблоко говорит, что это необязательно.