2016-06-26 11 views
2

Ich habe keine URL-Anfrage aufgerufen, die App zeigt einen einfachen Begrüßungsbildschirm. Ich habe den sofortigen Lauf auch deaktiviert, aber diese Warnung tritt immer noch auf.Android Wenn die App gestartet wird, wird für einige Sekunden ein weißer Bildschirm angezeigt.

06-26 09: 26: 05.022 8709-8709/saurav.com.navigation_drawer I/art: Spät-Enabling -Xcheck: jni

06-26 09: 26: 05.144 8709-8709/saurav. com.navigation_drawler W/System: ClassLoader referenziert unbekannten Pfad: /data/app/saurav.com.navigation_drawer-1/lib/arm

06-26 09: 26: 15.383 8709-8709/saurav.com.navigation_drawer W/System: ClassLoader referenziert unbekannten Pfad: /data/app/saurav.com.navigation_drawer-1/lib/arm

+1

Dies ist eine gültige Frage. Ich erhalte auch das gleiche Problem nach der Aktualisierung von Android Studio. –

+0

Wenn Sie irgendeine Lösung finden, fügen Sie bitte auch einen Kommentar hier hinzu. –

Antwort

0

Dies wird einfach durch das Android-System verursacht, das ein paar Sekunden dauert, um Ihre App zu starten - und das weiß ist eigentlich t Der Fensterhintergrund, der in Ihrem Thema angegeben ist. (Sie können also ein Bild oder eine Vollfarbe verwenden, während das System Ihre App lädt). Es gibt also nichts, was Sie können, da es das System ist, das Ihre App lädt, auf die Sie keine Kontrolle haben.

Es wird schlimmer bei der Bereitstellung von Android Studio aufgrund der Overhead durch Funktionen wie Instant-Run und Debugging, die Ihre App immer langsamer laufen als wenn es eine Version optimierte Version wäre.

Auch würde ich nicht über diese besonderen Fehler kümmern, es sei denn, sie stürzen Ihre App.

2

Wenn Ihre App gestartet wird, verwendet sie zunächst das Thema der Startaktivität, um den Fensterhintergrund anzuzeigen. Eine vollständige Erläuterung des Prozesses kann in Android Deevelopers Blog gefunden werden. Wenn Sie windowBackground in Ihrer styles.xml nicht angeben, wird das Standard-Weiß verwendet und das UX beschädigt. Sie können dort ein angenehmeres Zeichen festlegen.

Eine Alternative ist es, eine Illusion zu erstellen, dass Ihre App sofort startet, und schieben Sie die Schuld auf Launcher. Alles, was Sie brauchen, ist transparent windowBackground für die Aktivität Start wählen:

Das visuelle Ergebnis wird sein, dass nach dem Endbenutzer gedrückt haben Symbol der App

<style name="AppTheme" parent="Theme.AppCompat.NoActionBar"> 
    <item name="android:windowBackground">@dnull</item> 
</style> 
wird die gleiche Startbildschirm für einige Sekunden lang angezeigt, und dann Ihre Aktivität kommt in voller Geschwindigkeit.

In jedem Fall sollten Sie den Startvorgang Ihrer App analysieren und so schnell wie möglich machen, indem Sie auf einen Hintergrund-Thread (oder Threads) alles schieben, was dort gepusht werden kann.

Die Anzeige eines Begrüßungsbildschirms (d. H. Und Aktivitäten, die sehr schnell geladen werden und die Augen angezogen werden, während die Anwendungslogik im Hintergrund startet) ist die gängige Methode für langsamen Start auf allen Plattformen, nicht nur Android. Die offiziellen Designrichtlinien entmutigen dies, aber viele beliebte Apps, einschließlich Google selbst, verwenden Splash-Screens.

Ein ausführlicheres Beispiel finden Sie unter https://www.bignerdranch.com/blog/splash-screens-the-right-way/.

PS Es ist wahr, dass solche Warnungen für ClassLoader in der Regel irrelevant sind.

Verwandte Themen