Search Unity

tvOS Xcode upload to iTunes Connect fails

Discussion in 'iOS and tvOS' started by helios, Oct 22, 2016.

  1. helios

    helios

    Joined:
    Oct 5, 2009
    Posts:
    308
    Hey guys, I'm trying to upload my tvOS archive to iTunes Connect, but it keeps failing because of

    Code (CSharp):
    1. ERROR ITMS-90471: "Missing Image Asset. Your app is missing the Top Shelf Image asset 'Top Shelf Image'
    I'm using Unity 5.4.2f2 and Xcode 8. Does anyone else have this problem? It's very confusing as the Top Shelf image is clearly set and I can see it in the asset catalog. Any suggestions? Thanks in advance.
     
  2. helios

    helios

    Joined:
    Oct 5, 2009
    Posts:
    308
    Ok, so it looks like it's an Asset Catalog thing. Apple must have updated their requirements for tvOS 10, because now when you manually create an asset catalog for the Icons and Images, the "top shelf image" is no longer a layered set, but a single image. Also, the icons only have 3 layers, not 5. Unity exports the catalog via the old method of 5-layered app icons and a layered top shelf image. There's also a new requirement for a "top shelf image wide" asset, which isn't in Unity's tvOS settings.

    Not sure if Unity is aware of these changes and requirements, but I solved this by deleted the catalog Unity created and then manually creating a new "tvOS App Icon and Top Shelf Image" in the Xcode project.
     
  3. gamecakestudios

    gamecakestudios

    Joined:
    Nov 13, 2013
    Posts:
    21
    The above is correct. Uploading a tvOS app will fail unless you provide only a single-layer top shelf image, and a single layer top shelf wide image.

    Top Shelf: 1920 x 720
    Top Shelf Wide: 2320 x 720

    Both cannot have alpha channels or the upload will fail.

    Unity's UI still allows you to add multiple parallax layers for each of those two assets, but adding extra layers will make the upload fail with the same message shown above. Apple's error is confusing and non-descriptive of the actual problem.

    This requires user knowledge to get around.

    Unity should update the tvOS player settings to disallow multiple layers for the top shelf images.
     
  4. gfaraj

    gfaraj

    Joined:
    Jul 11, 2016
    Posts:
    35
    In case there's a poor soul out there trying to figure out why Apple is rejecting their Top Shelf Image due to an alpha channel:

    In the Import Settings for your images, select Alpha Source = None, but before you do that, make sure to uncheck the "Alpha is Transparency" check box, because even though it was disabled when I set Alpha Source to None, the generated image still had an alpha channel. I'm not sure if it's a Unity bug, but this wasted a good deal of my time. Hope this helps someone.
     
  5. gfaraj

    gfaraj

    Joined:
    Jul 11, 2016
    Posts:
    35
    Actually, scratch that. Unity is still generating my Top Shelf Image with an alpha channel for some reason. The Top Shelf Image Wide gets generated correctly, though. Both source images are JPG images with no alpha, obviously. Any idea? This is frustrating.
     
  6. gfaraj

    gfaraj

    Joined:
    Jul 11, 2016
    Posts:
    35
    The Top Shelf Image Wide is 2320x720. When the Max Size in the Unity Import Settings is set to 2048, then Unity generates it correctly without an alpha channel. If the Max Size is changed to 4096, then Unity generates it with an alpha channel.

    Wtf is going on? Why would this happen?