iOS にビルドするためのツールのインストール
この記事では、プレリリース ソフトウェアである Visual Studio Tools for Apache Cordova について述べています。説明されている機能はプレビュー中のため、変更される可能性があります。プレビュー版は、Microsoft ダウンロード センターからダウンロードできます。
Visual Studio を使用して iOS Simulator または iOS デバイス上で iOS アプリをビルドし、実行するには、リモート エージェント vs-mda-remote を、次に示す要件を満たす Mac コンピューターにインストールして構成する必要があります (現在、iOS アプリを Windows でビルドすることはできません)。ご使用の PC の Visual Studio で、このトピックの説明に従ってリモート エージェントを構成する必要もあります。
注意
Mac で仮想化テクノロジを使用して Windows を実行している場合は、iOS をローカルでビルドして実行できます。詳細については、「Parallels を使用して iOS 用 Cordova アプリケーションをビルドする」を参照してください。Mac ではなく クラウド ホスト型 Mac サービスを使用する場合の詳細については、「クラウドで iOS をビルドし、シミュレートする」を参照してください。
リモート エージェントをインストールする前に、Visual Studio Tools for Apache Cordova がインストールされていることを確認してください。
iOS をビルドおよびシミュレートするためのリモート エージェントのインストールと構成
ビルド要求を処理し、iOS デバイスまたは iOS Simulator でアプリを実行するエージェントを構成できます。 リモート エージェントをホストするには、Mac コンピューターに次のものがインストールされている必要があります。
Mac OS X Mavericks
Xcode 6
Xcode コマンド ライン ツール (ターミナル アプリから xcode-select --install を使用します)。
以下も必要になります。
Apple でのアクティブな iOS Developer Program アカウント
Xcode で構成されている iOS プロビジョニング プロファイル (プロビジョニング プロファイルをダウンロードし、ダウンロードした *.cer ファイルを実行します)
注意
詳細については、iOS Developer Library の「Maintaining Your Signing Identities and Certificates (署名 ID と証明書の管理)」を参照してください。
Xcode で構成されている署名 ID ([XCode]、[Preferences] の順に選択します)
リモート エージェントをダウンロードしてインストールするには
Mac 上のターミナル アプリから、次のように入力します。
sudo npm install -g vs-mda-remote --user=$USER
ここで、$USER は Mac でのユーザー名に置き換わります。 コマンドの実行時、パスワードも入力するよう促されます。
グローバル インストール (-g) スイッチが推奨されますが、必須ではありません。
インストール中、Mac で vs-mda-remote がインストールされ、開発者モードがアクティブ化されます。 Homebrew と 2 つの npm パッケージもインストールされます。
注意
Homebrew をインストールするには、sudo (管理者) のアクセス許可が必要です。sudo 以外で vs-mda-remote をインストールする必要がある場合には、Homebrew を手動で usr/local のl場所にインストールして、bin フォルダーをご使用のパスに追加することができます。詳細については、Homebrew ドキュメントを参照してください。開発者モードを手動で有効にする必要がある場合は、ターミナル アプリに「DevToolsSecurity –enable」と入力します。
コンピューターを Visual Studio の新しいバージョンに更新した場合は、リモート エージェントも現在のバージョンに更新する必要があります。
リモート エージェントを更新するには
- 前のセクションのインストール手順を繰り返します。
リモート エージェントを起動するには
Mac 上のターミナル アプリから、次のように入力します。
vs-mda-remote
既定のビルド ディレクトリである ~/remote-builds でエージェントが起動します。 エージェントの追加の構成オプションは、このトピックで後述します。
初めてエージェントを起動すると、ホスト、ポート、セキュリティ PIN など、Visual Studio でエージェントを構成するために必要な情報が提供されます。
重要
このリリースの新機能として、vs-mda-remote が、PIN を使用して、Visual Studio との間でビルド ペイロードを安全に転送できるようになりました。
ホスト名を使用して Visual Studio のリモート エージェントを構成することを想定している場合は、ホスト名を使用して Mac を ping して到達可能であることを確認してください。 そうでない場合は、代わりに IP アドレスを使用する必要がある場合があります。
リモート エージェントを使用する前に、Visual Studio でリモート構成を指定する必要があります。
Visual Studio からリモート エージェントを構成するには
エージェントが Mac でまだ実行していない場合は、リモート エージェントを起動します。
Mac で、Mac のホスト名または IP アドレスを取得します。
ifconfig コマンドを使用すると IP アドレスを取得できます。
Visual Studio のメニュー バーで、[ツール]、[オプション] の順に選択します。
[オプション] ダイアログ ボックスで、[Apache Cordova 用ツール] を開き、[リモート エージェントの構成] を選択します。
[Enable remote iOS processing] を [True] に設定します。
[ホスト]、[ポート]、[セキュリティ PIN] フィールドで、初めてリモート エージェントを起動したときにリモート エージェントが指定した値を入力します。 ホストは、ご使用の Mac の名前または IP アドレスになります。 既定のポートは 3000 です。
注意
ホスト名で Mac を ping できない場合、IP アドレスを使用する必要があることがあります。
[OK] をクリックすると、Visual Studio はリモート エージェントに接続します (エージェントは接続するために実行している必要があります)。
セキュリティで保護されているモードを無効にして、簡単な HTTP ベースの接続を有効にする場合は、ターミナル アプリで次のコマンドを入力します。
vs-mda-remote --secure false
Visual Studio でエージェントを構成する際、[セキュリティ PIN] フィールドは空白のままにすることができます。
エージェントを停止するには
- Mac 上のターミナル アプリで、Ctrl キーを押しながら C キーを押します。
初めてエージェントを起動する際、生成される PIN は制限された期間、有効になります (既定は 10 分)。 期間が終了するまでにエージェントに接続しない場合は、新しい PIN を生成する必要があります。
新しいセキュリティ PIN を生成するには
エージェントを停止します (または、Mac で 2 番目のターミナル アプリ ウィンドウを開き、これを使用してコマンドを入力します)。
Mac 上のターミナル アプリから、次のように入力します。
vs-mda-remote generateClientCert
セキュリティ上の目的で、Visual Studio とリモート エージェントをペアリングするサーバー証明書が、Mac の IP またはホスト名と関連付けられています。 この値が変更された場合、新しいサーバー証明書を生成し、新しい値で Visual Studio を再構成する必要があります。
新しいサーバー証明書を生成するには
エージェントを停止します。
Mac 上のターミナル アプリから、次のように入力します。
vs-mda-remote resetServerCert
メッセージが表示されたら、「Y」と入力し、Enter キーを押します。
Mac 上のターミナル アプリから、次のように入力します。
vs-mda-remote generateClientCert
上記の指示に従って、新しいセキュリティ PIN と IP またはホスト情報を入力します。
さまざまなコマンド ライン オプションを使用して、リモート エージェントを構成することができます。 たとえば、ビルド要求をリッスンするポートを指定し、ファイル システムに保持するビルドの最大数を指定できます (既定では、制限は 10 です。 最大数を超えたビルドは、エージェントによってシャットダウン時に削除されます)。
注意
一部のオプションは、vs-mda-remote のバージョン 0.2 以降変更されています。最も重要な変更は、--buildDir オプションの名前が --serverDir に変更されたことです。
リモート エージェントを構成するには
エージェント コマンドの完全なリストを参照するには、次のように入力します。
vs-mda-remote --help
セキュリティで保護されているモードを無効にして簡単な HTTP ベースの接続を有効にするには、次のように入力します。
vs-mda-remote --secure false
このオプションを使用する場合、Visual Studio でエージェントを構成する際、PIN フィールドを空白のままにします。
リモート エージェント ファイルの場所を指定するには、次のように入力します。
vs-mda-remote --serverDir <directory>
ここで <directory> は、ログ ファイル、ビルド、サーバー証明書が配置される Mac 上の場所です。 たとえば、/Users/username/builds などの場所があります。 (ビルドは、この場所のビルド番号によって整理されます)。
stdout と stderr をファイル (server.log) にキャプチャするバック グラウンド プロセスを使用するには、次のように入力します。
vs-mda-remote > server.log 2>&1 &
server.log ファイルは、ビルドの問題のトラブルシューティングに役立つ場合があります。
コマンド ライン パラメーターではなく、構成ファイルを使用してエージェントを実行するには、次のように入力します。
vs-mda-remote --config <path-to-config-file>
構成ファイルは、JSON 形式にする必要があります。 スタートアップ オプションとその値にダッシュを含めることはできません。 構成ファイルの例を参照するには、リモート エージェントのインストール ディレクトリ内の vs-mda-remote/examples/exampleConfig.json フォルダーを確認してください。 たとえば、パスは /usr/local/lib/node_modules/vs-mda-remote/examples/exampleConfig.json のようになります。
リモート エージェントの構成を確認するには
リモート エージェントを実行している状態で、2 番目のターミナル アプリのウィンドウを開きます ([Shell]、[New Window] を選択します)。
Mac 上の 2 番目のターミナル アプリのウィンドウから、次のように入力します。
vs-mda-remote test
重要
2 番目のウィンドウでエージェントが実行されていない場合、このコマンドは失敗します。
このコマンドは、テスト ビルドを開始します。 コマンドからの出力には、ビルド番号およびビルドに関するその他の情報 (進行状況など) が表示されます。
テスト ビルドを開始した後、ビルドを検証します。
3000 以外のポートでサーバーを起動した場合は、テスト ビルドを開始する代わりに、次のコマンドを使用します。
vs-mda-remote test https://localhost:<portNumber>
(Visual Studio でデバッグ構成とリリース構成を使用して) デバイス ビルドに対して開発者署名 ID が正しくセットアップされていることを確認するには、次のように入力します。
vs-mda-remote test --device
(Visual Studio で配布構成を使用して) デバイス ビルドに対して配布署名 ID が正しくセットアップされていることを確認するには、次のように入力します。
vs-mda-remote test --device --cfg distribution
アプリのプロビジョニングと証明書署名 ID の詳細については、「Visual Studio Tools for Apache Cordova でビルドされたアプリのパッケージ化」を参照してください。
場合によっては、ネイティブの問題のトラブルシューティングを行うために、生成された Xcode プロジェクトにアクセスする必要がある場合があります。 幸いにも、お客様は、ご使用のアプリのビルドに使用するプロジェクトにすばやくアクセスできます。
生成された Xcode プロジェクトにアクセスするには
iOS シミュレーターまたはデバイスのターゲットを使用してアプリをビルドします。
ビルドの完了後、出力ウィンドウに移動し、[ビルドから出力を表示する] を選択します。
ビルドの出力の最終的なエントリは、次のようなものになります。
1> ** BUILD SUCCEEDED ** 1> 1> Command finished with error code 0: /Users/<username>/remote-builds/builds/8382/cordovaApp/platforms/ios/cordova/build --debug
ご使用の Mac で、ビルドの出力で指定されたパスの ios フォルダーに移動します。 上記の例では、/Users/<username>/remote-builds/builds/8382/cordovaApp/platforms/ios になります。
重要
vs-mda-remote エージェントが停止すると、ビルド (生成された xcode プロジェクトを含む) が削除されます。ただし、コマンド --deleteBuildsOnShutdown false で vs-mda-remote を起動した場合を除きます。
このフォルダーでファイル .xcodeproj をダブルクリックすると、プロジェクトは Xcode で開きます。