Unity制作のゲームをiOSでリリースするまでの流れ

2022年2月20日

はじめに

Unityで制作したゲームを、どうやってiOSの申請まで持って行くのか。

その流れと手順を、覚え書きっぽくまとめてみます。

主に注意すべき箇所だけ記載してあります。

なお、Unityでゲームそのものはもう完成している前提です。

まずは下準備

  1. MACにUnityとXCodeをインストール
  2. Windowsで作っていた場合は、プロジェクトをコピーしてUnityHubから開く
    • cocoapodのインストールなど促される場合があるので、インストール
  3. Apple DeveloperでAppIDを作成する
  4. App Store Connectで配信の基本部分を作成しておく
    • Apple IDが発行され、これがリンク先のIDとなるのでメモしておく(下記XXXXXXXXXXの部分)
      • https://itunes.apple.com/jp/app/idXXXXXXXXXX?mt=8
      • ※この作業はURLをプロモーション等で利用する場合のみ

Unityでビルド実行

  1. BuilidSetting変更
    • ターゲットをiOSにする
    • Player Settingにて「AutoGraphicsAPI」のチェックを外しその下にOpenGLES3、OpenGLES2を順に追加する
    • signing team id に自身のTeam IDを入れる(Apple Developerのアカウントページ等で確認)
    • Bundle IDにAppIDで登録したバンドルIDを入れる
    • バージョン番号(公開用のバージョン番号)、ビルド番号(内部ビルド用のバージョン番号)を入力
    • Target minimum iOS version 12.0する(Xcode12以上の縛り)
    • TargetSDKをDivice SDKにする(これにしないと最後のValidateが通らない可能性高い。但しSimuratorが使えないので実機デバッグとなる)
    • Strip Engine CodeをOFFにする
    • アイコンを用意してセッティングする
  2. 画面カメラのフレキシブルのチェックを外す(二か所)※縦画面固定にする場合など行う
  3. AdmobのアプリIDと広告IDを追加編集(※Admobを使っている場合)
  4. AdmobのiOS14(ATTダイアログ)対応
  5. Buildして出力

XCodeで読み込みビルドする

  1. XCodeを起動して、Unityで出力したプロジェクトファイルを読み込む
  2. Signing & Capabilitiesからチームを選択する
  3. 「AppTrackingTransparency.framework」を追加(※ATTダイアログ対応)
  4. Info.plistに「Privacy – Tracking Usage Description」を追加(※ATTダイアログ対応)
    • 値は何でもOK。例「あなたに関係のある広告を表示するために使用します」
  5. Info.plistに「GADIsAdManagerApp」を追加し、値はBooleanでTrueとする(※Admobを利用する場合)
  6. Info.plistの「Localization native development region」の Value を「Japan」に変更
  7. 次にそのまま右クリックし「Add Row」を選択。次に「Localizations」 を選択して「Item0」を表示して「Japanese」を選択する
  8. プロビジョニングファイルを設定する(実機デバッグの場合は開発用、アーカイブの場合は本番用)
  9. 実機デバッグ、もしくはビルド、またはアーカイブを実施
  10. 「dyld: Symbol not found: _GADErrorUserInfoKeyResponseInfo」エラーが発生した場合について
    • AdmobのSDKが入ってないので(cocoapodが上手く動作してないので)手動でAdmobフレームワークをoptionalで入れる
  11. Validate→UpdateでApp Store Connectへアップする

App Store Connectでの設定

  1. スクショを作ってアップ
    • 画面に出てるものは全部必須
  2. ビルド番号を選択してアプリをセット
    • 輸出コンプライアンス情報「App に暗号化が使用されていますか?Apple のオペレーティングシステム内の標準的な暗号化のみが App に使用されている場合も「はい」を選択します。」→はいを選択
    • 輸出コンプライアンス情報「App は、米国輸出管理規則のカテゴリー5、パート2に記載の免除資格のいずれか満たしていますか?」→はいを選択。ここで終了。
  3. マーケティングURLはAdmobを利用している場合は「app-ads.txt」の設置場所なのでほぼ必須
  4. AdMob利用時の「Appのプライバシー」の入力はこちらのサイトを参考に
  5. その他設定して、審査へ!