應用程式安裝程式檔案 API 問題

應用程式安裝程式檔案 Api 的 JavaScript 支援

Windows SDK 中的>packagemanagerPackage類別會提供方法,讓您可以透過應用程式安裝程式檔案來新增或修改套件,或取得具有應用程式安裝程式關聯之應用程式的相關資訊。 如需詳細資訊,請參閱相關文件

在這些方法中,JavaScript 不支援 >packagemanager. AddPackageByAppInstallerFileAsync>packagemanager. RequestAddPackageByAppInstallerFileAsyncPackage. CheckUpdateAvailabilityAsync 。 不過,您可以建立會呼叫這些方法的Windows 執行階段元件,然後從 JavaScript UWP 應用程式呼叫此元件。

範例如下。

namespace CSRuntimeComponent
{
    public sealed class UpdateAvailabilityChecker
    {
        public static IAsyncOperation<PackageUpdateAvailability> CheckForUpdatesAsync()
        {
            return AsyncInfo.Run<PackageUpdateAvailability>((result) => Task.Run<PackageUpdateAvailability>(async () =>
            {
                PackageManager pm = new PackageManager();
                Package currentPackage = pm.FindPackageForUser(string.Empty, Package.Current.Id.FullName);
                PackageUpdateAvailabilityResult apiResult = await currentPackage.CheckUpdateAvailabilityAsync();

                if (apiResult.Availability == PackageUpdateAvailability.Error)
                {
                    Logger.Error($"Error occurred, extended code: {apiResult.ExtendedError}");
                }

                return apiResult.Availability;
            }));
        }
    }
}
window.onload = function () {
    document.getElementById('mainButton').onclick = function (evt) {
        CSRuntimeComponent.UpdateAvailabilityChecker.checkForUpdatesAsync().done(function (result) {
            document.getElementById("resultLabel").innerHTML = "Update availability result:" + result;
        });
    }
}