naichi's lab

3日後の自分(他人)への書き置き

【Unity】Unity Cloud BuildでiOSビルドに必要なMobile Provision Fileとp12 Fileを用意する

f:id:naichilab:20150917124702p:plain

環境

  • 記事更新日:2019/08/23
  • Mac OSX Mojave 10.14.5
  • Xcode Version 10.3 (10G8)

はじめに

この記事ではタイトルの通り、Unity Cloud BuildでiOSアプリのビルドをするのに必要な下記2つのファイルを用意する方法をまとめておきます。

  • Mobile Provision File
  • p12 File

f:id:naichilab:20150907235805p:plain

調べながら書いてますので間違っていたら指摘お願いします。

ファイルの種類

Mobile Provision Fileとp12 Fileには開発用(Development)と配布用(Distribution)の2種類があり、配布用はさらにApp Store公開用とAd Hoc(限定公開)用に分かれます。

それぞれの特徴は下記の通りです。(たぶん)

  • 開発用(Development)
    • App Storeへの公開はできない。
    • Mobile Provision File作成時に選択した端末にのみインストール可能。
  • 配布用(Distribution)
    • App Store用
      • App Storeへ公開するためのもの。
      • これを使ってUnity Cloud Buildでビルドしても、App Storeへ公開しないと端末へインストールできない。
    • Ad Hoc用
      • App Storeへの公開はできない。
      • Mobile Provision File作成時に選択した端末にのみインストール可能。

私の目的はUnity Cloud Buildで自動ビルドしたバイナリをそのままAppStoreに提出する事なので、
この記事の手順は全て配布用(Distribution)且つAppStore用のファイル作成手順として進めます。 App Storeを介さず、Unity Cloud Buildからのメール経由でiOS端末にインストールしたい場合は、Ad Hoc用のファイルを作るようにしてください。

前提

Apple Developer Program - Apple Developer

iOSアプリをリリースするために必要なApple Developer Programに加入してください。年間$99。

Mobile Provision File を取得する

まずはCertificate(開発者登録証明書)をXCodeで作ります。

  1. XCode -> Preferences...

  2. Accounts -> Apple IDs -> Manage Certificates...

    f:id:naichilab:20190824001011p:plain

  3. + -> iOS Distribution

    f:id:naichilab:20190824001405p:plain

次はSafariを開き、iOS Developer CenterでApp IDを登録します。

  1. Apple Developer Programを開き、右上のリンクからメンバーセンター

  2. サイドバーからCertificates, IDs & Profiles

    f:id:naichilab:20160830004229p:plain

  3. Identifiers -> App IDs -> [+]

    f:id:naichilab:20150908012147p:plain

  4. 情報を入力

    • App ID Description

      App IDに覚えやすい名前をつける。これは後で変えられます。

      今回は自分のアプリ共通で使えるWildCard App IDを作るので
      開発者名の naichilab って名前をつけました。

    • App ID Prefix

      変更不可

    • App ID Suffix

      Explicit(厳密)かWildcard(前方一致)を選びます。Wildcardはプッシュ通知やアプリ内購入などが制限されます。すぐ下に利用サービスを選ぶ部分があってWildcardを選ぶとグレーアウトするので使えない機能が分かります。

      今回はこれらを使うつもりないのでWildcardを選びました。com.naichilab.* と入力。

    • App Services

      どれも使うつもりないので全部OFF

    WildCard App IDの権限で問題ない場合は、複数アプリ間で使いまわせるようです。
    ですがExplicitでないとダメな場合は、面倒ですがアプリごとに都度作成しましょう。

  5. Continue & Submit

    Safariじゃないと読み込みが終わらず進めなくなることがあります。

    f:id:naichilab:20150908013334p:plain

    作成完了しました。

最後にProvisioning Profileを生成

  1. Profiles -> [+]

    f:id:naichilab:20150908014028p:plain

  2. App Storeを選択してContinue

    冒頭にも書きましたが、用途に合わせてApp StoreAd Hocを使い分けてください。

    f:id:naichilab:20150908014201p:plain

  3. さきほど作成したAppIDを選択

    f:id:naichilab:20150908014312p:plain

  4. XCodeから登録したCertificateを選択

    f:id:naichilab:20150908014446p:plain

  5. (Ad Hocを選択した場合) インストール可能にするデバイスを選択

    f:id:naichilab:20150909011532p:plain

  6. 適当に名前をつけてGenerate

    com.naichilab.* AdHoc Distribution@2019-08-23 とか

    f:id:naichilab:20150908014635p:plain

Downloadボタンが表示されるのでそのままダウンロードしておきます。拡張子は .mobileprovision です。

p12 File を取得する

  1. アプリケーション -> ユーティリティ -> キーチェーンアクセスを起動

    Xcodeで作った証明書が登録されています(iPhone Distribution〜)

  2. 右クリック -> 書き出す

    f:id:naichilab:20190824002817p:plain

    • 名前:自由に(iOS Distributionとか)
    • 形式:p12
  3. パスワード、確認ともに空白のままでOK

    キーチェーンのパスワードを聞かれるのでMacのパスワードを入力して書き出し

まとめ

これで.mobileprovisionファイルと.p12ファイルが手に入りました。

次回はいよいよUnity Cloud Buildで自動ビルド設定を行います。

参考にしたサイト