web-dev-qa-db-ja.com

アプリのアイコンを更新して、IOS 6と7を同時にサポートするように画像を起動するにはどうすればよいですか?

IOS7 AND IOS 6+を同じビルドでサポートし、両方に対して正しくロードされるアセット(アイコンとスプラッシュスクリーン)を含むXcode5からアプリケーションをリリースする方法を見つけ出すのに苦労しました。 IOS 6のアセットを正しくレンダリングします。作成しようとしていた主要なハングアップIOS 6は、 "prerendered"オプション はXcode 5のGUIでは使用できなくなりました。すべてのコンテンツとアイコンを正しくレンダリングし、複数のOSバージョンをサポートする方法はありますか?

アンドリュー

38
AndyBean

Appleは ガイドラインを明確にしています IOS 7アプリの要件についてですが、それでも、1つのアプリが複数のOSバージョンをサポートするというエラーに遭遇しました。将来的に他の人を支援するために私がハングアップしたいくつかの領域を指摘します。

私は最初にアプリ全体を更新してIOS 7をきれいにサポートしてから戻って以前のバージョンを有効にしましたが、そのプロセスは必要ありません。

最初に正しい展開ターゲットを設定してくださいdeployment target

展開ターゲットを設定すると、Xcode5は複数のOSバージョンをサポートするために必要なデフォルトのアセットのリストを適切に変更します。必要な解像度と必要なファイル名で正しいバージョンのアイコンを再アップロードしてください(IOS6-IOS7のサポートについては以下を参照) Icons, their sizes, and their default filenames in Xcode5 for IOS6 -7 support

起動画像についても同じことを行います。起動画像の名前を新しい名前に変更する必要があることに注意してください。Xcodeが許可すると、これを実行しようとします。 IOS7では、ステータスバーの背後にある起動画像の背景が拡大されるため、以下の新しいサイズに注意してください。 Launch images, their names, and sizes required

最後に、2つの.plistフラグを手動で追加します。アイコンをIOSバージョン間でレンダリングするように設定する必要があります一貫して、光沢なし(説明が続きます)

manually add these entries to your plist IOS7の新しいフラットネスでは、以前のバージョンでアイコンにハイライトと光沢効果を追加した後処理が削除されました。この効果は、IOS 7個のアプリでは行われませんが、Xcode5からIOS 6でアプリをロードすると、デフォルトの光沢効果が再適用されます。 Xcodeには、後処理を無効にするための「レンダリングされた」GUIフラグがないため、腹立たしいです。上記のように、アプリケーションのplistに手動でフラグを追加する必要があります。私の場合、2つの場所強制的にIOS 6エフェクトの適用を停止します。ファイルを直接開くか、ファイルに移動してplistにアクセスできます。プロジェクト概要の設定。シミュレーターからアプリをアンインストールしてから、アプリを再構築して、シミュレーターに古いアイコンのキャッシュを強制的に失わせる必要がある場合があります。

40
AndyBean

資産カタログをセットアップする場合は、それを開いて画像を選択し、インスペクターに移動してこのボックスにチェックマークを付けます。

Screen shot of xcode 5

29
Kodejack

「アセットカタログ」を使用するだけです(ターゲットで一般から選択できます)。

これにより、プロジェクトにimages.xcassetsが作成され、iOS 7以前およびiOS 7のアイコンデザインを簡単にドラッグできます。

PDATE:したがって、iOS 7の正式リリース後、次のように記述できます。

アセットカタログ自体で、設定するAppiconセットを選択します事前レンダリングされた後、Attribute Inspectorに移動し、「iOS icon is pre-rendered」とマークします。もちろん、サポートしたいOSやデバイスをそこに設定することもできます(すべてのオプションが作成されるため、ドラッグアンドドロップで設定できます)。

注意すべき重要なことは、何らかの理由で、このカタログ内で複数のターゲットと複数のセットを使用する場合、Target Membershipを手動で追加する必要があることです。これを行うには、「アセットカタログ」ファイルをマークし、ファイルインスペクターに移動して、使用するすべてのターゲットをマークします。 Appleはターゲット設定から「資産カタログ」を選択すると自動的に行われるはずですが、それまでここで言及することにしました(これを理解するのに1時間かかりました)。

25
Idan

私は最近これを経験しました。デフォルトでは、次のもののみが表示されます。

enter image description here

簡単な修正は、新しいAppIconを追加することです

enter image description here

これらすべてのオプションを提供します。

enter image description here

13
DogCoffee

これで私の経験:

新しい空のアプリを作成するとき、「デフォルト」アプリアイコンを作成するか、@ Smickが示すように不完全な起動画像アセットカタログを作成します。

この新しい「カタログ」の厄介な部分は、画像サイズが表示されないことです。

この問題を回避するには、プロジェクトナビゲータでプロジェクトを選択します。[全般]で、アプリアイコンと起動画像の2つの領域に気付きます。それらは資産カタログを指します。 「資産カタログを使用しない」に変更できます。その後、インターフェースはファイル/次元のリストに変わります。

ただし、このインターフェイスにはいくつかの問題があります。

  1. 画像の網膜バージョンのみを要求する必要があります(そして、法線を計算するか、2つのリンクがあります。1つは正常用、もう1つは網膜用です)。
  2. いくつかのイメージ(起動イメージ)を機能させるには、名前を変更する必要があります(システムがこれを行います)。
  3. エラーのために2つの画像を割り当てることができません(iPad Portrait iOS 7およびiPad Landscape iOS 7、どちらも通常の解像度)-それらの画像を指定できますが、挿入すると画像は保持されず、選択解除されます次の画像。
  4. 指定された画像の寸法は、HIGのマニュアルに記載されているものとわずかに異なります。
  5. ポイント付きの画像の「新しい」表記法は非常に嫌いです(デバイスに依存しているため、正確ではありません)。
  6. IOS 6でアイコンの「ハイライト/ライティング」を再適用したくない場合は、アプリplistにキーを追加する必要があります(プロジェクトマネージャー|プロジェクト|情報。そこで、「アイコンには既に含まれています」必要に応じて、iOS 5アイコンにも追加する必要があります。
3
Luis Ferro

Xcode 6の場合

LaunchImageの場合は、iOS 6.0および以前のiPhone(ポートレート)またはiPadを確認する必要があります//プロジェクトの構成に依存します

サイズ

Default.png (320x480) 
[email protected] (640x960) 
[email protected] (640x1136)

enter image description here

AppIconと同じ

1
Mina Fawzy