Windows環境だけでiOS向けアプリをUnityで作る – Unity Cloud Build を試す

前回の記事の続きです。
iOS開発に必要な証明書類の準備が整ったので、実際にUnity Cloud BuildでiOSビルドを試してみます。

Unity Cloud Build のページは下記です
Login : Unity Cloud Build : build.cloud.unity3d.com : Unity

こちらからログイン後、Pro版のアクティベーションコードを入力すると使用できるようになります。

ログインできるとコントロールパネルに移動します
Projects : Unity Cloud Build : build.cloud.unity3d.com : Unity

cloud_build_01

まだ何も登録されていない状態なので、「Add a New Project」でUnityプロジェクトの登録を行います。

cloud_build_02

プロジェクトがホスティングされているサーバーのURLを入力します。
Unity Cloud Build 内ではホスティングまではやってくれないので、外部のサーバーを指定します。
サーバーは SVN, GIT, Perforce が選択できます。SVNの場合はSSH接続は非対応のようです。
ここではSVNサーバーを選択しました。入力したら「Next:Access >」

cloud_build_03

SVNサーバーへの接続user, passを入力します。
接続のアカウントはコミット権限のない、readonlyのもので大丈夫なようです。
入力したら「Next:Analysis >」をクリックします。
同じページに戻ってきてしまう場合は、URLが間違っているか、
アカウント情報が違うか、SSH接続しようとしているかだと思います。
入力情報が間違ってないか確認をしてみてください。

cloud_build_04

サーバに接続ができたら、次にプロジェクトのビルド対象ディレクトリの指定をします。
ここでは、リポジトリのルートがそのままUnityProjectのディレクトリになっていたのでそのまま次に行きました。
UnityProjectのディレクトリが深い階層にある場合は、その階層まで移動し、
「Folder has a Unity project!」と表示されたのを確認して「Next: Settings >」をクリックします。

cloud_build_05

プロジェクト設定を行います。
「App Name」はアプリケーション名に当たります
「Bundle ID」には jp.domainname.appname の形式で入力します。
iOS向けのビルドを行う場合、App ID 登録時に設定した「App ID Suffix」に対応したものを入力してください

「Supported Platforms」がビルドを行うプラットフォームです。
「Auto-build」にチェックをすると、リポジトリをポーリングして、更新があった場合に自動でビルドしてくれるようになります。
設定後「Next:Credentials >」をクリックします。

cloud_build_06

次のページでプラットフォーム依存の設定を行います。
iOSをビルド設定に含めた場合には、Ad hocに用いる .mobileprovisionファイル、.p12ファイルが必要になります。
Windows環境で上記のファイルを作成する方法については前回の記事を参考にしてみてください。
入力し終えましたら「Next:Build >」をクリックします

cloud_build_07

「Now Building Your Project…」と出てきましたら設定完了です!
設定にミスがある場合はここでエラーが出ると思いますので、設定を確認してみてください。
しばらくしたらビルド結果が登録メールアドレスに届くと思います。

ビルドはそこそこ時間がかかるみたいです。
ローカルで10秒程度のWEBビルドが3~5分弱ぐらいかかっていました。
規模が大きいプロジェクトだと微妙かもしれませんが、
小規模のプロジェクトでCIとして使う分には十分かなと思います。

cloud_build_08

ビルドを終えるとプロジェクトページで上記のように閲覧できます
リビジョンはリポジトリのリビジョンではなく、
ビルド単位でインクリメントされてるみたいです。
「Share」をクリックするとそのビルドの共有用リンクが生成されます。
こちらのリンクをiOSビルドならiOS端末から、WEBビルドならPCからアクセスすると
インストールページ、もしくはWEBPlayerのページにアクセスできます。
WEBビルドだとこんなかんじです
Distro : Unity Cloud Build : build.cloud.unity3d.com : Unity

cloud_build_09

cloud_build_10

iOSの場合は初回アクセス時にアプリケーションのインストールに必要な、
プロファイルのインストールを要求されます。
プロファイルのインストールをしておくと、先ほどのリンクから直接アプリのインストールが行えるようになります。

cloud_build_11

インストール後、起動を試してみたら無事にいけました!

ちなみにビルドに失敗した場合の詳細ログは、対象のビルド -> Log -> Full Build Log から確認できます。
(今回ビルドしたものはevalを含んでおり、iOSだとビルドに失敗してました・・)

ビルド結果の送り先の追加、変更などはできない?みたいです。
Unity登録のメールアドレスに送られてきます
プロジェクトのページの Collaborator のページで共同開発者の登録が行えるようですが、
こちらへの追加時のアドレスもUnity登録のアドレスみたいです(試してないですが)

ということで、Unity Cloud Buildを試してみたメモでした。
大きな規模のプロジェクトでは自前でCIツールを導入したほうが、細かいことができたり融通は利きそうですが、
小規模なプロジェクトで用いるのであれば、環境整えずにお手軽に使えるUnity Cloud Buildがよさそうです。
Windows環境しかない人でもiOSビルドできるのも結構面白いのですが、
最後までWindowsだけで開発ってのはちょっと無理がありそうな印象でした。
(調べた限りだと、iOSアプリのリリースもMember Centerから行えるっぽいので技術的には行けそうですが)


「Windows環境だけでiOS向けアプリをUnityで作る – Unity Cloud Build を試す」への5件のフィードバック

    1. 今回はWindowsとCloud BuildでiOSアプリを実行するところまで試しただけです。
      アプリのリリース作業さえWindowsから行えれば可能ではあると思います。
      最近はプランによってはビルド間隔を短かくできたりもするっぽいので、
      Mac環境を用意しないでの開発もわりと現実的なのかもしれないですね

  1. Ad hocに用いる .mobileprovisionファイル、.p12ファイルを選択してビルドしようとすると以下のエラー出てきてしまうのですが
    わかりますでしょうか?

    Failed to update credentials! This does not appear to be a valid .p12 file. Perhaps it’s been corrupted.

  2. .p12ファイルを生成する手順や、設定したパスワードなどに違いはないでしょうか?
    また「openssl -info -in ios_distribution.p12」で証明書の情報が出力されるようです。
    こちらの情報に問題がないか確認してみてください
    参考:http://forum.unity3d.com/threads/this-does-not-appear-to-be-a-valid-p12-file-perhaps-its-been-corrupted.317164/

コメントを残す

メールアドレスが公開されることはありません。