Visual Studio for Mac のビルド構成について
重要
Visual Studio for Mac は、Microsoft の モダン ライフサイクル ポリシーに従って、2024 年 8 月 31 日に廃止される予定です。 引き続き Visual Studio for Mac を使用できますが、VS Code 用の新しい C# 開発キット拡張機能のプレビュー バージョンなど、Mac 上の開発者向けの他のいくつかのオプションがあります。
開発プロセス中、さまざまなビルドに使用できるように、ソリューションとプロジェクトのプロパティからなるさまざまな構成を保存できます。 テンプレートを利用し、Visual Studio for Mac で作成されたプロジェクトには通常、アプリのデバッグとアプリのデプロイをそれぞれサポートする、デバッグ構成とリリース構成が含まれています。
カスタム構成を作成する場合、「ビルド構成の作成と編集」を参照してください。
Note
このトピックは、Visual Studio for Mac に適用されます。 Windows での Visual Studio については、「ビルド構成について」を参照してください。
ソリューション構成
ソリューション構成は、ソリューション内のすべてのプロジェクトの構成を指定するために使用されます。 [ビルド] > [構成] 項目の [構成マッピング] タブを使って、開いているソリューションで項目ごとにターゲット構成を割り当てることができます。 次の画像で確認できます。
プロジェクトのビルド構成
プロジェクトには複数の構成が与えられる傾向があります。 プロジェクトが対象とする構成とプラット フォームは、プロジェクトのビルド時に使用されるプロパティを指定するために一緒に使用されます。 構成を切り替えることで、ビルド時に異なる出力が可能になります。 たとえば、デバッグ構成を選択すると、デバッグ シンボルが出力されるので、デバッガーは関数名、パラメーター、変数をクラッシュしたアプリケーションのスタック トレースから解決できます。 開発時にはこのような追加情報が役に立ちますが、ファイル サイズが膨大になるため、配布には適していません。
各プラットフォームには、そのビルドに固有の構成があります。 プロジェクトのビルド構成ページには、[プロジェクト オプション] ダイアログで [ビルド] セクションに移動することでアクセスできます。 このダイアログを開くには、プロジェクトを右クリックし、[オプション] を選択するか、ソリューション エクスプローラーでプロジェクトをダブルクリックします。
実行構成
Visual Studio for Mac では、実行構成を設定できます。 実行構成は、下の画像のように、ツール バーのビルド構成選択の隣にあるドロップダウンで提示されます。
実行構成は、一連の実行オプション、名前、さまざまな目的でプロジェクトに定義されるいくつかの構成からなります。 実行構成はプロジェクト レベルで定義されます。デフォルトは実行可能プロジェクトごとに自動的に作成されます。ただし、必要な数だけ追加できます。 プロジェクトの種類によっては、追加の実行構成が自動的に生成されます。 たとえば、watchOS プロジェクトの場合、"グランス構成と通知構成" が生成されることがあります。
構成は他の開発者と共有したり (この場合、構成は .csproj ファイルに保存)、ローカル保存したり (この場合、構成は .user ファイルに保存) することができます。
Android 実行構成
Android プロジェクトの実行構成では、プロジェクトの実行時またはデバッグ時に起動する特定のアクティビティ、サービス、ブロードキャスト レシーバーを指定できます。 さまざまな起動条件下でコンポーネントをテストするために、インテント エクストラ データを渡し、インテント フラグを設定できます。
MainLauncher
以外のアクティビティの場合、物理デバイスでデバッグするために、アクティビティ属性に Exported=true
を追加しておく必要があります。あるいは、インテント フィルターを定義しておきます。
実行構成に含まれるデータの例
次の一覧は、実行構成に含まれることがあるデータ例です。
- 通常の .NET プロジェクト
- 代替スタートアップ アプリ
- 引数の開始
- [作業ディレクトリ]
- 環境変数
- Mono ランタイム オプション (Mono で実行時のみ使用)
- Android プロジェクト
- エントリ ポイント (アクティビティ、サービス、レシーバー)
- インテント引数とデータ
- iOS プロジェクト
- モード (通常、バック グラウンド フェッチ)
- iOS 拡張プロジェクト
- スタートアップ アプリ: デフォルトまたはカスタム
- WatchKit プロジェクト
- モード (グランス、通知)
- 通知ペイロード