13

Ich baute eine Android-App mit ionicframework und Cordova.Meine Cordova Webview App ist wirklich langsamer als in der Android-Browser auf dem gleichen Telefon

Aber wenn ich versuche, auf meinem Samsung Galaxy S4 zu laufen, ist die App wirklich langsamer als der gleiche Code in den Webbrowsern meines Telefons.

Wie kann ich erwarten, die gleichen Perfs zu haben?

Ich habe versucht:

android:hardwareAccelerated="true" 

this.appView.getSettings().setRenderPriority(RenderPriority.HIGH); 
this.appView.getSettings().setPluginState(android.webkit.WebSettings.PluginState.ON_DEMAND); 

<uses-sdk android:minSdkVersion="14" android:targetSdkVersion="19" /> 

Mit der letzten 3.6 cordova Version

Wie kann ich tun, um die gleiche Leistung zu haben, wie ich auf dem Handy-Browser (mit Meta-App-fähig sehen kann Beispiel)?

Antwort

18

Es ist schwer zu sagen, wie Sie nicht Code oder ein Beispiel zur Verfügung gestellt haben.
Wenn Sie nicht die neuesten Android 4.4 KitKat verwenden, sind die Chancen, dass Sie eine wirklich alte WebView verwenden.

ältere Versionen von Android-Geräten (4,0-4,3) Standard Android Browser verwenden, die als modernes Chrome deutlich weniger Leistung und Standards Compliance hat. Mit Crosswalk erhalten Sie eine spezifische und leistungsfähigere Version von Chrome zur Verwendung auf allen Android-Geräten, , um Schwankungen und Fragmentierung zwischen den Geräten zu reduzieren.

Diese article geht tiefer in das Problem und es lohnt sich zu lesen.

Wenn Sie die gleichen Leistungen in Ihrem Webbrowser erzielen möchten, können Sie Ihre Web-Laufzeitumgebung mit Crosswalk ersetzen.

kann easily Fußgängerübergang mit Cordova integriert sein.

Mit ionischen Rahmen können Sie simply:

ionic browser add crosswalk 

Wenn Sie möchten, dass eine andere Version von Crosswalk angeben, führen ionic browser list, um zu sehen, welche Browser zur Verfügung stehen und welche Versionen. Dann laufen:

ionic browser add [email protected] 

Nick Raboy geschrieben hat eine interesting article, die Sie durch den ganzen Schritt anleiten werden Sie ergreifen müssen, um zu integrieren Crosswalk mit Cordova + Ionic Rahmen.

Sehr hilfreich ist das Video mit erklärt alles auf einfache Weise.

Fußgängerübergang kann auch in Shared Mode verwendet werden:

"Shared Modus" mehr Anwendungen ermöglicht einen Fußgängerübergang Fußgängerübergang Laufzeit zu teilen.Wenn die Laufzeitumgebung nicht bereits im Gerät installiert ist, wird sie entweder vom Google Play Store oder von einem vom Entwickler angegebenen Speicherort heruntergeladen. Bei Verwendung dieser -Funktion ist die Crosswalk-Bibliothek nicht im Paket der Anwendung enthalten und daher deutlich kleiner.

Produzieren eine wesentlich kleinere APK-Dateigröße.

Es ist noch nicht in ionischen Rahmenwerk integriert und Es gibt keine Straßenkarte, um diese feature aufzunehmen.

+0

Wenn Sie Ionic verwenden, ist Crosswalk nicht nativ gebündelt. http://blog.ionic.io/crosswalk-comes-to-ionic/ – csvan

+1

Mit Crosswalk half die Leistung meiner App massiv. Danke vielmals. –

+0

Sie können einen Ndk-Fehler erhalten, nachdem Sie dies getan haben. Ich tat. Siehe Lösung http://stackoverflow.com/questions/31979965/after-updating-android-studio-to-version-1-3-0-i-am-getting-ndk-integration- is – rharvey

1

Auf einer 1 + 1 bekomme ich die gleiche Leistung durch Übersprechen wie durch das native Webview. Leider sind beide Optionen nicht so reaktionsschnell, als wenn die gleiche App auf einem "ehrwürdigen" iPhone 5s getestet wird. Also nur Crosstalk verwenden nicht genug, aber Sie könnten Glück haben :)