Skip to content

perf(startup): splash screen - #17657

Open
alperozturk96 wants to merge 2 commits into
masterfrom
perf/startup-time
Open

alperozturk96 wants to merge 2 commits into
masterfrom
perf/startup-time

Conversation

@alperozturk96

@alperozturk96 alperozturk96 commented Sep 16, 2026

Copy link
Copy Markdown
Collaborator

Changes

1400 ms faster cold start

Before

Screen_recording_20260916_133720.webm

After

Screen_recording_20260916_133829.webm

Signed-off-by: alperozturk96 <alper_ozturk@proton.me>
Signed-off-by: alperozturk96 <alper_ozturk@proton.me>
@alperozturk96 alperozturk96 added the performance 🚀 Performance improvement opportunities (non-crash related) label Sep 16, 2026
@alperozturk96 alperozturk96 added this to the Nextcloud App 35.0.1 milestone Sep 16, 2026
@alperozturk96

Copy link
Copy Markdown
Collaborator Author

/backport to stable-35.0.x

companion object {
const val SPLASH_DURATION = 1500L
private val SPLASH_DURATION = 1500.milliseconds
private val NO_SPLASH_DURATION = 100.milliseconds

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

100 ms needed so that we can show app icon.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@jancborchardt since you raised the issue :)

@github-actions

Copy link
Copy Markdown

Codacy

SpotBugs

CategoryBaseNew
Bad practice3232
Correctness5858
Dodgy code186186
Experimental11
Malicious code vulnerability22
Multithreaded correctness2626
Performance3737
Security1818
Total360360

@github-actions

Copy link
Copy Markdown

📱 QA build

Download app-qa-debug.apk (134M)
QR code Open the QR code for this download
Commit be73f7b
Version 17657
Available until 7 days after this build

The QA build installs alongside a released Nextcloud app, so you can keep
using your existing install while testing.

Downloading the file requires a GitHub account, so open this link on the
device you want to test on, or transfer the APK to it.

@codecov

codecov Bot commented Sep 16, 2026

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 50.00000% with 8 lines in your changes missing coverage. Please review.

Files with missing lines Patch % Lines
...c/main/java/com/nmc/android/ui/LauncherActivity.kt 50.00% 1 Missing and 7 partials ⚠️

📢 Thoughts on this report? Let us know!

@jancborchardt jancborchardt left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Very nice! Can we get it even faster? :)

@alperozturk96

alperozturk96 commented Sep 16, 2026

Copy link
Copy Markdown
Collaborator Author

Very nice! Can we get it even faster? :)

This is just the beginning. After this PR, I’ll investigate the internal state changes between the loading and loaded states. The splash screen can be faster for the non-branded flow around 1.4 seconds. For the branded flow, it will remain the same so that the custom logo and other branding elements can be displayed. Do you think 1.5 seconds is enough for the branded flow? I would suggest setting it to 300 ms for the branded flow and 100 ms for the non-branded flow.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

backport-request performance 🚀 Performance improvement opportunities (non-crash related)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants