Skip to content

Host Build

TakayukiHoshi1984 edited this page Mar 27, 2017 · 2 revisions

目次

iOS HostプラグインのBuildに必要なパッケージは以下の通りになります。

プロジェクト 説明
DConnectSDK dConnectSDKライブラリやリソース。
dConnectDeviceHost iOS Hostデバイスプラグイン。

iOS DeviceConnectでは複数のXcodeプロジェクトが関わってくるので、それらプロジェクトを一元管理する為の共同作業スペースとしてXcodeのWorkspaceを用意します。

Workspaceの名称と保存場所は特に問いません。

「iOS HostのBuildに必要なパッケージ」で挙げた物のbuildを行う為にまずWorkspaceに「必要なパッケージ」のXcodeプロジェクトをImportする必要があります。

まず、Finder上のdConnectSDKのプロジェクトファイル「DConnectSDK.xcodeproj」を、先ほど用意したWorkspaceのプロジェクトナビゲーターにドラッグ&ドロップしてプロジェクトをImportする正しくImportされた場合、ナビゲーターにdConnectSDKプロジェクトのファイル一式が表示されます。

そしてdConnectSDKと同じ手順でiOS Hostデバイスプラグインのプロジェクトファイル「dConnectDeviceHost.xcodeproj」をWorkspaceにImportする最終的にdConnectSDKとiOS Hostデバイスプラグインのファイル一式がナビゲーターに表示されれば完了です。

「プロジェクトのImport」で必要なパッケージをbuildする為のプロジェクトをImportしたことで、プロジェクトのファイル一式に加え、Workspaceにbuildターゲットという物が追加されます。

必要なパッケージの内、どれをbuildするかを選択するのに今回使うのがbuildターゲットとなります。
必要なパッケージの間にはbuildの依存関係があり、特にDConnectSDKはデバイスプラグインに先立ってbuildしなければなりません。

buildの依存関係を解決する形でのbuildターゲットのbuild順序は以下の様になります。

  1. DConnectSDK_framework
  2. DConnectSDK_resources
  3. dConnectDeviceHost_framework
  4. dConnectDeviceHost_resources

そして作業しているXcodeのWorkspace内でのbuildターゲットの切り替え方法だが、Xcodeのウィンドウの左上、RunやStopボタンの右にあるのが現在選択されているターゲットであり、そのターゲットをクリックする事で表示されるWorkspace内のbuildターゲット一覧から対象のbuildターゲットを選択する事でbuildターゲットの切り替えを行う事ができます。

あとは先ほど示したbuildターゲットのbuild順序でbuildを行います。buildを行うにはRunボタンを押すか、ショートカット⌘+Bを使う等して実行する事ができます。

また、各プロジェクトにはDebugとReleaseというbuild設定が有る。Debug build設定は開発段階のデバッグに適したパッケージのbuildを行い、Release build設定はデバッグ情報を除いて処理速度や成果物のデータサイズが快適化される形式でのパッケージのbuildを行います。

このDebugやReleaseのbuild設定を切り替える方法だが、DConnectSDKを例に挙げれば、DConnectSDKのプロジェクトファイルを選択し各種プロジェクト情報を表示させます。

更にbuildターゲットの各種build情報を表示させるが、buildターゲットの一覧が非表示の際はその一覧を表示させた上で、フレームワーク(.framework拡張子ファイル)のbuildターゲットであるDConnectSDK_frameworkを選択し各種build設定を表示します。

buildターゲットDConnectSDK_frameworkを選択したらBuild Phaseタブを選択し、表示されたbuildの各フェーズの内、スクリプトを走らせるフェーズを表示します。

そのスクリプトの内、CONFIGURATION build環境変数を”Debug”なり”Release”なりに設定する事でDebug・Release buildを切り替える事ができます(何も設定されていない場合はDebug buildになります)。

DConnectSDKとiOS Hostデバイスプラグインのプロジェクトが入ったディレクトリの下に、必要に応じて以下のような名称のディレクトリが生成されます。

  1. build

そして、DConnectSDKやiOS Hostデバイスプラグイン毎のプロジェクトディレクトリ以下、フレームワーク(.framework拡張子ファイル)やバンドル(.bundle拡張子ファイル)がbuildされる。

buildに失敗する場合は設定ミスの可能性があるので確認してください。

DConnectSDK
  • (Release時)
    • build/Release-framework/DConnectSDK.framework
    • build/Release-resources/DConnectSDK_resources.bundle
  • (Debug時)
    • build/Debug-framework/DConnectSDK.framework
    • build/Debug-resources/DConnectSDK_resources.bundle
iOS Hostデバイスプラグイン
  • (Release時)
    • build/Release-framework/dConnectDeviceHost.framework
    • build/Release-resources/dConnectDeviceHost_resources.bundle
  • (Debug時)
    • build/Debug-framework/dConnectDeviceHost.framework
    • build/Debug-resources/dConnectDeviceHost_resources.bundle

アプリを開発する際は、上記フレームワークとリンクさせ、バンドルをコピーさせるようにアプリのbuildターゲットで設定してください。

Clone this wiki locally