Document that App Installer OnLaunch updates don't fire from desktop shortcuts or taskbar - #477
Conversation
…shortcuts or taskbar App Installer automatic OnLaunch update checks are only triggered when an app is launched from the Start menu (including tiles), not from a desktop shortcut or a taskbar item. This is by design but was undocumented, leading to confusion (GitHub issue MicrosoftDocs#59). - update-settings.md: add an IMPORTANT note under OnLaunch explaining the by-design limitation and pointing to the code-based update workaround. - auto-update-and-repair--overview.md: add a NOTE in Automatic updates with the same limitation and workaround link. - non-store-developer-updates.md: add a TIP framing code-based updates as the workaround for the shortcut/taskbar limitation, linking back to OnLaunch. Resolves AB#24544290 Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
|
Learn Build status updates of commit 86d78d3: ✅ Validation status: passed
For more details, please refer to the build report. |
Addresses DrusTheAxe review: reword the HoursBetweenUpdateChecks description so it reads as the minimum number of hours between checks (a throttle) rather than a fixed cadence. On launch, a check occurs only if at least that many hours have passed since the last check. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: 3d27fb29-0162-474f-8e83-e7cc06dfe11c
|
Learn Build status updates of commit 3612e68: ✅ Validation status: passed
For more details, please refer to the build report. |
Addresses DrusTheAxe review: the TIP implied desktop shortcut and taskbar were the only launch entry points that skip OnLaunch update checks. Reword to say checks don't run from every entry point, using shortcut/taskbar only as examples, without asserting which entry points do trigger a check. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: 3d27fb29-0162-474f-8e83-e7cc06dfe11c
|
Learn Build status updates of commit 84eb1d1: ✅ Validation status: passed
For more details, please refer to the build report. |
…o users/romaclac/docbug-24544290
…andler (PR 477 review) Aligns the on-launch update note with the OnLaunch schema reference, which lists a menu item, Start menu tile, app execution alias, or protocol handler as the launches that take effect (desktop shortcut and taskbar do not). Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: 3f91f4ac-92c5-4012-bacf-5f63908b8716
|
Learn Build status updates of commit e63f39e: ✅ Validation status: passed
For more details, please refer to the build report. |
…ttings note (PR 477 review) Answers reviewer comment MicrosoftDocs#3: Start menu is not the only trigger. Lists the activation-based launches (menu item, Start menu tile, app execution alias, protocol handler) that trigger OnLaunch checks, per the OnLaunch schema reference, and fixes the linked note so both pages agree. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: 3f91f4ac-92c5-4012-bacf-5f63908b8716
|
Learn Build status updates of commit e5aa80c: ✅ Validation status: passed
For more details, please refer to the build report. |
Addresses reviewer comment MicrosoftDocs#4: whether an OnLaunch check runs depends on whether the app is started through activation, not on the shortcut category. Ties the no-check case to launching the program directly rather than blanket-claiming desktop shortcuts never trigger. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: 3f91f4ac-92c5-4012-bacf-5f63908b8716
|
Learn Build status updates of commit b24db78: ✅ Validation status: passed
For more details, please refer to the build report. |
| Windows apps will use their App Installer URI path to check for Windows app updates, however if the App Installer URI is inaccessible the Windows app will check for updates using the UpdateURIs, attempting to connect to each before attempting the next. The first App Installer file to be accessible will be validated against checking for any new Windows app updates. | ||
|
|
||
| > [!NOTE] | ||
| > On-launch update checks apply only when the app is started through an activation entry point — a menu item, a **Start menu** tile, an **app execution alias**, or a **protocol handler**. Consistent with the [`OnLaunch`](/uwp/schemas/appinstallerschema/element-onlaunch) element, the check (along with the `ShowPrompt` and `UpdateBlocksActivation` behaviors) has no effect when the app is started from a **desktop shortcut** or the **taskbar**. To check for updates regardless of how the app is launched, update the app from your code. For more information, see [Update non-Store published apps from your code](../non-store-developer-updates.md). |
There was a problem hiding this comment.
How does this differ from a Start menu tile?
|
|
||
| - **HoursBetweenUpdateChecks**: An integer that indicates how often (in how many hours) the system will check for updates to the app. “0” to “255” inclusive. The default value is 24 (if this value is not specified). For example if HoursBetweenUpdateChecks = 3 then when the user launches the app, if the system has not checked for updates within the past 3 hours, it will check for updates now. | ||
| > [!IMPORTANT] | ||
| > **OnLaunch** update checks run only for launches that go through app activation, such as a menu item, a **Start menu** tile, an **app execution alias**, or a **protocol handler**. By design, they do **not** run when the app starts from a **desktop shortcut** or the **taskbar**, which launch the currently installed version without checking for updates. If you need updates checked regardless of how the app starts, check for and apply updates from your app's code. For more information, see [Update non-Store published apps from your code](../non-store-developer-updates.md). |
There was a problem hiding this comment.
desktop shortcut - see above comment
|
|
||
| - **HoursBetweenUpdateChecks**: An integer that indicates how often (in how many hours) the system will check for updates to the app. “0” to “255” inclusive. The default value is 24 (if this value is not specified). For example if HoursBetweenUpdateChecks = 3 then when the user launches the app, if the system has not checked for updates within the past 3 hours, it will check for updates now. | ||
| > [!IMPORTANT] | ||
| > **OnLaunch** update checks run only for launches that go through app activation, such as a menu item, a **Start menu** tile, an **app execution alias**, or a **protocol handler**. By design, they do **not** run when the app starts from a **desktop shortcut** or the **taskbar**, which launch the currently installed version without checking for updates. If you need updates checked regardless of how the app starts, check for and apply updates from your app's code. For more information, see [Update non-Store published apps from your code](../non-store-developer-updates.md). |
There was a problem hiding this comment.
What does "app starts from...taskbar" mean? How does that differ from Start menu?
| > [!IMPORTANT] | ||
| > **OnLaunch** update checks run only for launches that go through app activation, such as a menu item, a **Start menu** tile, an **app execution alias**, or a **protocol handler**. By design, they do **not** run when the app starts from a **desktop shortcut** or the **taskbar**, which launch the currently installed version without checking for updates. If you need updates checked regardless of how the app starts, check for and apply updates from your app's code. For more information, see [Update non-Store published apps from your code](../non-store-developer-updates.md). | ||
|
|
||
| - **HoursBetweenUpdateChecks**: An integer from “0” to “255”, inclusive, that sets the minimum number of hours between update checks. The default value is 24 (if this value is not specified). On launch, the system checks for updates only if at least this many hours have passed since the last check. For example, if HoursBetweenUpdateChecks = 3, then when the user launches the app, the system checks for updates only if it hasn't checked within the past 3 hours. |
There was a problem hiding this comment.
max=255 is such a weird number (for computers, no. But for humans? Strange)
So I can require checks up to 10d+, but if I want monthly checks I'm SOL?
30d = 720hours. Should bump the max to, say, 800, so at least you can do monthly
Resolves the doc gap behind Azure Boards work item AB#24544290 and GitHub issue #59.
Problem
App Installer automatic
OnLaunchupdate checks are only triggered when an app is launched from the Start menu (including tiles). By design, they are not triggered when the app is launched from a desktop shortcut or a taskbar item, so those launches start the currently installed version without checking for updates. This behavior was confirmed by-design but undocumented, which caused confusion for developers using App Installer auto-update settings.Changes
app-installer/update-settings.md— Added an[!IMPORTANT]note under OnLaunch describing the by-design limitation and pointing to the code-based update workaround.app-installer/auto-update-and-repair--overview.md— Added a[!NOTE]in the Automatic updates section with the same limitation and workaround link.non-store-developer-updates.md— Added a[!TIP]framing code-based updates as the workaround for the shortcut/taskbar limitation, linking back to the OnLaunch settings.ms.dateon the edited files.