|
2 | 2 | title: Windows App SDK deployment guide for self-contained apps
|
3 | 3 | description: A Windows App SDK project is framework-dependent by default. To switch to self-contained deployment, follow the steps in this article (the terms *framework-dependent* and *self-contained* are described in [Windows App SDK deployment overview](../deploy-overview.md)).
|
4 | 4 | ms.topic: article
|
5 |
| -ms.date: 11/16/2022 |
| 5 | +ms.date: 08/10/2023 |
6 | 6 | ms.localizationpriority: medium
|
7 | 7 | ---
|
8 | 8 |
|
@@ -49,19 +49,19 @@ If your app is packaged with external location or unpackaged, then the Windows A
|
49 | 49 |
|
50 | 50 | ## Dependencies on additional MSIX packages
|
51 | 51 |
|
52 |
| -A small set of APIs in the Windows App SDK rely on additional MSIX packages that represent critical operating system (OS) functionality. |
| 52 | +A small number of APIs in the Windows App SDK rely on additional MSIX packages that represent critical operating system (OS) functionality. |
53 | 53 |
|
54 |
| -* As of the Windows App SDK 1.1, push notifications depends on additional MSIX packages (see [Deployment architecture for the Windows App SDK](../../windows-app-sdk/deployment-architecture.md)). |
| 54 | +* For example (as of the Windows App SDK 1.1), push notifications APIs ([PushNotificationManager](/windows/windows-app-sdk/api/winrt/microsoft.windows.pushnotifications.pushnotificationmanager)) and app notifications APIs ([AppNotificationManager](/windows/windows-app-sdk/api/winrt/microsoft.windows.appnotifications.appnotificationmanager)) have a dependency on the *Singleton* package (see [Deployment architecture for the Windows App SDK](../../windows-app-sdk/deployment-architecture.md)). |
55 | 55 |
|
56 |
| -Consider these options when you're considering using those APIs in a self-contained app: |
| 56 | +That means that if you want to use those APIs in a self-contained app, then you have the following options: |
57 | 57 |
|
58 |
| -1. Light up the functionality as optional in your app using the API's **IsSupported** design pattern. |
59 |
| - * Doing so enables optional use of the API without compromising the simplicity of self-contained deployment. |
60 |
| - * Only if the OS services are installed outside of your app deployment will your app light up the appropriate functionality. |
| 58 | +1. You could make your functionality optional, and light it up *only if and when possible*. Calling the APIs' **IsSupported** method ([PushNotificationManager.IsSupported](/windows/windows-app-sdk/api/winrt/microsoft.windows.pushnotifications.pushnotificationmanager.issupported) and [AppNotificationManager.IsSupported](/windows/windows-app-sdk/api/winrt/microsoft.windows.appnotifications.appnotificationmanager.issupported)) will let you check dynamically at runtime whether or not the APIs are available to the calling app on the system it's running on. |
| 59 | + * This enables safe, conditional, optional use of the APIs without compromising the simplicity of your self-contained deployment. |
| 60 | + * Only if the OS services are installed outside of your app deployment will your app light up the appropriate functionality. But in fact there are *some* cases where the APIs will work even without the Singleton package being present; so calling **IsSupported** to check is often a good idea. |
61 | 61 | 2. Deploy the required MSIX packages as part of your app installation.
|
62 |
| - * Doing so allows you to depend on the API in all scenarios. But requiring MSIX package deployment of dependencies as part of your app deployment can compromise the simplicity of self-contained deployment. |
| 62 | + * This allows you to depend on the API in all scenarios. But requiring MSIX package deployment of dependencies as part of your app deployment can compromise the simplicity of self-contained deployment. |
63 | 63 | 3. Don't use the API.
|
64 |
| - * Consider alternative APIs that would provide similar functionality without additional deployment requirements. |
| 64 | + * Consider alternative APIs that provide similar functionality without additional deployment requirements. |
65 | 65 |
|
66 | 66 | ## Opting out of (or into) automatic UndockedRegFreeWinRT support
|
67 | 67 |
|
|
0 commit comments