macOS 用 Objective-C または Swift アプリのビルド
- [アーティクル]
-
-
最初の Mac アプリのビルドを開始するには、次の手順を実行します。
- リポジトリ サービス アカウント (GitHub、Bitbucket、VSTS、Azure DevOps) に接続します。
- アプリが保存されているリポジトリとブランチを選択します。
- ビルドのプロジェクトまたはワークスペースと、ビルドするスキームを構成します。
注意
アプリを配布するには、ビルドを証明書でコード署名する必要があります。 プロビジョニング プロファイルは省略可能です。 さらに、Mac インストーラー用のビルドは現在サポートされていません。
リポジトリ サービス アカウントに接続する必要があります。 アカウントが接続されたら、Mac プロジェクトが配置されているリポジトリを選択します。 リポジトリのビルドを設定するには、それに対する管理者とプルのアクセス許可が必要です。
リポジトリを選択したら、ビルドするブランチを選択します。 既定では、すべてのアクティブなブランチが一覧表示されます。
最初のビルドの前に、Mac プロジェクトを構成する必要があります。
ビルド構成の場合は、Xcode プロジェクトまたは Xcode ワークスペースと共有スキームが必要です。 App Center は、ブランチ内のプロジェクト、ワークスペース、共有スキームを自動的に検出します。 ビルドするプロジェクトまたはワークスペースと対応するスキームを選択します。
スキームが見つからない場合は、ビルドするスキームが共有されていることを確認し、スキームのコンテナーが選択したプロジェクトまたはワークスペースのいずれかであることを確認します。 また、ビルドを設定するブランチにこれらの変更がチェックインされていることを確認します。
する
ビルドを実行する Xcode バージョンを選択します。
既定では、開発者が構成されたブランチにプッシュするたびに、新しいビルドがトリガーされます。 これは"継続的インテグレーション" と呼ばれます。 新しいビルドを手動でトリガーする場合は、ビルド構成でこの設定を変更できます。
有効にすると、 CFBundleVersion
アプリの Info.plist の がビルドごとに自動的にインクリメントされます。 変更はビルド前に行われ、リポジトリにコミットされません。
選択したスキームにテスト ターゲットが選択されたテスト アクションがある場合は、各ビルドの一部として実行するようにテストを構成できます。 現在、App Center では XCTest 単体テストを実行できます。 App Center では、Mac ビルドの起動テストはサポートされていません。
ビルドが成功すると、ファイルが .app
生成されます。 ビルドをデバイスにインストールするには、署名された証明書が必要です。 ブランチから生成されたビルドに署名するには、構成ウィンドウでコード署名を有効にし、 有効な証明書 (.p12) と証明書のパスワードをアップロードします。 Xcode プロジェクトの設定は、アップロードするファイルと互換性がある必要があります。 プロビジョニング プロファイルは、コード署名では省略可能です。
現在、App Center では次の署名構成のみがサポートされています。
- 開発証明書のみを使用した開発エクスポート方法を使用した手動署名
- 開発者 ID エクスポート方法を使用した手動署名
- 開発エクスポート方法を使用した自動署名
コード署名の詳細については、 App Center の macOS コード署名ガイド と 、Apple 開発者向け公式ガイドを参照してください。
App Center は選択したブランチをスキャンし、Podfile が見つかると、すべてのビルドの開始時に自動的にステップが実行 pod install
されます。 これにより、すべての依存関係が確実にインストールされます。
リポジトリに 既に /Pods フォルダーが含まれている場合、App Center ではリポジトリ内のポッドをチェックイン済みであると見なされ、 は実行 pod install
されなくなります。
ブランチから正常に署名された各ビルドを、以前に作成した配布グループに配布するように構成できます。 [配布] セクション内から新しい配布グループを追加できます。 アプリにアクセスできるすべてのユーザーを含む、"コラボレーター" という名前の既定の配布グループが常に存在します。
構成を保存すると、新しいビルドが自動的に開始されます。
ビルドがトリガーされると、次の状態になります。
- queued - リソースが解放されるのを待って、ビルドがキューに入れられます。
- building - ビルドで定義済みのタスクが実行されています。
- succeeded - ビルドが正常に完了しました。
- failed - ビルドでエラーが見つかり、完了できませんでした。 ビルド ログをダウンロードして調べることで、ビルドのトラブルシューティングを行うことができます。
- canceled - ユーザー アクションによってビルドが取り消されたか、タイムアウトしました。
完了したビルド (成功または失敗) の場合は、ログをダウンロードして、ビルドの実行方法の詳細を理解します。 App Center には、次のファイルを含むアーカイブが用意されています。
|-- 1_build.txt (this is the general build log)
|-- build (this folder contains a separate log file for each build step)
|-- <build-step-1> (e.g. 2_Get Sources.txt)
|-- <build-step-2> (e.g. 3_Pod install.txt)
|--
|-- <build-step-n> (e.g. n_Post Job Cleanup.txt)
ビルド ステップ固有のログ (アーカイブのディレクトリにあります build
) は、トラブルシューティングと、ビルドが失敗した手順と理由を理解するのに役立ちます。
このファイルは .app
、Mac アプリを含む Mac アプリケーション アーカイブ ファイルです。
ファイルには .dsym
、アプリのデバッグ シンボルが含まれています。
- クラッシュ レポート モジュールを有効にしてアプリに App Center SDK を追加した場合、クラッシュ レポート サービスでは、人間が読み取り可能な (シンボリック化された) クラッシュ レポートを表示するために、ビルドにこの
.dsym
ファイルが必要です。
- HockeyApp SDK など、アプリでクラッシュ レポート用の別の SDK を追加した場合、サービスでは、人間が判読できるクラッシュ レポートを表示するファイルが必要
.dsym
です。
コードが に.app
署名しても、ファイルは.dsym
変更されません。 後でビルドにコード署名を行う場合、コード署名前に .dsym
生成された は引き続き有効です。
プロジェクトをビルドするには、 を使用 xcodebuild
します。これは、Xcode プロジェクトとワークスペースのビルド、クエリ、分析、テスト、アーカイブを行うコマンドライン ツールです。
新しいバージョンの macOS が追加されるたびに、ビルド マシンのバージョンの詳細が更新されます。 ビルド VM には、できるだけ早く Apple によってリリースされた最新バージョンが含まれています。