UnrealEngine4研究所

UnrealEngine4の研究/開発をしてます。ガルルソフトウェア研究所です。

2016年10月

UnrealEngine4のアプリをiOSで動かす(7) プロビジョニングファイル

さあいよいよプロビジョニングファイルの取得です。ここでは今まで登録、申請してきた情報を一気に結びつけます。画面左のProvisioning ProfilesからALLを選択してください。

prov


次に「manually generate profiles」を選択

prov2

■iOS App Developmentを選択してcontinue

prov3

■割り当てるAppIDを選択します
さっきワイルドカードで指定したアプリを選択します

prov4
■さっき申請した承認書を選択

prov5
※画面では2つになっていますが、後で登録した方が下になります

■機器をヒモづける
さっきUDIDを登録した機器を選択します

prov6
■Provisioning profileに名前を付けます
好きな名前を付けて構いません

prov7

■そしてついにダウンロード
長かったですね・・・。ダウンロードして保存します。

prov8

おつかれさまでした。これでようやくプロビジョニングファイルと鍵がそろいましたので、やっとアンリアルエンジンの作業に戻ることができます。


UnrealEngine4のアプリをiOSで動かす(6) デバイス登録

デバイス登録です。ここまでの流れを軽くおさらいをします。

・アプリを実機で動かすための承認書、認証キーを取得したい
・アプリ企画を申請してAPPID(管理番号)を取得しました
・取得したAPPIDを使って承認書を得るための鍵と申請書を作りました
・申請書を提出して承認書を得ました

ここでは、承認を得られたのでデバッグに使用するデバイス(iPhone)をDeveloperCenterに登録をします。これで限定的に実機上でアプリを動かすことができます。もちろんAPP Storeに公開すればこの限定が外れて制限なく世の中のiPhoneにインストールできるようになります。このステップを終えればようやくプロビジョニングファイルにリーチしますよ。

※初回、もしくは2台目の登録に必要な手順ですので既にUDIDを登録している場合は次に進んでも構いません。

■UDIDを入手する
自分のiPhoneの個体識別番号(UDID)をApple Developer Centerに登録します。
そうすることで、限定的に所有のiPhoneでアプリを動作させることができるようになります。
具体的にはiTunesで個体識別番号(UDID)抜き出し、そのUDIDをDevelopperCenterに登録するだけです。

■iPhoneの個体識別番号(UDID)を確認する
・iTunesを開いてiPhoneのマークをクリック
(図はmac版ですがWindows版も同様の操作で取得できます)

BlogPaint

     ⬇

・「概要」のページを表示する
「シリアル番号」をクリックすると「UDID」→「ECID」→「機種ID」と変化するので「UDID」を表示させます。UDIDの番号の上で右クリックするとコピーできます

701

     ⬇

 UDIDを記録したらiTunesを閉じてしまっても構いません

     ⬇

■UDIDを登録する
ここからは再びブラウザでの作業になります。DeveloperCenterにアクセスします。
https://developer.apple.com/

・Certificate,IDs & Profilesを開きます
510

     ⬇

■Devices > All を選択

750


■右上の「+」ボタンを押して新しいデバイスの登録を開始します

702

     ⬇

■適当な名前(下図ではiPhone)とさきほど記録したUDIDを入力します
(下図ではPlease enter a valid UDIDというエラーが表示されていますが正しいUDIDを入れてください)

640
     ⬇

  Continue

     ⬇

730
     ⬇

   Register

     ⬇

740

     ⬇

 Doneを押して登録完了

これでデバイスの登録まで完了しました。アプリのID、デバイスの登録、承認書の3点が整いましたので、いよいよプロビジョニングファイルの取得に進むことができます。

UnrealEngine4のアプリをiOSで動かす(1) 問題
UnrealEngine4のアプリをiOSで動かす(2) 概要
UnrealEngine4のアプリをiOSで動かす(3) バンドルID
UnrealEngine4のアプリをiOSで動かす(4) 鍵と申請書
UnrealEngine4のアプリをiOSで動かす(5) 申請と承認書
UnrealEngine4のアプリをiOSで動かす(6) デバイス登録とプロビジョニング
UnrealEngine4のアプリをiOSで動かす(7) UE4とiPhoneへの転送設定

UnrealEngine4のアプリをiOSで動かす(5) 申請と承認書

先ほど作った申請書(CSRファイル)をDevelopperCenterへアップロードします。申請書を提出することで承認書ダウンロードすることができるようになります。


■Developper Centerへ移動
ここではブラウザで作業をしますのでDevelopperCenterへアクセスしてください。
Developer  > Account > Certificate, IDs & Profilesを選択


・Certificate > Allを選択

520


・Certificate >All > Certificate Signing Requestを選択。

530
※すでに承認を受けている場合は右上の「+」を押して追加します。


・「iOS App Development」にチェックを入れて「Continue」します

540



・次の画面でもContinueする。


・次の画面でさっき自分で作った申請書(CSRファイル)をアップロードする
560

     ⬇

・承認完成!
570


