テスト用のアプリケーション イメージ パッケージをサイドロードする

開発中に、テストのためにイメージ パッケージを Azure Sphere デバイスにサイドロードする必要がある場合があります。 Visual Studio または Visual Studio Code 統合開発環境 (IDE) を使用してアプリケーションをビルドすると、SDK によってアプリケーション イメージがパッケージ化されます。 Azure Sphere デバイスに直接アクセスできる場合、SDK は パートナーとしてマークされていない既存のアプリケーションを削除し、新しいイメージ パッケージをデバイスに読み込んで起動し、デバッグを有効にすることもできます。 イメージ パッケージをコマンド ラインから直接サイドロードすることもできます。

まず、 デバイスの appDevelopment 機能を有効にし、クラウド アプリケーションの更新プログラムをサポートしていない デバイス グループにデバイス を追加する必要があります。 このようなグループにデバイスを割り当てると、サイドロードされたアプリケーションがクラウドデプロイによって上書きされなくなります。 デバイスを準備するには、 az sphere device enable-development コマンドを 使用します。 その後、イメージをサイドロードできます。

コマンド ラインからイメージ パッケージをサイドロードしてデバッグする

コマンド ラインからイメージ パッケージをサイドロードするには、デバイス上の既存のアプリケーションを削除してから、新しいアプリケーションを読み込みます。

デバイス上のすべてのアプリケーションを停止および削除するには:

az sphere device sideload delete

1 つのアプリケーションを削除するには、次のように --component-id オプションを追加します。

az sphere device sideload delete --component-id <ComponentID>

次に、新しいイメージ パッケージをサイドロードします。

az sphere device sideload deploy --image-package <imagepackagepath>

imagepackagepath をイメージ パッケージへのパスに置き換えます。 Visual Studio または Visual Studio Code を使用している場合は、アプリケーションのプロジェクト フォルダーの bin\ARM\Debug または bin\ARM\Release サブフォルダーにイメージ パッケージを見つけることができます。 既定では、コマンドはアプリケーションをデプロイした後に起動します。

アプリケーションをデバッグするには、 az sphere device sideload deploy コマンドに --manual-start フラグを追加して自動起動を抑制し、デバッグのためにアプリケーションを起動します。

az sphere device sideload deploy --manual-start --image-package <imagepackagepath>
az sphere device app start --debug --component-id <ComponentID>

コマンドは、高レベル アプリケーションの出力ポートとデバッグ ポートを表示します。

   Output Port: 2342
   GDB Port: 2345

アプリケーションをパートナーとしてマークする

関連するアプリケーションは、パートナー アプリケーションとしてマークする必要があります。 複数のアプリケーションを読み込む状況は多数あります。たとえば、相互に通信する高レベルとリアルタイムのアプリケーションのペアなどです。 アプリケーションをパートナーとしてマークすると、2 番目のアプリケーションが読み込まれると、アプリケーションが削除されなくなります。 Visual Studio と Visual Studio Code IDE が新しいイメージ パッケージをサイドロードすると、パートナー アプリケーションとしてマークされていない既存のアプリケーションはすべて削除されます。

Visual Studio で CMake を使用してアプリケーションをパートナーとしてマークするには:

  1. アプリケーションの launch.vs.json ファイルを編集します。

  2. 次の行を追加します。

    "partnerComponents": [ "<Component ID>" ]
    

    パートナー アプリケーションのコンポーネント ID を に <Component ID> 置き換え、ファイルを保存します。 各アプリケーションの コンポーネント ID は 、app_manifest.json ファイル内、または az sphere device image list-installed または az sphere device app show-status を使用して確認できます。

Visual Studio Code で CMake を使用してアプリケーションをパートナーとしてマークするには:

  1. アプリケーションの .vscode\launch.json ファイルを編集します。

  2. 次の行を追加します。

    "partnerComponents": [ "<Component ID>" ]
    

    パートナー アプリケーションのコンポーネント ID を に <Component ID> 置き換え、ファイルを保存します。 各アプリケーションの コンポーネント ID は 、app_manifest.json ファイル内、または az sphere device image list-installed または az sphere device app show-status を使用して確認できます。