UDN
Search public documentation:

UnrealiPhonePackagerJP
English Translation
中国翻译
한국어

Interested in the Unreal Engine?
Visit the Unreal Technology site.

Looking for jobs and company info?
Check out the Epic games site.

Questions about support via UDN?
Contact the UDN Staff

モバイル用ホーム > iOS プロビジョニング概要 > iPhonePackager ツール

iPhonePackager ツール

概要


iPhonePackager ツール の用途は、iOS ハードウェアデバイス上で動作する「Unreal Engine 3」アプリケーションをパッケージ化することです。またこのツールは、署名証明書やモバイルプロビジョンといった関連ファイルのインストールおよびコンフィギュレーション、さらには、接続デバイスへのデプロイも処理します。

コマンドライン インターフェース


このツールは、引数をつけずにコマンドラインから起動することができます。その場合、グラフィカルなアプリケーションとして起動するか、あるいは、次のような形式で引数をつけて起動することができます。

  • iPhonePackager Command GameName Configuration [ switches ] [ RPCCommand ]

  • それぞれの引数の意味は次のとおりです。
    • Command (コマンド) - このツールの主モードです。
    • GameName (ゲーム名) - パッケージされるゲームのディレクトリ名 (例: UDKGame) です。
    • Configuration (設定) - パッケージされるゲームのビルド設定です。(例: Debug (デバッグ)、Release (リリース)、Shipping (出荷))。
    • [ switches ] (スイッチ)- オプションの引数です。パッケージ化のプロセスにおいてさまざまなことがらを制御するスイッチを、スペースで区切ってリストします。(それぞれ先頭に - をつけます)。
    • [ RPCCommand ] (RPC コマンド) - オプションの引数です。ある種のコマンドに使用されます。(特に、RPC やデプロイの場合に)。

Command (コマンド):

  • packageapp - パッケージ化するファイルを集めてリモートの Mac に送信し、アプリケーションのディレクトリを作成します。ただし、IPA ファイルを作成したり、PC にファイルをコピーし返したりすることはありません。このモードを使用するには、RPCUtility がリモートの Mac にインストールされていなければなりません。また、このモードでは、Mac 上でデバッグするために Xcode を使用することが想定されています。
  • repackageipa - ファイルを集めて IPA ファイルの中にパッケージ化します。ただし、PC 上でローカルに実行します。このモードを使用するには、スタブファイルがあらかじめ packageipa によって作成されていなければなりません。-sign とともに使用することによって、アプリケーションにコード署名することができます。
  • packageipa - パッケージ化するファイルを集めてリモートの Mac に送信し、IPA ファイルを作成します。IPA ファイルは送り戻されます。RPCUtility がリモートの Mac にインストールされていなければなりません。-createstub と共に使用することによって、後に repackageipa とともに使用するスタブを作成することができます。(packageipa -createstub が、iPhone を対象としたコンパイル UE3.sln によって使用されるデフォルトのモードです)。
  • install - すでに作成済みの IPA ファイルを、ローカルマシン上の接続された iOS すべてにデプロイします。iTunes がインストールされている必要があります。IPA ファイルの名前は、 <GameName> と <Configuration> に基づいて自動的に決められるか、あるいは、明示的なファイル名が追加引数としてコマンドライン上で渡された場合は、それが使われます。(例: iPhonePackager deploy UDKGame Release C:\foo.ipa とすると、<installpath>\Binaries\IPhone\Release-iphoneos\UDKGame\UDKGame.ipa ではなく、 C:\foo.ipa がインストールされます)。
  • resigntool - 再署名ツールを直接起動します。
  • certrequest - 証明書要求の生成ツールを自動的に起動します。
  • gui - 設定ウィザード / ツールのリストを表示します。 Unreal iOS 設定ウィザード のセクションを参照してください。

