L08084のブログ

技術記事の執筆は、祈りに近い

【Xcode】アプリアイコンに関するエラー: Failed to write image data for the app icon set from

f:id:l08084:20180406165258p:plain

Xcodeから、iPhone8 plusに実機ビルドしようとしたタイミングでエラーが発生した。

バージョン情報

  • Xcode: 9.3

  • モバイル端末: iPhone8 plus

  • iOS: 11.1.2

発生したエラー

アプリのアイコン関連と思われる同種のエラーが2件発生した。

エラー1

.../platforms/ios/[アプリ名]/Images.xcassets: Failed to write image data for the app icon set from "AppIcon.appiconset/icon-20@3x.png" to ".../Library/Developer/Xcode/DerivedData/[アプリ名]/Build/Products/Debug-iphoneos/[アプリ名].app/AppIcon20x20@3x.png".

エラー2

.../platforms/ios/[アプリ名]/Images.xcassets: Failed to write image data for the app icon set from "AppIcon.appiconset/icon-50@2x.png" to ".../Library/Developer/Xcode/DerivedData/[アプリ名]/Build/Products/Debug-iphoneos/[アプリ名].app/AppIcon50x50@2x~ipad.png".

エラー文をGoogle翻訳するとこうなる

「AppIcon.appiconset /icon-50@2x.png」から「AppIcon50x50@2x~ipad.png」に設定されたアプリアイコンの画像データの書き込みに失敗しました。

エラーになった画像のオリジナル画像の状態を確認

エラーが発生した画像のオリジナル画像(.../platforms/ios/.../Images.xcassets配下ではなくresoucese配下の方)を確認すると、拡張子がpngの画像ファイルなのに、中身がhtmlファイルになっていたので(前回コミットで画像が消えたことによる現象?)、対象の画像についてだけ、コミットを戻してhtmlからpng形式の画像ファイルに戻したがエラーは消えなかった。

結局問題のファイルを削除した後、手動で新規作成して解決

結局Images.xcassets配下の画像のうち、問題が起きている画像(icon-20@3x、icon-50@2x)を削除 → 別の正常な画像をコピー → サイズを合わせる(20@3xだったら、60 X 60) → ファイル名称も同じにする ことによって解決した。