ProGuard verursacht eine Verzögerung der Anwendung

8

Ich versuche, Code mit proguard zu verschleiern, also habe ich minify in Release-Build-Typen aktiviert:

%Vor%

Aber wenn ich "Release apk" erzeuge und nachdem ich es installiert habe, läuft die Anwendung langsamer (lag). Warum passiert das, wenn minify aktiviert ist? Das sind meine Abhängigkeiten:

%Vor%

Das ist mein proguard-android.txt

%Vor%

Ich habe versucht hinzuzufügen:

%Vor%

Meine Bibliotheksabhängigkeiten:

%Vor%     
Michele Lacorte 10.05.2017, 10:24
quelle

4 Antworten

1

Obwohl die Kommentare in proguard-android.txt einige Gründe angeben, bin ich überrascht, dass Flags bestimmte Optimierungen deaktivieren, da die standardmäßig automatisch generierte proguard-android.txt -Datei keine solchen Flags enthält, wenn ein neues Android-Projekt erstellt wird. Entfernen Sie die folgenden Zeilen und prüfen Sie, ob es eine Verbesserung gibt:

%Vor%

Der Rest der Datei scheint in Ordnung, obwohl ich nicht alle verwendeten Bibliotheken ausgecheckt habe, aber ich habe ein paar überprüft und festgestellt, dass Sie die notwendigen Ausnahmen für sie hinzugefügt haben.

Wenn das nicht geklappt hat, müssen Sie sicherstellen, dass Ausnahmen für die Bibliotheken, die verwendet werden, korrekt hinzugefügt werden, und auch proguard-android.txt in Ihrem library Modul überprüfen, da es in den Abhängigkeiten referenziert wird .

    
ahasbini 15.05.2017 09:40
quelle
0

Java läuft beim ersten Mal immer langsam. Weil es geladen und interpretiert werden muss. Führen Sie den Test erneut aus. Schau dir diese Frage an.

Java-Programm läuft langsamer, wenn Code, der nie ausgeführt wird, auskommentiert ist

    
danny117 18.05.2017 19:38
quelle
0

ProGuard verursacht keine Verzögerung der Anwendung zur Laufzeit. Es kann aufgrund einer Ihrer Bibliothek in Gradle-Datei enthalten sein.

    
Amit Sharma 19.05.2017 10:53
quelle
0

Ich würde dringend vorschlagen, dass Sie Android Studio Profiler verwenden, um zu sehen, was und wie sich die App verhält. Darunter verstehe ich Speicher, CPU, Netzwerk usw. Speichern Sie die Ergebnisse zum Vergleich und versuchen Sie dann die gleiche App-Version nur mit Änderungen progard. Es ist sehr unwahrscheinlich, dass der Performance-Hit von proguard kommt. Wenn möglich, geben Sie die Ergebnisse und Ihre Beobachtungen hier zur weiteren Analyse weiter. Beachten Sie auch, dass es auch einen Unterschied beim Build-Typ gibt. Haben Sie einen anderen Code in den Debug / Release-Varianten?

    
originx 19.05.2017 16:36
quelle