Optional switches (オプションのスイッチ):

  • -interactive - -sign とともに使用すると、3 つの設定基準が満たされていない場合に設定ウェザードが立ち上がります。
    • モバイルプロビジョンが <InstallPath>\<GameName>\Build\IPhone に存在している。
    • 一致する署名証明書がインストールされている。
    • PList オーバーライドが <InstallPath>\<GameName>\Build\IPhone\<GameName>Overrides.plist に存在している。 設定ウィザードを使用すると、これらのファイルを容易に作成することができるとともに、Apple からプロビジョンと証明書を得るための CSR を作成することができます。
  • -verbose
    • より詳細 (verbose) な出力が可能になります。パッケージ化などが考慮される個々のファイルをリスト表示します。
  • -network
    • パッケージ化された IPA ファイルを、ネットワークファイルがロードしている状態で使用するという指定を行います。 (-distribution とは併用できません)。
  • -compress=best
  • -compress=fast
  • -compress=none
    • IPA ファイル作成時の圧縮 (compress) レベルを制御します。開発中の場合は -compress=none を使用すると、イタレーションが最速になります (none は「なし」)。PC 上での圧縮時間と iOS デバイス上の解凍時間を節約することができます。App Store への提出を準備する場合は、 -compress=best を使用すると、提出サイズに最適な圧縮が可能となります。
  • -distribution
    • App Store への配布用にビルドを作成する場合に使用します。署名の身元に関する選択、および出力 IPA の名前 (Distro_GameName.ipa) を制御します。
  • -sign
    • PC 上でパッケージ化しているときにコード署名を実行します。リモートの Mac 上でパッケージ化している場合は、コード署名が常に実行されます。
  • -strip
    • 実行ファイルからシンボルを取るか否かについて制御します。Mac 上でリモートのパッケージ化作業を行っている場合にのみ有効となります。
  • -createstub
    • Mac 上でリモートのパッケージ化作業を行う場合に、すべてのコンテンツをパッケージ化するのか、それとも単に不可欠なコンテンツだけをパッケージ化するのかを制御するとともに、PC 上に戻ってきた .ipa ファイルの名前について制御します (.ipa または .stub)。このオプション引数は、 -distribution との併用はできません。

#GUI

Unreal iOS 設定ウィザード


Unreal iOS コンフィギュレーション ウィザードは、iPhonePackager ツールのためのグラフィカルなインターフェースです。このウェイザードを使用して iPhonePackager の機能すべてにアクセスすることができます。たとえば、アプリケーションのパッケージ化や、Apple デベロッパ資格をともなったアプリケーションへの署名、iOS デバイスへのパッケージのデプロイなどを、ビジュアルなインターフェースを通じて実行できるようになります。

Unreal iOS 設定ウィザードへのアクセス

Unreal iOS 設定ウィザードの起動は、エディタ内から、あるいはスタートメニューから、または「Unreal Frontend」から可能です。

UnrealiOSConfigurationWizard.jpg

初めて iOS デバイスにデプロイする場合は自動的に起動します。その後、内部のデータを修正する場合は、手動で起動してしなければなりません。

エディタ内から起動する

まだiOS プロビジョニングの設定段階であれば、ツールバー内の [ Start this Level on iPhone ] (iPhone 上でこのレベルを開始する) ボタンをクリックすることによって、Unreal iOS 設定ウィザードが立ち上がります。

StartThisLevelOniPhone.jpg

まずコンソール ウィンドウがいくつか表示され後、設定ウィザードが現れます。

スタートメニューから起動する

Windows のスタートメニューにあるショートカットからいつでも Unreal iOS 設定ウィザードを起動することができます。 Unreal Development Kit > [お持ちの UDK バージョン] > Tools (ツール) に置かれています。

configwizard_startmenu.jpg

このショートカットをクリックすると設定ツールが開きますので、iOS プロビジョニングを初期設定するか、開発中に必要となる場合は更新することができます。

UFE から起動する

「Unreal Frontend」アプリケーション内から iOS プロビジョニングを直接起動するには、 ipp_ufe_launch_button.png ボタンをクリックします。

ipp_ufe_launch.png

このボタンをクリックすると設定ツールが開きますので、iOS プロビジョニングを初期設定するか、開発中に必要となる場合は更新することができます。

コンフィギュレーション ウィザード インターフェース

Unreal iOS コンフィギュレーション ウィザード インターフェースは、タブの集合体です。各タブに含まれている機能は、プロビジョニングとデプロイのプロセスにおけるさまざまな局面に特化されたものです。

このインターフェースには、常に使用可能なボタンが 2 つ含まれています。

ボタン 説明
ipp_cancel_button.png コンフィギュレーション ウィザードを終了します。パッケージ化プロセスが進行中であっても継続することはありません。
ipp_package_button.png コンフィギュレーション ウィザードを終了します。パッケージ化プロセスが進行中であれば継続します。

コンフィギュレーション ウィザードのタブについては以下で詳しく説明します。

[New User] (新たなユーザー) タブ

[New User] タブには、これまで iOS 用アプリケーションを開発したことがない開発者のためのツールが含まれています。

ipp_new_tab.png

ボタン 説明
ipp_new_create_certkey_button.png Generate Certificate Request (証明書依頼) ウィンドウ を開きます。
ipp_new_import_provision_button.png Apple のデベロッパ ウェブサイトからダウンロードされたプロビジョニング プロファイルをインポートします。
ipp_new_import_cert_button.png Apple のデベロッパ ウェブサイトからダウンロードされた開発用証明書と鍵ペアをインポートします。
ipp_new_edit_plist_button.png Edit Info.plist (Info.plist 編集) ウィンドウ を開きます。

