Wie kann man die übermäßige Objekterstellung auf Samsung-Handys stoppen?

9

Ich habe Probleme mit Animationen, die auf vielen Android-Samsung-Handys langsamer werden. Ich habe das Problem verfolgt und es ist zu viel Müllsammlung. Keines der Objekte wird jedoch direkt von meinem Code erstellt.

Dies ist der Stack-Trace vom Allocation Tracker in DDMS.

%Vor%

Dies erzeugt Tausende von Rect- und Point-Objekten, wenn der Benutzer den Bildschirm berührt.

Kennt jemand einen Workaround?

Ich ziele nicht auf Samsung-Telefone oder deren und ihre SDKs oder Bibliotheken.

    
theJosh 30.11.2014, 19:03
quelle

1 Antwort

0

Nun, da kommt ein Designmuster ins Spiel, das wir für eine solche Situation, genannt Fliegengewicht, verwenden. Nicht sicher, ob dies Ihnen hilft, wenn der Client-Code unter Ihrer Kontrolle ist, wenn dies der Fall ist, die neuen Objekte zu verwenden, verwenden Sie das gleiche Objekt, wobei die Eigenschaften des Objekts (z. B. Rect werden x, y-Koordinaten) gespeichert werden client-Objekt in einem Array und rufen Sie die draw-Methode für das Rect-Objekt auf und übergibt die Koordinaten des rect-Objekts, das im Array im Client gespeichert ist.

    
The Neo Noir Developer 03.04.2015 07:21
quelle