red-moon icon indicating copy to clipboard operation
red-moon copied to clipboard

Better onboarding

Open smichel17 opened this issue 7 years ago • 7 comments

I think one of our app intro screens should tell the user that some apps may not work while Red Moon is running, since that is one of the more surprising things to find out about the app. The last slide, about turning on Red Moon with the switch at the top, is probably exceedingly obvious now, so I'd vote for replacing that one.

smichel17 avatar Feb 25 '17 06:02 smichel17

Principle: The user should not have to change any settings to use the app.

Problem: There are some settings (timer, pause in secure apps) that most users will want enabled, but they're currently off by default.

Reason: Those settings won't work without the user granting permissions.

Solution: Allow those settings to be turned on even if the permissions are not granted. They will not work, but will cause a snackbar to appear, which informs the user that additional permissions are required and prompts them to grant the permissions.

~~See #189 for (work in progress) implementation~~

Note -- you can see older ideas in the edit history

smichel17 avatar Mar 08 '17 05:03 smichel17

Related to this issue, it is necessary to also think about the length of the sentences. As shown in the screenshot below, text might be covered by the navbar at the bottom, either because the paragraph is too long or because the low resolution of the screen (even though the latter might not be a big issue anymore); this is especially true when dealing with verbose languages like Italian, which can increase the number of characters in a paragraph.

screenshot 13 mar 2017 16_36_49

matteocoder avatar Mar 13 '17 16:03 matteocoder

Upgrading to AppIntro v4.1.0 should fix this as long as the strings don't get much longer than this.

raatmarien avatar Mar 13 '17 16:03 raatmarien

@raatmarien Awesome! when will the new intro be available?

matteocoder avatar Mar 13 '17 16:03 matteocoder

@matteocoder It's on master now, so it will be in the next release.

raatmarien avatar Mar 25 '17 11:03 raatmarien

There is a new type of material component, Banners, that are a very good fit for this. Also, since they're different than snackbars, we won't need to change the location update flow. Specs:

  • One banner per missing permission (only one shown at a time).
  • Banner text reads, "$feature requires $permission [for $reason]."
    • For example, "Automatic schedule requires location access to calculate sunrise and sunset times."
  • Banner actions are "Grant permission" and "Disable feature".
    • Very open to alternative phrasing suggestions ("Disable setting"?)

Android does not yet have an official library for implementing material banners, but there is a 3rd party library that we can use for now. MinSdk 14 so we're all set on that front. https://github.com/sergivonavi/MaterialBanner

smichel17 avatar Mar 05 '20 14:03 smichel17

Minor problem: The library only supports Material themes (not appcompat), which means api 21 (Android 5.0) and up only. So it's out. I may be able to replicate similar functionality with a card.

smichel17 avatar Mar 07 '20 18:03 smichel17