bedrock icon indicating copy to clipboard operation
bedrock copied to clipboard

Test new install method for Windows 11 users

Open slightlyoffbeat opened this issue 3 years ago • 14 comments

Description

Edge on Windows 11 supports a new method for downloading and installing from the windows store. Firefox is now on the windows store and we should test this method to see if it can help increase the number of people who install after downloading.

image

slightlyoffbeat avatar Jan 06 '22 17:01 slightlyoffbeat

FYI: I'm working on the Firefox side of this (being able to pull out "campaign ids" from installs done through the Microsoft Store) in https://bugzilla.mozilla.org/show_bug.cgi?id=1756209. Once that's finalized I'll write up some guidelines on how to link to the Microsoft Store properly to make use of it - is there a preferred place for me to do that?

Also, this method works for Windows 10 users as well, as long as they are on a not-ancient version (1607 and up should be fine).

bhearsum avatar Apr 13 '22 14:04 bhearsum

@bhearsum if you'd like to either link a doc on this issue, or write everything in a comment, that will work. What's the timing? We may have some dev resources available soon and can get started on this.

slightlyoffbeat avatar Apr 14 '22 06:04 slightlyoffbeat

I should have everything finalized in the next couple of weeks. The necessary code is likely to ride with Firefox 101, although I may recommend we wait until a later release to actually start redirecting people to the Store (in order to pick up a fairly significant fix).

bhearsum avatar Apr 14 '22 14:04 bhearsum

Some in tree docs will be landing on this soon. Here's a roll-up of what I think is relevant for Bedrock.

  • There are two ways to link to Microsoft Store apps: https:// and ms-windows-store://. For our purposes, I think the latter is best as it launches the Store directly without going through the Microsoft website.
  • The Store link for our Release channel app is: ms-windows-store://pdp/?productid=9NZVDKPMR9RD
  • Attribution data supports the exact same format as existing attribution and should be provided as the cid query argument, but the length is much more limited. Microsoft claims it supports only 100 characters, although I have been able to retrieve the first 208 characters in my own tests. (If we think we need more than 100 characters I think we should do our own testing of this in the wild before relying on this -- it could be that older Windows version retrieve fewer characters or something like that.)
  • Here's an example link with attribution data: ms-windows-store://pdp/?productid=9NZVDKPMR9RD&source%3Dgoogle.com%26medium%3Dorganic%26campaign%3D(not%20set)%26content%3D(not%20set)

And while not relevant to Bedrock itself, if you're ever doing your own testing of this there's a couple of caveats to be aware of:

  • So far, we have only been able to make attribution work if the install is done while the user is signed into the Microsoft Store. We're trying to sort out the other case, but have yet to be able to.
  • The Store also caches the first "cid" the user installs with ever (even if it's empty) -- this means that every test must be done with a new Microsoft account to be valid.

Let me know if anything is unclear here, or you need any other information.

bhearsum avatar Apr 26 '22 15:04 bhearsum

This looks like what we'd need to get started.

Given your note above, is 102 a good target for this?

slightlyoffbeat avatar Apr 26 '22 22:04 slightlyoffbeat

@pmac @alexgibson tagging for a technical perspective on the above

slightlyoffbeat avatar Apr 26 '22 22:04 slightlyoffbeat

I don't know at this point when we'll actually want to start pushing people over, even as test. If we want to wait on the bug I eluded to, that would be 103 at the earliest (probably even later) -- but it's possible we'll want to do a test before that. I've got an open thread with Romain about this and should have an answer on it next week.

bhearsum avatar Apr 27 '22 13:04 bhearsum

One potential wrinkle here:

Unless there's another method we can use here, I'm not sure it's possible to accurately detect Windows 11 in all major browsers, at least right now. Both Edge, Chrome and Firefox have frozen parts of their UA string, so they will now always report as "Windows 10".

There's a new API called Client Hints, that's supported in both Edge and Chrome that we can use here instead (see https://github.com/mozilla/bedrock/issues/8440), but it's currently not supported in Firefox. So we could certainly try and detect Windows 11 in Edge and Chrome, but afaik it's currently impossible using Firefox.

alexgibson avatar Jun 22 '22 08:06 alexgibson

Is there a reason we're specifically targeting Windows 11 here instead of 10 & 11? Windows 10 also supports the Microsoft Store. There may be some wrinkles around users on very, very old versions (requires some testing), but it may be an alternate workaround.

I also suspect that only supporting this in users downloading Edge or Chrome is probably fine for a test (obviously we'd want to do better if we make such a change permanent though).

bhearsum avatar Jun 22 '22 12:06 bhearsum

There may be some wrinkles around users on very, very old versions (requires some testing), but it may be an alternate workaround.

I guess this depends on how many old versions of Windows 10 are out there? Do we have any ideas? If someone was on one of those versions, I'd probably be OK with it providing we still provide a way to download Firefox directly.

alexgibson avatar Jun 22 '22 12:06 alexgibson

There may be some wrinkles around users on very, very old versions (requires some testing), but it may be an alternate workaround.

I guess this depends on how many old versions of Windows 10 are out there? Do we have any ideas? If someone was on one of those versions, I'd probably be OK with it providing we still provide a way to download Firefox directly.

I can do some more digging here if this is a path we'd like to pursue. (We need to determine both what the oldest Windows 10 version the Microsoft Store still works with is, and what percentage of users are on that or an earlier version.)

bhearsum avatar Jun 23 '22 00:06 bhearsum

@bhearsum is this something you are still planning for?

alexgibson avatar Jun 20 '23 15:06 alexgibson