Amazon Developer

as

Settings
Sign out
Notifications
Alexa
Amazonアプリストア
Ring
AWS
ドキュメント
Support
Contact Us
My Cases
開発
設計と開発
公開
リファレンス
サポート

マニフェストの[os.version]セクション

マニフェストの[os.version]セクション

[os.version]セクションでは、アプリがサポートするデバイスのOSバージョンの範囲を宣言します。Vegaはビルド時にこのセクションを検証し、Vegaパッケージングツール(VPT)はパッケージアプリについて再度検証します。

Vega SDK 0.24以降では、[os.version]セクションが必須となっています。このセクションがないとビルドが失敗します。

[os.version]
target = "1.2"
min = "1.2"

Vega SDK 0.24の時点で正式に定義されているOSバージョンはOS 1.2のみであるため、mintargetはどちらも1.2に設定してください。新しいOSバージョンが作成されたら、targetをビルドする対象の最新バージョンに設定し、minはサポートしている最も古いバージョンのままにしてください。

フィールド

次の表では、[os.version]セクションのフィールドについて説明します。

フィールド 必須 説明
min アプリがサポートする最も古いOSバージョン。有効なOSバージョンである必要があります。
target アプリがビルド対象としている最新のOSバージョン。有効なOSバージョンで、min以上である必要があります。

どちらの値も、正式なOSバージョンを指定する、引用符で囲まれた"M.n"文字列である必要があります。Vegaは、たとえその値が数値的に正しい形式であっても、正式に定義されていない値は受け付けません。

検証ルール

Vegaは、[os.version]セクションに以下のルールを適用しています。

  • mintargetはいずれも、SDK互換性マニフェストで既知のOSバージョンである必要があります。

  • mintarget以下でなければなりません。

  • すべての[[needs.module]]エントリは、minのOSバージョンで利用できる必要があります。

  • min以降に追加されたAPIは、ツールによって[[wants.module]]エントリとして記録されるため、コード側でガード処理する必要があります。詳細については、isPresentOnOSによる新しいAPIのガード処理を参照してください。

マニフェストの例

[os.version]セクションはほかのマニフェストセクションと並んで配置され、ツールは一致するOSバージョンのモジュールエントリを生成します。OS 1.2をターゲットとする完全なマニフェストは、次の例のようになります。

schema-version = 1

[package]
id = "com.example.myapp"
title = "My App"
version = "1.0.0"

[os.version]
target = "1.2"
min = "1.2"

# ツールによって生成されます。手動で編集しないでください。
[[needs.module]]
id = "/com.amazon.vega.os@IVega_1_2"

[os.version]セクションは開発者が設定する項目で、ツールによってモジュールエントリが生成されます。各OSバージョンモジュールのidは、ドットがアンダースコアに置き換えられたOSバージョンであるため、1.2/com.amazon.vega.os@IVega_1_2になります。

この例では、mintargetはどちらも1.2であるため、マニフェストには[[needs.module]]エントリが1つあり、[[wants.module]]エントリはありません。このツールは、minに対してはneedsを出力し、minより上のバージョンに対してのみwantsを出力します。

[os.version]セクションの追加

このセクションは3つの方法で追加できます。

方法 コマンド
手動で追加 manifest.tomlを直接編集します
マニフェスト生成ツールを使用 vega project update-manifest --os-min 1.2 --os-version 1.2
パッケージの再調整中に追加 vega project install --fix --os-min 1.2 --os-version 1.2

プロジェクトにまだ[os.version]セクションがない場合は、最初の2つの方法のいずれかを使用してください。これらの方法は、このセクションを新規作成する用途に適しています。

3つ目の方法は移行時に便利な方法ですが、用途は限定的です。必ず--os-min--os-versionの両方を指定します。installは書き込みを行う前にOSターゲットを解決します。[os.version]セクションがないプロジェクトで、--os-versionも指定されていない場合、installはMissing OS Versionで失敗し、何も書き込みません。両方のフラグを指定した場合、installはこのセクションを作成し、minの設定、targetの初期化を行い、📝 Set [os.version] min = "<v>" in manifest.tomlと表示して確認します。

3番目の方法には、さらに3つの制限が適用されます。

  • --os-minは、--fixと併用した場合にのみ有効になります。単独のvega project install --fixinstall <パッケージ>コマンドでは、このセクションは追加されません。

  • --dry-runは、変更を書き込まずにプレビューするオプションです。

  • 既に[os.version]が存在する場合、この形式はminのみを書き込み、targetは変更しません。従来の[os]セクションも、この目的では既存のセクションと見なされます。targetを変更するには、vega project update-manifestを使用してください。

マニフェストのOSのバージョン設定をコマンドラインから検証するには、vega project doctorを実行します。[[needs.module]][[wants.module]]のエントリを生成するには、vega project update-manifestを実行します。


Last updated: 2026年8月10日