■CERファイルのダウンロードができるようになりました!
承認されたファイルはCertificate > Allからいつでもアクセス可能で必要なときにダウンロードができるようになっています。これをダウンロードして保存してください

     ⬇

 CERファイルを入手!


UnrealEngine4のアプリをiOSで動かす(1) 問題

UnrealEngine4のアプリをiOSで動かす(2) 概要
UnrealEngine4のアプリをiOSで動かす(3) バンドルID
UnrealEngine4のアプリをiOSで動かす(4) 鍵と申請書
UnrealEngine4のアプリをiOSで動かす(5) 申請と承認書
UnrealEngine4のアプリをiOSで動かす(6) デバイス登録とプロビジョニング
UnrealEngine4のアプリをiOSで動かす(7) UE4とiPhoneへの転送設定

UnrealEngine4のアプリをiOSで動かす(4) 鍵と申請書

2・CSRファイルとKEYの作成

Win上で自分で申請書と認証キーを作る

さて次は承認書(*.CER)をダウンロードしてくるための申請書(*.CSR)を作成します。このCSRファイルやKEYを自動生成するためのWindows用ツールがUE4に用意されているのでそれを使います。この時に「申請書」と「鍵(*.KEY)」を同時に生成して、後ほどダウンロードしてくる承認書(*.CER)と「鍵」をペアで使用します。


「PackageManager.exe」というツールはWindows用のツールとなっておりmacを使った通常のiOSアプリの申請とはここが異なるので注意してください。

 

flow30

・パッケージマネージャーの操作

パッケージマネージャーはインストールした場所にもよりますがUE4のインストール先にあります。

C:\Program Files (x86)\Epic Games\4.13\Engine\Binaries\DotNET\IOS\IPhonePackager.exe

 ip

起動するとまず、iPhoneに転送したいプロジェクトの在り処を聴いてくるので、*.uprojectを指定する。そうすると、以下のような画面が出てくる。

30

一番上の「Create Certificate request and key pair」を選択すると新しいウインドウが開く。



■「認証キー」が完成

この画面でメールアドレスと名前を入力して「Generate a Key pair」を押して、適当な場所に「DeveloperKeyPair.key」を保存する。これが認証キー。


35


■「申請書」の作成
次に、「Generate Certificate Request.」ボタンを押すと「Certificate Signing Request.csrというファイルが作られる。これが「申請書」


38



さあ、いよいよ次はこの申請書をもって、実際に申請してみよう!


UnrealEngine4のアプリをiOSで動かす(1) 問題
UnrealEngine4のアプリをiOSで動かす(2) 概要
UnrealEngine4のアプリをiOSで動かす(3) バンドルID
UnrealEngine4のアプリをiOSで動かす(4) 鍵と申請書
UnrealEngine4のアプリをiOSで動かす(5) 申請と承認書
UnrealEngine4のアプリをiOSで動かす(6) デバイス登録とプロビジョニング
UnrealEngine4のアプリをiOSで動かす(7) UE4とiPhoneへの転送設定

UnrealEngine4のアプリをiOSで動かす(3) バンドルIDの設定

今回はapple Developer Programからメンバーセンターへ移動してアプリIDを取得します。プロビジョニングファイルを手に入れるためには、アプリのID、デバイス登録、承認書類の3つを揃える必要があります。そのための大事なアイテムの1つです。


1・アプリIDの作成
Developer Centerで今から作るアプリを申請してアプリのIDを作成します。

WEBブラウザからDeveloperCenterへアクセスする。
https://developer.apple.com/

■Certificate,IDs & Profilesを選択
cert


■画面が切り替わるのでDeveloper  > Account > Identifiers > AppIDsを選択
03

     ⬇

・App IDs > Continueを選択
※すでにApp IDを持っている場合はAPP IDの選択画面になるので、新しく作るか、既存のものを選びます
04

     ⬇
appid

次にApp ID Descriptionを設定する。これは管理用の名前なのでなんでもいい。
複数のアプリIDがある場合に区別するためのタイトルみたいなもの。
ここでは「OthelloGame」としています。

重要なのは次の「Bundle IDを設定する」というところ。ワイルドカードで指定する。もちろん後からBundleIDは確認できるが、後々UE4のプロジェクト設定で同じものを入力することになるので、ちゃんとメモっておくこと。
 
05



     ⬇

・Registerを押して登録完了
     ⬇
07



UnrealEngine4のアプリをiOSで動かす(2) 概要

■概要

アプリIDとプロビジョニングファイルと承認書を用意する

自作アプリをiOSに転送するためにはアンリアルエディタの
プロジェクト設定から「iOS > Mobile Provisioning」の欄で
iOS向けの設定を行うことができます。
ここの設定に必要になるファイルは以下の3つです。

*.cer(承認書)
*.key(開発キー)
*.mobileProbitioning(プロビジョニングファイル)


これが正しく設定できればiPhoneへの転送はなんら問題ないの
だけれども。しかし、このファイルってどうやって準備するの
でしょうか?これらを全部揃えるのに、いくつもの手続きを
通らなくてはいけないので、概要を説明します。

0・AppleIDを作成、MemberShipに加入する
 $99かかります、入っておいてください

1・アプリIDの作成

