Version: 2018.4
iOS ビルドプロセスの内側
iOS スプラッシュスクリーンのカスタマイズ

Unity XCode プロジェクトの構造

iOS プラットフォーム用のプロジェクトをビルドするとき、Unity は XCode プロジェクトを含むフォルダーを作成します。このプロジェクトには、デバイスに展開する前にアプリケーションをコンパイルし、署名することが必要です。すると、ゲームを App Store で配布するために準備しバンドルにすることが可能になります。

iOS プロジェクトをビルドする前に Player 設定で Bundle Identifier を設定してください。さらにゲームをデバイスまたはシミュレータで実行するための SDK バージョン を選択します。

Classes フォルダー

Unity ランタイムと Objective-C を統合するコードがここに格納されます。格納されるファイル main.mmUnityAppController.mm/h がアプリケーションのエントリーポイントです。ここから、UnityAppController から派生する独自の AppDelegate を作成することができます。AppController.h を含むプラグインを使用する場合は、かわりに UnityAppController.h を加えます。もし Plugins/iOS フォルダーに AppController.mm/h がある場合はマージするか名前を変更してください。

さらに InternalProfiler.h ファイルは内部プロファイルを有効にするための条件付きのコンパイラーを定義します。このフォルダーは頻繁に変更しないコードのためのフォルダーで、カスタムクラスをここに配置できます。追加モードが選択されると、ビルド間でこのフォルダーに加えられた変更は保存されます。ただし、この機能は複数のビルドターゲットをサポートしないため、Libraries フォルダーの構造を固定する必要があります。

内部プロファイラーは速く、干渉せず、また基本的な情報をフィードしてくれます。

Data フォルダー

これには、シリアライズされたゲームアセットと .NET アセンブリ (dll または dat ファイル) がフルコード (または、ストリッピングが有効な場合はメタデータ) として含まれます。 machine.config ファイルは、セキュリティ、WebRequest などのさまざまな .NET サービスの設定です。このフォルダーのコンテンツは各ビルドで最新情報に更新されるため、変更しないでください。

Libraries フォルダー

これには、ARM アセンブラーに変換された .NET アセンブリ (s ファイル) か、プロジェクトが IL2CPP を使用してビルドされている場合は libil2cpp.a が含まれます。libiPhone-lib.a ファイルは Unity ランタイムの静的ライブラリで、RegisterMonoModules.cpp は Unity ネイティブコードを .NET に紐づけます。このフォルダーのコンテンツは各ビルドで最新情報に更新されるため、変更しないでください。

その他新たに作成したカスタムフォルダー

独自のカスタムファイルはここに格納できます。

グラフィックのファイル

アイコンとスプラッシュスクリーン (png ファイル) は Unity-iPhone フォルダーにあるアセットカタログに保存されます。これらのファイルは Unity によって自動的に管理されます。起動画面、XML Interface Builder (xib ファイル)、Storyboard ファイルは、プロジェクトのルートフォルダーに格納されます。 それらは、Player 設定で設定することができます。カスタムの起動画像を作成する場合は、必ず Apple’s Human Interface Guidelines を遵守してください。

プロパティーリストファイル

info.plist は Unity の Player 設定を通して管理されます。このファイルは Player を作成するときに、置き換えでなく、更新されます。本当に必要なときを除いて修正しないでください。

その他のファイル

これらには XCode プロジェクトファイル (xcodeproj ファイル)、および Project Navigator でのみ表示されるフレームワークリンクが含まれます。


iOS ビルドプロセスの内側
iOS スプラッシュスクリーンのカスタマイズ