Amazon Developer

as

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

パッケージと依存関係の管理

パッケージと依存関係の管理

アプリの依存関係には2つのグループがあり、Vegaはそれらを異なる方法で管理します。このガイドでは、これら2種類の依存関係を解決してインストールするツールと、OSバージョンターゲットがパッケージバージョンを選択する仕組みについて説明します。

OS提供のVegaパッケージには、@amazon-devices/プレフィックスが付いています(例:@amazon-devices/kepler-camera)。[os.version]ターゲットは、アプリが使用できるVegaパッケージのバージョンを制限し、vega project installがそれらを解決します。reactlodashなどの通常のnpmパッケージは、パッケージマネージャーを使用していつもの方法で解決します。

どちらの種類もパッケージマネージャーがインストールします。vega projectによってインストールされることはありません。代わりに、vega projectは、OSバージョンターゲットに合わせてOS提供パッケージの正しいバージョンを解決し、package.jsonに書き込みます。その後、開発者のパッケージマネージャー(npmyarnpnpmなど)を実行して、それらのダウンロードとインストールを行います。

解決、インストール、ビルドのチェーン

始める前に、manifest.toml[os.version]セクションがあることを確認してください。vega project install --fixは、このセクションに基づいてアプリのOSターゲットを解決します。そのため、このセクションがないとMissing OS Versionエラーが発生し、何も書き込まれません。セクションの作成と再調整を1つのコマンドで行うには、vega project install --fix --os-min 1.2 --os-version 1.2のように両方のフラグを追加します。セクションを追加するその他の方法については、マニフェストの[os.version]セクションを参照してください。

解決済みバージョンのプロジェクトをビルド済みアプリに移行するには、次のコマンドを実行します。

クリップボードにコピーしました。

vega project install --fix
npm install
vega project doctor
npx react-native build-vega
  1. vega project install --fixは、アプリの[os.version].targetと互換性がある各@amazon-devices/*依存関係の最新の公開バージョンを選択し、それらのバージョンをpackage.jsonに書き込みます。何もダウンロードしませんし、node_modulesフォルダを変更することもありません。

  2. npm installは、vega project installが書き込んだバージョンをダウンロードして、インストールします。プロジェクトで既に使用されているパッケージマネージャーを使用してください。

  3. vega project doctorは、ビルドの前にプロジェクトを検証します。検証に失敗すると0以外のコードで終了するため、そのコードをCIパイプラインでゲートとして使用できます。

  4. npx react-native build-vegaはアプリをビルドし、vpkgを生成します。package.jsonでビルドスクリプトを使用することもできます。

すべてのコマンドとオプションの詳細については、Vega SDK CLIリファレンスを参照してください。

OSバージョンターゲットがパッケージバージョンを選択する仕組み

manifest.toml[os.version]セクションは、vega project installで解決するバージョンを指定します。

クリップボードにコピーしました。

[os.version]
target = "1.2"
min = "1.2"
  • target - vega project installにより、各@amazon-devices/*パッケージは、このOSバージョンで利用可能な最新バージョンに解決されます。

  • min - アプリがサポートする最も古いOSバージョン。このツールは、minで指定されたOS提供モジュールを必須の[[needs.module]]エントリとして記録します。minで最初に指定されたモジュールからtargetまでのモジュールを、オプションの[[wants.module]]エントリとして記録します。コードでは、これらのモジュールが追加するAPIを保護し、minのデバイスでもアプリが実行されるようにする必要があります。

mintargetはいずれも、"M.n"形式の文字列で正式なOSバージョンを指定する必要があります。Vegaは、たとえその値が数値的に正しい形式であっても、正式に定義されていない値は受け付けません。Vega SDK 0.24の時点では、正式に定義されているOSバージョンはOS 1.2のみです。mintargetはどちらも1.2に設定してください。

詳細なフィールド定義、検証ルール、モジュール IDの形式については、マニフェストの[os.version]セクションを参照してください。

パッケージの追加、更新、再調整

次の表では、各アクションを実行するコマンドについて説明します。

コマンド アクション
vega project install <パッケージ> 新しい@amazon-devices/*パッケージを1つ追加します。
vega project install --fix 現在のターゲットに合わせて、すべてのOSパッケージのバージョンを再調整します。
vega project update --os-version <バージョン> --dry-run 実際に適用する前に、別のOSターゲットへの変更をプレビューします。
vega project update-manifest [os.version]を手動で編集した後、マニフェストのモジュールエントリを再生成します。

package.jsonを書き換えるコマンド(installupdateなど)が終了したら、パッケージマネージャーを実行して変更のインストールと再ビルドを行います。

この場合、update-manifestは、package.jsonではなく、manifest.toml[[needs.module]]エントリと[[wants.module]]エントリを書き換えます。これを実行した後、新しいモジュールエントリに合わせてpackage.jsonを再調整するためにvega project install --fixを実行し、パッケージマネージャーを実行してから再ビルドします。

パッケージマネージャーの選択

vega projectコマンドはpackage.jsonのみを書き込みます。npmyarnpnpmを呼び出すことはありません。プロジェクトで既に使用されているパッケージマネージャーを使用してください。解決された@amazon-devices/*バージョンはプレーンなpackage.jsonエントリです。npm互換のパッケージマネージャーであれば、どれでも同じ方法でこれらのエントリをインストールします。


Last updated: 2026年8月21日