・Apple Developper Centerで今から作るアプリを
 申請してアプリのIDを取得します
・アプリIDはいくつでも作成できます。重要なのは「BundleID」です
・あと会社名も間違えないようにメモっておこう

 

2・CSRファイルとKEYの作成
・UEのツールで申請書(CSR)と認証キー(KEY)を作ります
・ここで作るCSRはCERとは異なります。
・CERを得るための承認書がCSRです
・「認証キー」は、後でダウンロードしてくる「認証ファイル」と
 セットで使われます

3・CSRファイルのアップロード
・ブラウザからAppleDevelopperCenterへアクセスします
・アプリを選んで「認証ファイル作成」の申請をする
・ここで提出するのがさっき作った申請書(CSR)

4・CERファイルのダウンロード
・すぐに「アプリの承認ファイル(CER)」ができあがるので
 ダウンロードできます。

5・機器登録
・アプリIDを作成してもらい承認ファイルを得たとしても不特定多数の
 デバイスにインストールすることはできません
・許可してほしいデバイス(iPhone)を登録します

6・プロビジョニングファイルの取得
・「登録した機器」、「アプリID」、「アプリの承認ファイル」の
 3点がそろってるはず
・これらを関連付けた「プロビジョニングファイル」を作成して
 もらうことができます

7・UE4を通じてiPhoneに転送
・最後は、登録したアプリの「バンドルID」「デベロッパー名」
 「モバイルプロビジョニング」「認証キー」「承認ファイル」を
 それぞれ矛盾が出ないようにUEに登録します
・うまくいけばiPhone用の実行ファイル(ipa)が生成されて、
 転送できるようになります

まずは「0・AppleIDを作成、MemberShipに加入する」から始めましょう。これは説明不要だと思いますので次に進む前にMembershipに登録しておいてください。$99かかります。
MemberShipに参加入会するとMobileProbitioningファイルや、
CERファイルがApple Developer Centerからダウンロードできるように
なります。

https://appleid.apple.com/

UnrealEngine4のアプリをiOSで動かす(1)

UnrealEngineではWindowsで作ったアプリを簡単にiPhoneへ出力することができる、らしいが、やってみると、UnrealEngineによらないプロビジョニングファイルとか証明書とかの準備でひたすらつまずいたのでメモっていきます。

手順をざっくりフローにするとこんな感じになる。上から順に矢印をたどっていくことで最終的にiPhoneでの起動にたどり着くのだけれども、見ての通りとっても複雑だ。

flow
 

とりあえず問題が色々ある
ひととおり試行錯誤してみてつまずいたのがこの辺りだった。
 

1・UE4で読み込ませるプロビジョニングファイル(Pファイル)がない

2・PファイルをUEに読み込ませてもNo Validとなって有効にならない

3・Certificationファイルを読み込ませても(*.cer)がNo Valid

4・そもそも*.cer以下、Cファイル)ファイルがない

5・Cファイルと一緒に求められるKeyファイルがない

6・Cファイルが有効なキーとペアにならない

7・MACiPhoneに転送しようと思うとコンパイルでフリーズする

8・承認ファイルがなくてiOS向けのパッケージングができない

9・UE4-Game-info.plistがない

10・UDIDってどうやって取得するのか?


これらの問題は申請書と一緒に生成されるべきキーファイルが一致してないとか、Appleでの登録情報とアプリでの設定の不一致だったり、そもそもUEで用意されてるはずのファイルが無かったりで、ひとえにこれが問題である、と断定できないので、1つずつ確実に処理していきます。最終的にはCER、KEY、MOBILEPROVITIONINGの3点が揃えばうまく動きます。

以降の解説ではWindowsのみで進行します。iTunesが必要になります。私のやり方ではApple MemberShipに加入する必要があります($99)、アンリアルエンジンのバージョンは4.13201610月20日時点での情報です。


UnrealEngine4のアプリをiOSで動かす(1) 問題
UnrealEngine4のアプリをiOSで動かす(2) 概要
UnrealEngine4のアプリをiOSで動かす(3) バンドルID
UnrealEngine4のアプリをiOSで動かす(4) 鍵と申請書
UnrealEngine4のアプリをiOSで動かす(5) 申請と承認書
UnrealEngine4のアプリをiOSで動かす(6) デバイス登録とプロビジョニング
UnrealEngine4のアプリをiOSで動かす(7) UE4とiPhoneへの転送設定
ギャラリー
  • 第6回ぷちコン入賞賞品がスゴい、開封の儀!
  • 第6回ぷちコン入賞賞品がスゴい、開封の儀!
  • 第6回ぷちコン入賞賞品がスゴい、開封の儀!
  • 第6回ぷちコン入賞賞品がスゴい、開封の儀!
  • 第6回ぷちコン入賞賞品がスゴい、開封の儀!
  • 第6回ぷちコン入賞賞品がスゴい、開封の儀!
  • 第6回ぷちコン入賞賞品がスゴい、開封の儀!
  • 第6回ぷちコン入賞賞品がスゴい、開封の儀!
  • 第6回ぷちコン入賞賞品がスゴい、開封の儀!
  • ライブドアブログ