2012-08-22 126 views
2

我正在用jQuery Mobile構建一個Phonegap應用程序,整個應用程序是動態的,它正在從API加載數據。我大概有10頁,而且App在Phonegap上運行速度太慢,但是對於原生瀏覽器來說,它速度很快。我可以做些什麼來加速Phonegap或任何地方?Phonegap + jQuery Mobile改進

+0

你正在開發什麼平臺?這個問題與[this]有什麼不同?(http://stackoverflow.com/questions/8208679/android-performance-jquery-phonegap-issue)? – aug

+0

寫了一些技巧,以使您在webview應用程序中獲得最多:http://stackoverflow.com/questions/13904315/android-webview-late-rendering/14010732#14010732。希望能幫助到你。 –

回答

4

嘗試禁用某些會降低速度的CSS。在您的jQuery Mobile的.css文件將其添加到底部:

* { 
text-shadow: none !important; 
-webkit-box-shadow: none !important; 
-webkit-border-radius:0 !important; 
-webkit-border-top-left-radius:0 !important; 
-webkit-border-bottom-left-radius:0 !important; 
-webkit-border-bottom-right-radius:0 !important; 
-webkit-border-top-right-radius:0 !important; 
} 
+0

觸摸識別器和頁面轉換仍然很慢。 –

+0

看,我討厭傾倒他們努力工作的某些框架,但JQM在舊版Android OS上運行得並不順利。您應該只使用CSS轉換並閱讀如何快速點擊。默認情況下,它們延遲了300ms。 https://developers.google.com/mobile/articles/fast_buttons –

0

的另一種方式除了禁用CSS是去除或與GC的替代工作。

JavaScript是基於GC的語言。這意味着,它具有不可預測的GC時間,從而導致主線程停止。這使得UI掙扎。在本機實現中,您可以控制使用GC或不使用GC。

這在Android上不會有問題。由於Java上的GC,Android總是有那些掙扎。考慮到這個事實,大多數Android用戶並不關心用戶體驗。但在iOS上,基於HTML5的應用永遠不會比競爭對手的原生應用更好。

這個GC時間問題有很多解決方法。如增量式GC,實時GC等。但實際上,沒有真正的解決方案。因爲原始問題是你沒有控制權。