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

[By Dec 2021] See how custom splash screen looks with Android 12 splash screen #4592

Closed
lognaturel opened this issue Jun 3, 2021 · 4 comments

Comments

@lognaturel
Copy link
Member

With Android 12, every app will get a default splash screen. Collect already has a splash screen which can be dynamically user-defined. This is used to orient data collectors to the project they're working on and provide a bit of a branding opportunity for organizations. We believe the Android splash screen will be displayed followed by the Collect/user-defined one. It would be useful to get a gif of what this looks like.

We've been talking about removing the splash screen for some time (#254) and plan to do so within the next year. If our current situation looks really bad on Android 12, we might accelerate that timeline a bit.

@lognaturel lognaturel added the help wanted Issues that are well-specified and don't require too much context. label Jun 3, 2021
@seadowg seadowg added this to the v2021.3 milestone Jul 8, 2021
@seadowg seadowg modified the milestones: v2021.3, v2021.4 Sep 16, 2021
@grzesiek2010 grzesiek2010 self-assigned this Nov 30, 2021
@grzesiek2010
Copy link
Member

grzesiek2010 commented Dec 1, 2021

With the current implementation if we bump API version to 31 it looks like:

Our Splash screen enabled Our Splash screen disabled
OurSplashScreenEnabled OurSplashScreenDisabled

as you can see the new Splash screen provided by Android is not displayed at all so it doesn't look bad (no doubled screens).

It is not displayed because our SplashScreenActivity uses android:theme="@style/Theme.Transparent" (specified in the manifest file which has <item name="android:windowIsFloating">true</item>). If I remove it then we have doubled splash screens:

RemovedTransparentTheme

Fortunately at least in API 31 it is somehow handled and it's not a big problem for us but we can't be sure how it is going to work in future APIs so sooner or later we need to do something. We can't disable the new splash screen and that trick with <item name="android:windowIsFloating">true</item> is not something described in the documentation so it might just not work well in API 32.

I've never liked a lot our Splash screen because I have always struggled to understand why we can specify custom logos in the app but not the displayed app name for example so I won't be against removing it.

There is nothing we have to do in the current release cycle so I'm going to remove the issue from the milestone. Feel free to add it back if I missed something @lognaturel @seadowg @yanokwa and also please share your thoughts.

@grzesiek2010 grzesiek2010 removed this from the v2022.1 milestone Dec 1, 2021
@grzesiek2010 grzesiek2010 removed their assignment Dec 1, 2021
@seadowg seadowg removed the help wanted Issues that are well-specified and don't require too much context. label Dec 1, 2021
@seadowg
Copy link
Member

seadowg commented Dec 1, 2021

@grzesiek2010 thanks for the write up! I reckon we should phase a removal of our splash screen based on this:

  1. Remove splash screen from ODK Collect #254 (remove the option to show the default splash screen) as part of 2022.1
  2. Announce on the forum that the ability to add a custom splash screen will be removed in 2022.2 (and a note to Collect settings)
  3. Remove the custom splash screen entirely as part of 2022.2 (enabling the default Android one)
  4. Use the Splash Screen API to keep the splash screen up until we've finished app initialization (https://developer.android.com/guide/topics/ui/splash-screen#suspend-drawing)

I'm assuming as part of this we still get the new Android 12 Splash Screen on Android 12 without bumping our target API (without the transparent activity). Thoughts?

@grzesiek2010
Copy link
Member

Why do you want to remove the option from settings now in 2022.1 and not to do everything together in 2022.2?

@seadowg
Copy link
Member

seadowg commented Dec 1, 2021

Why do you want to remove the option from settings now in 2022.1 and not to do everything together in 2022.2?

My thinking was just to kill the "Splash Screen" setting as early as possible to stop people using it or getting used to it. As far as I can see it'll be pretty easy to remove, and I doubt anyone is "relying" on it so need to announce it. That said, it does seem easier for us to remove the whole thing in one go as you suggest, so I think we can just do that. I'll update #254 (and move it out of the milestone.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants