翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
AppStream 2.0 動的アプリケーションフレームワークを使用して動的アプリケーションプロバイダーを構築する
AppStream 2.0 動的アプリケーションフレームワークは、動的アプリケーションプロバイダーを構築するために使用できる、AppStream 2.0 ストリーミングインスタンス内の API オペレーションを提供します。動的アプリケーションプロバイダーは、提供されている API オペレーションを使用して、ユーザーがリアルタイムでアクセスできるアプリケーションのカタログを変更できます。動的アプリケーションプロバイダーによって管理されるアプリケーションは、イメージ内に存在することも、Windows ファイル共有やアプリケーション仮想化テクノロジーなどからインスタンス外に存在することもあります。
注記
この機能には、Microsoft アクティブディレクトリドメインに参加済みの AppStream 2.0 常時オンまたはオンデマンドフリートが必要です。詳細については、「 AppStream 2.0 での Active Directory の使用」を参照してください。
目次
動的アプリケーションフレームワークについて
動的アプリケーションフレームワークでは、プロセス間メッセージで Apache Thrift ソフトウェアフレームワークAddApplications
、RemoveApplications
、ClearApplications
で構成されます。
動的アプリケーションフレームワーク Thrift 定義と名前付きパイプ名
Thrift では、AppStream 2.0 が提供する単純な定義ファイルを使用して RPC クライアントをコンパイルできます。RPC クライアントを使用すると、ストリーミングインスタンスで実行されている AppStream 2.0 エージェントソフトウェアと通信できます。RPC クライアントを自分の言語用にコンパイルする方法については、Apache Thrift ドキュメント
AppStreamServer.thrift
namespace netstd AppStream.ApplicationCatalogService.Model const string ServiceEndpoint = "D56C0258-2173-48D5-B0E6-1EC85AC67893"; struct AddApplicationsRequest { 1: required string userSid; 2: required list<Application> applications; } struct AddApplicationsResponse { } struct RemoveApplicationsRequest { 1: required string userSid; 2: required list<string> applicationIds; } struct RemoveApplicationsResponse { } struct ClearApplicationsRequest { 1: required string userSid; } struct ClearApplicationsResponse { } struct Application { 1: required string id; 2: required string displayName; 3: required string launchPath; 4: required string iconData; 5: string launchParams; 6: string workingDirectory; } exception AppStreamClientException { 1: string errorMessage, 2: ErrorCode errorCode } exception AppStreamServerException { 1: string errorMessage, 2: ErrorCode errorCode } enum ErrorCode { } service ApplicationCatalogService { AddApplicationsResponse AddApplications(1:AddApplicationsRequest request) throws (1: AppStreamClientException ce, 2: AppStreamServerException se), RemoveApplicationsResponse RemoveApplications(1:RemoveApplicationsRequest request) throws (1: AppStreamClientException ce, 2: AppStreamServerException se), ClearApplicationsResponse ClearApplications(1:ClearApplicationsRequest request) throws (1: AppStreamClientException ce, 2: AppStreamServerException se), }
AppStream 2.0 のアプリケーション使用権限管理のための API アクション
以下の API オペレーションを使用して、AppStream 2.0 のアプリケーション使用権限を管理できます。
AddApplicationsRequest
オペレーション
AppStream 2.0 ユーザーのアプリケーションカタログにアプリケーションを追加します。AppStream 2.0 によって表示されるアプリケーションカタログには、この API オペレーションを使用して追加したアプリケーションと、イメージに追加したアプリケーションが含まれています。これらの方法の一方または両方を使用してアプリケーションを追加した後、ユーザーはアプリケーションを起動できます。
リクエストの構文
文字列 userSid;
list<Application> applications;
リクエストパラメータ
userSid
-
リクエストが適用されるユーザーの SID。
タイプ: 文字列
必須: はい
長さの制限: 最小長は 1、最大長は 208 文字。
applications
-
リクエストが適用されるアプリケーションのリスト。
タイプ: 文字列
必須: はい
Application
オブジェクト
アプリケーションの表示と起動に必要なアプリケーションメタデータを記述します。アプリケーションの識別子は一意である必要があり、API オペレーションまたはイメージを介して指定された他のアプリケーションと競合してはなりません。
id
-
指定されているアプリケーションの ID。この値は、AppStream 2.0 アプリケーションレポートの
application_name
の値に対応し、ユーザーがアプリケーションを起動したときに提供されます。ユーザーがストリーミングセッション中に 1 つ以上のアプリケーションを起動した日ごとに、使用状況レポートを有効にすると、AppStream 2.0 によってアプリケーションレポートが Amazon S3 バケットにエクスポートされます。アプリケーションレポートの詳細については、「アプリケーションレポートのフィールド」を参照してください。タイプ: 文字列
必須: はい
長さの制限: 最小長は 1、最大長は 512 文字。
displayName
-
指定されているアプリケーションの表示名。この名前は、アプリケーションカタログでユーザーに表示されます。
タイプ: 文字列
必須: はい
長さの制限: 最小長は 1、最大長は 512 文字。
launchPath
-
起動するアプリケーションの実行可能ファイルへの Windows ファイルシステムパス。
タイプ: 文字列
必須: はい
長さの制限: 最小長は 1、最大長は 32,767 文字。
iconData
-
アプリケーションカタログに表示する Base 64 エンコードイメージ。このイメージは .png、.jpeg、または .jpg のいずれかの形式にする必要があります。
タイプ: 文字列
必須: はい
長さの制限: 最小長は 1、最大長は 1,000,000 文字。
launchParams
-
アプリケーションを起動するために使用されるパラメータです。
タイプ: 文字列
必須: いいえ
長さ制限: 最大長は 32,000 文字です。
workingDirectory
-
アプリケーションを起動する作業ディレクトリへの Windows ファイルシステムパス。
タイプ: 文字列
必須: いいえ
長さ制限: 最大長は 32,767 文字です。
RemoveApplicationsRequest
オペレーション
AddApplicationsRequest
オペレーションを使用して追加されたアプリケーションを削除します。アプリケーションは、ユーザーのアプリケーションカタログから削除されます。アプリケーションが削除されたら、起動することはできません。アプリケーションがまだ実行中の場合は、AppStream 2.0 はそのアプリケーションを閉じません。AppStream 2.0 イメージで直接指定されているアプリケーションは、削除できません。
リクエストの構文
文字列 userSid;
list<Application> applications;
リクエストパラメータ
userSid
-
リクエストが適用されるユーザーの SID。
タイプ: 文字列
必須: はい
長さの制限: 最小長は 1、最大長は 208 文字。
applications
-
リクエストが適用されるアプリケーションのリスト。
タイプ: 文字列
必須: はい
ClearApplicationsRequest
オペレーション
AddApplicationsRequest
オペレーションを使用して、アプリケーションカタログに追加されたすべてのアプリケーションを削除する必要があります。アプリケーションが削除されたら、起動することはできません。ClearApplicationsRequest
オペレーションが使用されているときにアプリケーションが実行されている場合、AppStream 2.0 はそれらを閉じません。AppStream 2.0 イメージで直接指定されているアプリケーションは、削除できません。
リクエストの構文
文字列 userSid;
リクエストパラメータ
userSid
-
リクエストが適用されるユーザーの SID。
タイプ: 文字列
必須: はい
長さの制限: 最小長は 1、最大長は 208 文字。