Closed Bug 1584369 Opened 5 years ago Closed 3 years ago

Switch Fennec's Onboarding, New Tab, and Settings menu to use FxA's "email first" auth flow

Categories

(Firefox for Android Graveyard :: Firefox Accounts, enhancement, P2)

Unspecified
Android
enhancement

Tracking

(firefox-esr60 wontfix, firefox-esr68 affected, firefox69 wontfix, firefox70 wontfix, firefox71 wontfix)

RESOLVED INCOMPLETE
Tracking Status
firefox-esr60 --- wontfix
firefox-esr68 --- affected
firefox69 --- wontfix
firefox70 --- wontfix
firefox71 --- wontfix

People

(Reporter: cpeterson, Assigned: vlad.baicu)

References

Details

(Whiteboard: [fennec68.2?])

Fenix and new mobile products use FxA's "email first" auth flow. We should switch Fennec's calls to the separate sign-up ("Create New Firefox Account") and sign-in entrypoints to the email-first auth flow. This will be a better user experience for both existing and new users (because they are less likely to be confused by an existing user landing on a sign-up page or a new user landing on the sign-in page).

  • The new Onboarding's and New Tab's "Sign up" buttons point to about:accounts?action=signup&... (the "Create a Firefox Account" page with Email, Password, and Repeat Password form).
  • The "Sign in" Settings menu item and the New Tab's tiny "Sign in" link point to about:accounts?action=signin&... (the "Sign in to continue to Firefox Sync" page with Email and Password form).
  • The FxA team recommends we change all of them to the email-first page like about:accounts?action=email&... (which will open a page like https://accounts.firefox.com/?service=sync&context=fx_fennec_v1&action=email).

Grisha says the about:accounts page will need to be modified to pass the new action=email parameter through to the accounts.firefox.com iframe. Fennec switched from signup to signin flow by default two years ago in bug 1229216. Switch to the email-first flow should be easy following steps in that signin bug.

The FxA team is considering redirecting action=signup and action=signin pages to the new action=email auth flow on the server side, but we can fix and test Fennec on the client side in the mean time:

https://github.com/mozilla/fxa/issues/639

Missing from Bug 1229216 are changes necessary to aboutAccounts.js.
Add action=email handling to: https://dxr.mozilla.org/mozilla-central/source/mobile/android/chrome/content/aboutAccounts.js#263

Grisha, Vlad has some questions about the action parameter and "email first" page's URL. What do you suggest? Would this require an FxA server side fix? Or is using two separate URLs on the client side OK?

Vlad said:

I have managed to implement the new e-mail action in Fennec but I’ve noticed that it does not work out of the box due to a schema difference for the action parameter:

In order to make it work in Fennec I had to hardcode the URL a bit. Ideally, I think we would want to keep the same schema for this new page as well.

Flags: needinfo?(gkruglov)

https://accounts.firefox.com/?action=email&... is the way to trigger an email-first flow. Sometime before the end of the year (i think) we'll retire other endpoints (signin, signup), so there will be no inconsistency.

Just make sure to leave a comment in aboutAccounts.js to explain the reason why there's a different handling of action=email.

Flags: needinfo?(gkruglov)

We decided not to address this right now so moving to P2. Will re-prioritize at a later time.

Priority: P1 → P2

This should be done on the FxA side with train 149 shipping in 1 week:
https://github.com/mozilla/fxa/issues/639

Let's close this once that ships

We have completed our launch of our new Firefox on Android. The development of the new versions use GitHub for issue tracking. If the bug report still reproduces in a current version of [Firefox on Android nightly](https://play.google.com/store/apps/details?id=org.mozilla.fenix) an issue can be reported at the [Fenix GitHub project](https://github.com/mozilla-mobile/fenix/). If you want to discuss your report please use [Mozilla's chat](https://wiki.mozilla.org/Matrix#Connect_to_Matrix) server https://chat.mozilla.org and join the [#fenix](https://chat.mozilla.org/#/room/#fenix:mozilla.org) channel.
Status: NEW → RESOLVED
Closed: 3 years ago
Resolution: --- → INCOMPLETE
Product: Firefox for Android → Firefox for Android Graveyard
You need to log in before you can comment on or make changes to this bug.