Xcodeはバージョンアップが頻繁に行われる。2〜3ヶ月で確実にアップデートされる。バージョンが少し上がったとき、内部がどのように変わったのかはよくわからない。しかしはっきりしていることは、新しいバージョンでビルドすると確実に
Warning
が増える。ビルド時に左のカラムに黄色いアイコンがずらりと並ぶ。バージョンが新しくなるたびに黄色いウォーニングアイコンの数は増えていく。いたって気味が悪い。
XcodeのWarningというのは警告である。アラートといった方がわかりやすいかもしれない。プログラムに多少問題があるが、実質的には無視してもかまわないものが大半。XcodeのバージョンがアップするたびにWarningのチェック基準が厳しくなり、いままで表示さされなかった部分でもWarningがリストされるようになった。
ビルドできないときは、WarningではなくErrorが表示される。赤いアイコンで表示されて、その場合はビルドが中止される。SakuttoBookの場合はプログラミング上のエラーはまず解決しているので、エラーが表示されるケースは大半はプロビジョニングプロファイルや証明書関係であることが多い。新しいバージョンで開いてビルドしても赤いエラーがマークされなければビルドは可能であり、いままでWarningで申請がリジェクトされたという話は聞いていない。
Xcode 4.5ではWarningで表示されるが、申請時には必要なものが登場した。それが
Default-568h@2x.png
というファイルがそれである。このファイルはローンチイメージと呼ばれるファイルで、アプリを起動させたときにアプリ画面が表示されるまで表示されるイメージファイルである。従来もアプリにはローンチファイルがあった。ローンチファイルはデバイスごとにファイル名が異なり、iPadで縦向き(Portrait)と横向き(Landscape)でファイルが異なる。
iOS 5まであれば、SakuttoBookでは
iPhone 3GSまで Default.png
iPhone 4/4S Default@2x.png
iPad/iPad2 Default-Portrait.png
iPad3 Default-Portrait@2x.png
をプロジェクトファイル取り込むと、起動時にデバイスにあわせて画像が表示される。SakuttoBookはiPadの横向きがないので必要ないが、iPadで横向きで使う場合は「Default-Portrait」の代わりに「Default-Landscape」にする。
ローンチイメージはいままでオプションであった。使いたければ使えばよかった。たとえばMCBookではアプリ起動時にMCBookのロゴが表示される。SakuttoBookでもローンチ時にローンチイメージを取り込むと取り込んだローンチイメージが表示することができる。
いままでオプションだったローンチイメージがXcode 4.5では必須となった。開発者の岡野さんにお聞きしたら、すでに最新版のブログラミングガイドに記載されているという。100ページ目に「App Launch (Default) Images」という見出しがあり、その中に
Every app must provide at least one launch image.
と書かれている。つまりすべてのiOSアプリは最低でも1つのローンチイメージを用意しなければならないというわけである。「at least one」がただしければ、ローンチイメージは必ずしもiPhone 5用のローンチイメージでなくてもいいことになるが、はたしてそうなのか。
Xcode 4.5でビルドすると、Warningで「Retina 4 Support」と表示される。ここをクリックすると「Missing Retina 4 launch image」というウインドウが現れるので、ここで「Add」をクリックする。そうすると、プロジェクトファイル内に「Default-568h@2x.png」が追加される。真っ黒のPNG画像で、iPhone 5でシミュレートすると、アプリが起動する前に画面が真っ黒になる。「Default-568h@2x.png」の画像を差し替えると、差し替えた画像が表示される。

↓

*「Retina 4 Support」をクリックすると、「Default-568h@2x.png」が生成されて追加される。
「Default-568h@2x.png」で表示される画像は、iPhone 5、iPhone 4inch Retinaのときだけなので、それ以外のデバイスでは使用されない。すべてのデバイスでローンチ画像を表示させるにはデバイスごとの画像を用意する必要がある。ローンチ画像がない場合は、黒い画面になるので、ローンチ画像がない場合と同じ扱いになる。

*ローンチ画像は640×1136ピクセルのRGB画像。
不思議なのは、なぜiOS 6からはローンチ画像が必須になったのかということだろう。といっても「Missing Retina 4 launch image」で「Add」すればいい。それだけのことだが、いままでと同じ扱いをせずに、わざわざウォーニングを表示してファイルを追加させるようになった。必須であればウォーニングではなくエラーでなければならない。はてさて隠された理由はあるのだろうか。
◆[iOS] アプリに必要なアイコン・起動画面の画像サイズ&ファイル名
http://tande.jp/lab/2012/01/1635
◆Xcode 4でする実機インストールの動画チュートリアルをアップ
http://bit.ly/JEofvK
◆Xcode 4でiOSアプリの設定と申請を最短距離でする方法
http://bit.ly/Jk88Bc
◆SakuttoBook(サクッとブック)でiPhoneアプリを作る方法
http://bit.ly/mhgjCG
◆Xcode 4対応のSakuttoBook Lite版ならぬTrial版、無料ダウンロード開始
http://denshi-shoseki.seesaa.net/article/263470895.html
【SakuttoBook日記の最新記事】
- iOS 8、Xcode 5.1.1でSa..
- 2.21リジェクト顛末記2−ストアアプリ..
- 2.21リジェクト顛末記1−Sakutt..
- SakuttoBookだけでするWebの..
- 法人向けD-U-N-S Numberを無..
- 日本語版iBookstoreローンチで始..
- 複数台のMacintoshでiOS De..
- 立川談幸師のグリム童話をSakuttoB..
- iOS 6から厳格になったiCloudの..
- Xcode 4.5とiOSシミュレータ ..
- iOSアプリ内課金、リストア機能なしはな..
- SakuttoBook、PDFのユニバー..
- アプリ内課金を回避するエクスプロイトの衝..
- iOSシミュレータと実機のキャッシュを殺..
- アプリ内課金の仕組み 2 アプリ内課金は..
- アプリ内課金の仕組み 1 アプリ内課金ア..
- SakuttoBookユニバーサル版検証..
- SakuttoBookより安い儲かるiP..
- Lionへのアップデートを誘うiOS 5..
- Xcode 4でする実機インストールの動..