Package.GetAppInstallerInfo メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
.appinstaller XML ファイルの場所を返します。 アプリの .appinstaller XML ファイルの場所を取得する必要がある場合は、このメソッドを使用します。 たとえば、これは、アプリが関連付けられている .appinstaller ファイルに URI を共有する必要がある場合に便利です。 必要に応じて、URI に引数を追加できます。
public:
virtual AppInstallerInfo ^ GetAppInstallerInfo() = GetAppInstallerInfo;
AppInstallerInfo GetAppInstallerInfo();
public AppInstallerInfo GetAppInstallerInfo();
function getAppInstallerInfo()
Public Function GetAppInstallerInfo () As AppInstallerInfo
戻り値
.appinstaller XML ファイルの場所。
Windows の要件
デバイス ファミリ |
Windows 10, version 1809 (10.0.17763.0 で導入)
|
API contract |
Windows.Foundation.UniversalApiContract (v7.0 で導入)
|
例
次の例では、引数を含む .appinstaller URI を生成し、別のユーザーに URI を送信する電子メールを作成します。 この例では、 メソッドは他の ComposeEmailAsync
場所で定義されているものと見なされます。
AppInstallerInfo info = Windows.ApplicationModel.Package.Current.GetAppInstallerInfo();
if (info != null)
{
// Uri that was used to install the app.
// Example: http://contoso/connect4.appinstaller.
Uri appInstallerUri = info.Uri;
// Create the inner URI which uses a protocol handled by your app, passing any arguments needed in it
UriBuilder innerUriBuilder = new UriBuilder("my-app-protocol:");
innerUriBuilder.Query = "difficulty=hard&highscore=9000";
// Create outer URI builder for ms-appinstaller initializer link.
UriBuilder outerUriBuilder = new UriBuilder("ms-appinstaller:");
outerUriBuilder.Query =
$"source={Uri.EscapeDataString(appInstallerUri.ToString())}&activationUri={Uri.EscapeDataString(innerUriBuilder.ToString())}";
await ComposeEmailAsync(/* To */ colleagueEmail, /* Subject */ "Beat my high score!",
/* Body */ outerUriBuilder.ToString());
}
注釈
ユーザーと URI を共有できるように、現在のアプリに関連付けられている .appinstaller ファイルの URI を取得する場合は、このメソッドを使用します。 アプリを持たないユーザーが URI をクリックすると、アプリのインストール プロセスが実行されます。 アプリを既に持っているユーザーが URI をクリックすると、必要に応じてアプリが更新され、開きます。
必要に応じて、URI に引数を追加できます。 この場合、動作は上記と同じですが、アプリは開いたときに引数を使用できます。 引数には、アプリでサポートされているプロトコルを使用する必要があります。 詳細については、「 URI のアクティブ化を処理する」を参照してください。