Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Don't prompt to enable notifications on first launch on Android #41204

Closed
3 of 6 tasks
mherrmann opened this issue Sep 23, 2024 · 6 comments · Fixed by brave/brave-core#25696
Closed
3 of 6 tasks

Don't prompt to enable notifications on first launch on Android #41204

mherrmann opened this issue Sep 23, 2024 · 6 comments · Fixed by brave/brave-core#25696
Assignees
Labels
onboarding Front-end related to helping a new user learn about features within the browser. OS/Android Fixes related to Android browser functionality privacy/permissions privacy features related to limiting, lifetime or other permissions QA Pass - Android ARM QA/Test-All-Platforms QA/Yes release-notes/exclude

Comments

@mherrmann
Copy link

mherrmann commented Sep 23, 2024

Description

On Android on first launch, Brave requests permissions from the user to show notifications:

Screenshot_20240923-135342

This is at a moment where the (new) user likely does not yet trust Brave. Also, I am not sure if the value of getting the permission warrants this being the very first click the users has to make in the context of Brave.

Unless there is a good reason, we should get rid of this permission request on at least first launch. (In my opinion, we should prompt for Brave to become the default browser instead - see #41203).

Steps to reproduce

Launch Brave for the first time on Android.

Actual result

As the very first thing it does, Brave prompts for permission to show notifications.

Expected result

Brave should not prompt for permission to show notifications.

Reproduces how often

Easily reproduced

Brave version

All

Device

  • Brand/model: Google Pixel 7
  • Android version: 14

Channel information

  • release (stable)
  • beta
  • nightly

Reproducibility

  • with Brave Shields disabled
  • with Brave Rewards disabled
  • in the latest version of Chrome

Miscellaneous information

No response

@mherrmann mherrmann added the OS/Android Fixes related to Android browser functionality label Sep 23, 2024
@mherrmann mherrmann self-assigned this Sep 23, 2024
@srirambv
Copy link
Contributor

srirambv commented Oct 8, 2024

Also, I am not sure if the value of getting the permission warrants this being the very first click the users has to make in the context of Brave.
Unless there is a good reason, we should get rid of this permission request on at least first launch.

The is needed for Rewards ads notification to work and implemented as part of #32047. That was the reason to keep the notification prompt shown first before user enables Rewards. @kjozwiak ran into a bunch of issues when this notification was not handled properly.

@mherrmann
Copy link
Author

The is needed for Rewards ads notification to work

What happens when the user does not allow the notifications?

@srirambv
Copy link
Contributor

srirambv commented Oct 8, 2024

What happens when the user does not allow the notifications?

Rewards ads notification won't work

@mherrmann
Copy link
Author

Are you sure? One thing I specifically tested is that I get prompted to allow notifications when I did not opt into them initially, and enable Rewards.

Image

@brave-builds brave-builds added this to the 1.73.x - Nightly milestone Oct 24, 2024
@kjozwiak kjozwiak added QA/Yes release-notes/exclude onboarding Front-end related to helping a new user learn about features within the browser. privacy/permissions privacy features related to limiting, lifetime or other permissions labels Oct 25, 2024
@kjozwiak
Copy link
Member

kjozwiak commented Nov 7, 2024

The above requires 1.73.86 or higher for 1.73.x verification 👍 @Uni-verse @hffvld can use the STR/Template from brave/brave-core#25696 (comment) to verify the above.

@hffvld
Copy link
Contributor

hffvld commented Nov 7, 2024

Verified on Pixel 7 using version(s):

Device/OS: Pixel 7 / panther_beta-user 15 AP41.240925.009 release-keys
Brave build: 1.73.86 
Chromium: 131.0.6778.39 (Official Build) (64-bit) 

Test case 1

STEPS:

  1. Fresh install Brave
  2. Connect the device to the Terminal and run ADB command adb shell "echo '--enable-features=BraveDayZeroExperiment:variant/a' > /data/local/tmp/brave-test-day-zero-expt"
  3. Launch Brave > Verify

ACTUAL RESULTS:

  • Verified that the Set Brave as your default browser app? system dialog shows up on the first page of onboarding:
    • Verified that selecting Brave as the default worked without issues.
    • Verified that selecting browsers other than Brave as the default worked without issues.
    • Verified that selecting Cancel worked without issues and left the current browser as the default.
  • Verified that the Add the search widget onboarding modal is being displayed right after the Set Brave as your default browser app? system dialog:
    • Verified that tapping on Now now dismisses the modal without initiating the Add the search widget modal.
    • Verified that tapping on Add to home screen initiates the widget modal:
      • Verified that tapping on Cancel closes the modal and you can continue onboarding via the diagnostic/P3A modal.
      • Verified that tapping on Add to home screen adds the Brave widget to the Home screen without any issues.
      • Verified that touching/holding lets you drag/drop the Brave widget to the Home screen without any issues.
  • Verified that the Diagnostic & P3A modals work as before (this hasn't been modified/touched).
  • Verified that the Allow Brave to send you notifications? modal is NOT shown during Brave onboarding flow.

1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
2024-11-07_13-59-06.mp4
Test case 2

STEPS:

  1. Fresh install Brave
  2. Connect the device to the Terminal and run ADB command adb shell "echo '--enable-features=BraveDayZeroExperiment:variant/b' > /data/local/tmp/brave-test-day-zero-expt"
  3. Launch Brave > Verify

ACTUAL RESULTS:

  • Verified that the regular/normal onboarding flow shown and works as expected.
  • Verified that Set default browser system dialog or Add search widget onboarding are not shown.

2024-11-07_12-44-34.mp4

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
onboarding Front-end related to helping a new user learn about features within the browser. OS/Android Fixes related to Android browser functionality privacy/permissions privacy features related to limiting, lifetime or other permissions QA Pass - Android ARM QA/Test-All-Platforms QA/Yes release-notes/exclude
Projects
None yet
Development

Successfully merging a pull request may close this issue.

5 participants