Android - Verhindert, dass beim Start ein weißer Bildschirm angezeigt wird
Wie wir alle wissen, zeigen viele Android-Apps sehr kurz vor ihrem ersten @ einen weißen Bildschirm aActivity
rückt in den Fokus. Dieses Problem tritt in folgenden Fällen auf:
Android-Apps, die das globale @ erweiteApplication
class und führe wichtige Initialisierungen darin durch. DasApplication
Objekt wird immer vor dem ersten @ erstelActivity
(eine Tatsache, die im Debugger beobachtet werden kann), das macht also Sinn. Dies ist die Ursache für die Verzögerung in meinem Fall.
Android-Apps, die das Standard-Vorschaufenster vor dem Begrüßungsbildschirm anzeigen.
Einstellungandroid:windowDisablePreview = "true"
funktioniert hier offensichtlich nicht. Ich kann das übergeordnete Thema des Begrüßungsbildschirms auch nicht auf @ setzeTheme.Holo.NoActionBar
wie beschriebenHie, weil [leider] mein Begrüßungsbildschirm ein @ verwendActionBar
.
Apps, die das @ nicht erweiteApplication
classunterlassen Si Zeigen Sie den weißen Bildschirm beim Start an.
Die Sache ist, im Idealfall die Initialisierungen in der @ durchgefühApplication
Objekt muss vorkommenVo Der ErsteActivity
wird gezeigt. Meine Frage ist also, wie kann ich diese Initialisierungen beim Start der App durchführeohn mit einemApplication
Objekt? Möglicherweise mit einemThread
oderService
, Schätze ich
Das ist ein interessantes Problem, über das man nachdenken muss. Ich kann es nicht auf die übliche Weise umgehen (durch Setzen desNoActionBar
theme), da mein Splash-Bildschirm tragischerweise tatsächlich ein @ hActionBar
aus Gründen, die nichts miteinander zu tun haben.
Hinweis
Ich habe bereits auf die folgenden Fragen verwiesen:
Wie behebe ich den weißen Bildschirm in der App?
Android Splash Screen ist am Anfang weiß?
Weißer Bildschirm vor Splashscreen
Weißer Hintergrund beim Start der Android-App
Warum wird beim Starten der Apps unter Android 1 Sekunde lang ein weißer Bildschirm angezeigt?
Verweise