AppExtensionCatalog.PackageStatusChanged イベント

定義

カタログ内の拡張機能パッケージが削除、更新、またはインストールされたときに発生するイベント。

// Register
event_token PackageStatusChanged(TypedEventHandler<AppExtensionCatalog, AppExtensionPackageStatusChangedEventArgs const&> const& handler) const;

// Revoke with event_token
void PackageStatusChanged(event_token const* cookie) const;

// Revoke with event_revoker
AppExtensionCatalog::PackageStatusChanged_revoker PackageStatusChanged(auto_revoke_t, TypedEventHandler<AppExtensionCatalog, AppExtensionPackageStatusChangedEventArgs const&> const& handler) const;
public event TypedEventHandler<AppExtensionCatalog,AppExtensionPackageStatusChangedEventArgs> PackageStatusChanged;
function onPackageStatusChanged(eventArgs) { /* Your code */ }
appExtensionCatalog.addEventListener("packagestatuschanged", onPackageStatusChanged);
appExtensionCatalog.removeEventListener("packagestatuschanged", onPackageStatusChanged);
- or -
appExtensionCatalog.onpackagestatuschanged = onPackageStatusChanged;
Public Custom Event PackageStatusChanged As TypedEventHandler(Of AppExtensionCatalog, AppExtensionPackageStatusChangedEventArgs) 

イベントの種類

注釈

このイベントは、パッケージが使用できなくなったか、有効でなくなったか、変更されたかを特定するのに役立ちます。 このイベントを処理して、拡張機能が有効でなくなった可能性があり、無効にする必要がある場合を判断します。 このイベントの一般的な用途は、拡張機能を提供するアプリ パッケージがリムーバブル メディアにインストールされているかどうかを検出することです。 ユーザーがパッケージを含むメディアを削除すると、そのパッケージに対してこのイベントが発生します。

PackageStatus クラスは、可能なパッケージの状態を提供します。 PackageStatus.VerifyIsOk を使用して、パッケージが良好な状態であるかどうかを判断します。 false が返された場合は、PackageStatus.LicenseIssue または PackageStatus.PackageOffline をチェックし、このような状況に対して特別な処理を提供できます。 通常、パッケージの状態が [OK] でない場合は、無効にする必要があります。 拡張機能を読み込もうとするときはいつでも PackageStatus.VerifyIsOk を呼び出すのが良い方法です。

このイベントを処理して、拡張機能が無効になっているか、パッケージに問題があるために使用できないというインジケーターを拡張機能マネージャー UI に提供することを検討してください。

パッケージに問題があると判断した場合でも、このイベントの処理を続行します。これは、ユーザーがパッケージを更新し、読み込むには [OK] になる可能性があるためです。

PackageUpdatingPackageUninstalling と同様に、このイベントは状態が変更されたパッケージのみを渡します。 パッケージを読み込んだ AppExtensions と照合して、状態の変更の影響を受ける拡張機能を判断するのはユーザーの判断です。

適用対象