[Already a Registered iOS Developer] (すでに登録されている iOS 開発者) タブ

[Already a Registered iOS Developer] (すでに登録されている iOS 開発者) タブには、これまでに iOS 用アプリケーションを (「Unreal」または他の方法によって) 開発したことがあり、開発用証明書とプロビジョニング プロファイルをすでに持っている開発者のためのツールが含まれています。

ipp_existing_tab.png

ボタン 説明
ipp_new_import_provision_button.png Apple のデベロッパ ウェブサイトからダウンロードされたプロビジョニング プロファイルをインポートします。
ipp_new_import_cert_button.png Apple のデベロッパ ウェブサイトから以前にダウンロードされた開発用証明書と鍵ペア、または、キーチェーン アクセスからエクスポートされた .p12 ファイルをインポートします。
ipp_new_edit_plist_button.png Edit Info.plist (Info.plist 編集) ウィンドウ を開きます。

[Advanced Tools] (高度なツール) タブ

[Advanced Tools] (高度なツール) タブには、IPA ファイルへ署名するためのツール、ならびに、IPA ファイルをインストールおよびデプロイするためのツールが含まれています。

ipp_advanced_tab.png

ボタン 説明
ipp_advanced_installipa_button.png パッケージ化されたゲーム (IPA) を、接続されているすべての iOS デバイスにインストールします。
ipp_advanced_resign_button.png 署名ツール再署名ツールタブ を開きます。
ipp_advanced_provcert_button.png 署名ツールプロビジョンと証明書タブ を開きます。
ipp_advanced_other_button.png 署名ツールデプロイ ツール タブ を開きます。

ツール ウィンドウ

[Generate Certificate Request] (証明書依頼) ウインドウ

[ Generate Certificate Request ] (証明書依頼) ウィンドウは、iOS アプリケーションに署名するための鍵ペアを生成するとともに、Apple のデベロッパ ウェブサイト上で証明書を作成するために使用される証明書依頼を生成します。

ipp_gencert_window.png

ステップ 説明
電子メールアドレス Apple iOS デベロッパ アカウントと関連づけられている電子メールアドレスです。
一般的な名前 証明書に関連づけられる名前です。
  • ipp_createcert_genkey_button.png
  • ipp_createcert_usekey_button.png
  • 新たな鍵ペアファイルを生成します。
  • 既存の鍵ペアファイルをインポートします。
ipp_createcert_gencert_button.png 証明書依頼ファイル (.csr) を生成します。これは、開発用証明書を作成するために、Apple のデベロッパサイトにアップロードされるものです。

[Customize Info.plist] (Info.plist をカスタマイズする) ウィンドウ

[ Customize Info.plist ] (Info.plist をカスタマイズする) ウィンドウは、Info.plist ファイルの内容を編集するために使用します。

ipp_editplist_window.png

入力フィールド 説明
Bundle Display Name (バンドル表示名) iOS デバイスのホームスクリーン上に置かれるアプリケーションのアイコンのすぐ下に表示される名称です。この名称は、コンパクトなものにして、割り当てられたスペース内に収まりカットされないようにしてください。 (例: UDN iOS Game)
Bundle Name (バンドル名) アプリケーションを識別するために利用される圧縮された名称です。文字数は 16 文字未満でなければなりません。 (例: UDNiOSGame)
Bundle Identifier (バンドル識別子) Apple のデベロッパ ウェブサイトで既に作成している App ID のバンドル識別子と一致しなければなりません。 (例: com.EpicGames.UDNiOSGame)

ボタン 説明
ipp_editplist_find_button.png ファイルエクスプローラを開き、Info.plist ファイルを表示します。これによって、ファイルを開き手動で編集することができるようになります。
ipp_editplist_save_button.png 上記入力フィールドの情報を Info.plist ファイルに保存します。

署名ツール

署名ツールは、特化した機能をもつタブの集合体です。以下でタブと機能について解説します。

再署名ツール

[ 再署名ツール ] タブを使用することによって、パッケージ化された特定のゲーム (IPA ファイル) のプロビジョニング プロファイルまたは証明書、Info.plist を素早く簡単に編集することができます。

ipp_resigntool_tab.png

Input IPA (入力 IPA)

  • 再署名する入力パッケージ化済みゲームファイルを設定します。

Choose Mobile Provision (モバイル プロビジョンの選択)

  • Use existing embedded.mobileprovision (既存のエンベッドされたモバイル プロビジョンを使用する) - IPA と関連づけられているプロビジョン プロファイルを修正しません。
  • Specify mobile provision file (モバイル プロビジョン ファイルを指定する) - 現在のプロビジョニング プロファイルと置き換えるプロビジョン プロファイルを設定します。

