Unity iOS アプリのビルド

このクイック チュートリアルは、iOS プラットフォーム向けにビルドする Unity プロジェクトのセットアップ方法を紹介します。


アプリケーション ID

アプリケーション ID が使用する API キーに合った正しいものであることを確認します。プロジェクトのアプリケーション ID は、Kudan Tracker スクリプトの [Set App/Bundle ID] ボタンをクリックするか、[Edit] -> [Project Settings] -> [Player] を選択して [iPhone, iPod Touch and iPad Settins] タブで [Other Settings] を開いて確認できます。

アプリケーション ID は、次のいずれかになります。

  • 無料のキーを申請した時に使用した「com.companyName.productName」形式の Bundle Identifier。
  • 開発ライセンス キーを使用している場合は、com.xlsoft.kudanar
    開発ライセンスキーは こちら を参照してください。

API キーがアプリケーション ID に対して有効かどうかを確認するには、アプリを再生モードで実行します。コンソールに API キーが有効かどうかを示すメッセージが出力されます。

アプリケーション ID が正しくない場合、トラッカーは動作しません

カメラの使い方の説明

適切なフィールドにカメラの使い方の説明を追加します。Kudan はカメラを使用するため、アプリに使い方の説明が含まれていないと、iOS 10 以降ではアプリがクラッシュします。
[Player Settins] の [iPhone, iPod Touch and iPad Settins] タブを選択し、[Other Settings] の [Camera Usage Description] に任意の説明を入力してください。

使い方の説明

GPS などの追加のハードウェア コンポーネントを必要とする機能をアプリに追加する場合、それらの使い方の説明を追加することも忘れないでください。

BuildHelper の追加

Unity 2019 以降でビルドした Xcode のプロジェクトには iOS の標準ライブラリを内包した UnityFramework が含まれるようになりました。Kudan フレームワークはファットバイナリーをサポートしているため、ビットコードを有効にしてアプリをコンパイルすることはできませんが、この UnityFramework も [Enabel Bitcode] を No にする必要があります。

Unity 2019 以降では、Unity プロジェクトに BuildHelper.cs ファイルを追加することで Xcode のプロジェクト設定を Unity 側から指定できるようになりました。以下の操作を行ってください。

Project ペインの Assets フォルダーを右クリックして [Create > Folder] を選択し Editor フォルダを作成します。作成した Editor フォルダを右クリックして、[Create > C# Script] を選択し、ファイル名を BuildHelper.cs にします。

BuildHelper.cs を Visual Studio などで開き、以下のコードで置き換えます。

#if UNITY_2019_1_OR_NEWER
#if UNITY_IPHONE

using System.IO;
using UnityEditor;
using UnityEditor.Callbacks;
using UnityEditor.iOS.Xcode;

public class BuildHelper
{
    [PostProcessBuildAttribute (1)]
    public static void OnPostProcessBuild (BuildTarget target, string path)
    {
        if (target == BuildTarget.iOS)
        {
            var projectPath = PBXProject.GetPBXProjectPath (path);
            var project = new PBXProject ();
            project.ReadFromString (File.ReadAllText (projectPath));

            var targetGUID = project.GetUnityFrameworkTargetGuid ();
            project.SetBuildProperty (targetGUID, "ENABLE_BITCODE", "NO");
            var iphoneGUID = project.GetUnityMainTargetGuid ();
            project.SetBuildProperty (iphoneGUID, "ENABLE_BITCODE", "NO");

            File.WriteAllText (projectPath, project.WriteToString ());
        }
    }
}

#endif
#endif
BuildHelper により、生成された Xcode プロジェクトでは [Enable Bitcode] が [No] になっています。Xcode で以下の操作を行う必要はありません。そのまま [Build And Run] してください。

Xcode プロジェクトのビルド

[File] -> [Build Settings] で、[iOS] を選択して [Build] をクリックします。Unity は、選択されたシーンをビルドして、選択されたフォルダーに Xcode プロジェクトを生成します。

 

Xcode プロジェクトの設定

Xcode プロジェクトでいくつかの設定が必要です。最初に、左側のツリー ビューからプロジェクトを選択して、[Build Settings] タブをクリックします。下にスクロールして、[Build Options] セクションの [Enable Bitcode] を [NO] に設定します。Kudan フレームワークはファットバイナリーをサポートしているため、ビットコードを有効にしてアプリをコンパイルすることはできません。

 

次に、有効なプロビジョニング プロファイルがあることを確認します。[Signing & Capabilities] タブの [Signing] セクションで開発チームを選択してください。

 

すべての設定が完了したら、画面の左上にある再生ボタンをクリックすると、アプリがビルドされ実行されるはずです。マシンに USB 接続されているデバイスがある場合は、ビルドが完了した後にアプリがそのデバイス上で実行されます。