Search code examples
xcodecocoapodsapp-store-connect

Missing required icon files in build from Xcode 9


Using Xcode 9 and Application Loader:

enter image description here

But as you can see there are all required icons:

enter image description here

What is the case?

This is my 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!

and it doesn't work at all.

Edit

enter image description here enter image description here

Contents.json:              ASCII text
Icon-60.png:                PNG image data, 60 x 60, 8-bit/color RGBA, non-interlaced
Icon-60@2x.png:             PNG image data, 120 x 120, 8-bit/color RGBA, non-interlaced
Icon-60@3x.png:             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
Icon-76@2x.png:             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
Icon-Small@2x-1.png:        PNG image data, 58 x 58, 8-bit/color RGBA, non-interlaced
Icon-Small@2x.png:          PNG image data, 58 x 58, 8-bit/color RGBA, non-interlaced
Icon-Small@3x.png:          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
Icon-Spotlight-40@2x-1.png: PNG image data, 80 x 80, 8-bit/color RGBA, non-interlaced
Icon-Spotlight-40@2x.png:   PNG image data, 80 x 80, 8-bit/color RGBA, non-interlaced
Icon-Spotlight-40@3x.png:   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
Icon-iPadPro@2x.png:        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

Solution

  • As @Daniel Kuta said the solution is:

    1. locate your app's xcarchive file,
    2. show package contents >> products >> applications >> your application's name >> show package contents.
    3. Locate the info plist from here, and change the BuildMachineOsBuild to 16A323.

    However above solution will remove first three errors, but not the last one warning.