Choose Signing Certificate (署名証明書の選択)

  • Search for a matching certificate (一致する証明書を検索する) - IPA の署名に使用されていた証明書と一致するインストール済み証明書を検索するとともに、それを使用して IPA に再署名します。
  • Specify an explicit certificate (明示的な証明書の指定) - 現在の証明書と置き換える証明書を設定します。

Adjust Info.plist (Info.plist の修正)

  • Leave Info.plist unchanged (Info.plist を変更しないままにする) - IPA の現在の Info.plist にまったく修正を加えません。
  • Common Modifications (一般的な修正) - Info.plist の最も一般的な要素を置き換えることができるようになります。
    • CFBundleDisplayName - 現在のバンドル表示名と置き換えるために使用する文字列を設定します。
    • CFBundleIdentifier - 現在のバンドル識別子と置き換えるために使用する文字列を設定します。
  • Full Editing (フルに編集) - IPA の Info.plist をエクスポートするとともに手動で編集し、再インポートできるようになります。
    ボタン 説明
    ipp_resigntool_export_button.png IPA の現在の Info.plist をファイルにエクスポートすることによって、手動で編集できるようになります。
    ipp_resigntool_import_button.png IPA の現在の Info.plist と置き換える Info.plist ファイルをインポートします。

Output Settings (出力の設定)

  • *Compress Modified files? * (編集したファイルを圧縮しますか?) - ここにチェックを入れると、編集したファイルが圧縮されます。

ボタン 説明
ipp_resigntool_createipa_button.png 入力 IPA を使用して指定された変更を実行することによって、再署名 IPA を作成します。

Provisions and Certs (プロビジョンと証明書)

[ Provisions and Certs ] (プロビジョンと証明書) タブは、現在インストールされているプロビジョニング プロファイルと証明書を表示するとともに、追加のプロビジョニング プロファイルと証明書をインポートします。

ipp_provcert_tab.png

ボタン 説明
ipp_provcert_refresh_button.png Installed Provisions リストをリフレッシュします。新たにインストールされたプロビジョンと証明書は、リストがリフレッシュされるまで表示されません。
ipp_provcert_import_cert_button.png 新たな証明書をインポートおよびインストールします。
ipp_provcert_import_prov_button.png 新たなプロビジョニング プロファイルをインポートおよびインストールします。

Deployment Tools (デプロイ ツール)

ipp_deployment_tab.png

ボタン 説明
ipp_deployment_rescan_button.png 接続されている iOS デバイスを再スキャンするとともに、 Connected Devfices (接続されているデバイス) リストに追加します。
ipp_deployment_installipa_button.png 接続されているすべてのデバイスに IPA をインストールします。アプリケーションがすでにデバイス上で動いている場合は、インストールが完了する前に終了します。ただし、デバイスが待機状態にある場合 (3D アプリケーションが動いていない状態など)、インストールが速やかに進行します。
ipp_deployment_unistallipa_button.png 接続されているすべてのデバイスから IPA をアンインストールします。
ipp_deployment_backup_button.png このコマンドによって、Documentsディレクトリにあるすべてのファイルのバックアップが取られます。バックアップ先は、 [install path]\[GameName]\iOS_Backups\[DeviceName] です。なお、
  • [install path] は、ブランチパスまたはインストールルートを表します。
  • [GameName] は、バックアップを取るゲームの名前です (通常、UDKGame)。
  • [DeviceName] は、バックアップが取られている接続済みデバイスの名前です (例 : Michael's iPhone)。
ログファイルや他のプロファイリング データをデバイスから取得する場合に非常に便利です。(たとえば、.memlk や fps チャート)。
ipp_deployment_checkipa_button.png 入力されたデバイス ID が IPA と関連づけられているかどうかを調べます。
ipp_deployment_checkprov_button.png 入力されたデバイス ID がモバイル プロビジョンと関連づけられているかどうかを調べます。

IPP ツールを使用して iPhone からファイルを取得する方法:

  • /binaries/iPhone/ にある IPP.exe を開きます。
  • [Deployment Tools] (デプロイ ツール) タブにおいて、デバイスを選択し、Backup Documents (ドキュメントのバックアップ) をクリックします。
  • デバイスで使用した IPA に進みます。(たとえば、Release UDKGame をクックした場合は \Binaries\IPhone\Release-iphoneos\MobileGam\UDKGame.ipa )。
  • ファイルは、 \UnrealEngine3\UDKGame\iOS_Backups\ に保存されることになります。
  • GameplayProfiler.exe によってそのファイルを開くことができます。