iOSアプリケーションのリリース時にApp iconをアップロード中にエラーが発生しました(image can't contain alpha channels or transparences)

6488 ワード

今日iOSアプリをAppStoreに投稿する際、App iconをアップロードし、ページのヒントエラー(image can't contain alpha channels or transparencies)をネットで調べてみると、Apple公式にApp iconアップロードに新しい規定が設定されており、以前はPNG画像をアップロードすればOKだった.PNG画像をプレビューで開き、JPEG形式の画像を生成してからアップロードすればいいのです.
他にも次のような解決策があります.

Solution 1


AFAIK png with transparency is not allowed. use jpg OR update your png (photoshop or whatever you using to create the png) and delete the transparency areas. if you work with shadows, use jpg, that will do no headaches.

Solution 2


I've found you can also just re-export the png's in Preview, but uncheck the Alpha checkbox when saving. 

Solution 3


For this i made a new simple tool. You can remove alpha channel (transparency) of multiple .png files within seconds.
You can download from here http://alphachannelremover.blogspot.com

Solution 4


Use  mogrify  tool from  ImageMagick  package to remove alpha channel.
brew install imagemagick
cd folder_with_images
mogrify -alpha off */*.png

Update from May 3
You can tell whether image contains alpha channel by running:
sips -g all image.png

In case you render screenshots in iOS Simulator you can drop alpha channel by passing  BOOL opaque = YES  to  UIGraphicsBeginImageContextWithOptions :
UIGraphicsBeginImageContextWithOptions(imageSize, YES, 0); 

Solution 5


If you are using Photoshop go File > Save for web (Command + Option + Shift + S). Make sure the Transparency is unchecked and this should work.

Solution 6


i have same problem just compress your png file on https://tinypng.com/online and then try to upload that new compressed png file.
its work for me.

Solution 7


i was able to use imageoptim to remove alpha channel and compress png files.

Solution 8


You can remove the alpha channel from a PNG file from the command line with pngcrush, using the flag "-c 2":
$ file input.png
input.png: PNG image data, 1024 x 1024, 8-bit/color RGBA, non-interlaced
$ pngcrush -q -c 2 input.png output.png
libpng warning: iCCP: known incorrect sRGB profile
$ file output.png
output.png: PNG image data, 1024 x 1024, 8-bit/color RGB, non-interlaced

Note the change from RGBA to RGB: the Alpha channel is gone!
pngcrush lives at http://pmt.sourceforge.net/pngcrush/

Solution 9


On Pixelmator you can use 'Share > Export for Web...' (⇧ + ⌘ + E)
and deselect Transparency in the Tool Options Bar.

Solution 10


You must remove alpha channels when uploading a photo.
You can do this by Preview, Photos App (old iPhoto), Pixelmatr or even Adobe Photoshop. I will explain it in Preview.
First, open a photo in Preview. If the photo is in your photo album in Photos app (the old iPhoto), then simply drag it from the album to desktop. Then control-click (right-click when mouse) the duplicated photo and select Preview.app under Open With menu.
Second, Select Export... under File menu, and after selecting the destination, uncheck Alpha at the bottom, and export.
Finally, upload the new photo to iTunes Connect.

Solution 11


To get around the problem I batched converted using fireworks my png32 files to png24 for upload quick and easy. Jpeg works also but it is lossy.

Solution 12


If you have imagemagick installed, then you can put the following alias into your .bash_profile. It will convert every png in a directory to a jpg, which automatically removes the alpha. You can use the resulting jpg files as your screen shots.
alias pngToJpg='for i in *.png; do convert $i ${i/.png/}.jpg; done'

Solution 13


What worked for me here was using a jpg file instead of PNG as jpg files don't use alpha or transparency features. I did it via online image converter or you can also open the image in preview and then File->Export and uncheck alpha as option to save the image and use this image.

Solution 14


Convert your PNG image to JPEG format.