燚軒科技 助力中小型企業(yè)
關注行業(yè)新聞 把握時代脈搏
鄭州小程序開發(fā)專家教你怎么提升小程序性能
鄭州小程序開發(fā)
2019-10-18
2948
小程序的流暢程度很大程度上是由其部件的組成來決定的,那么我們怎么通過手段來增強小程序的性能呢?今天鄭州小程序開發(fā)專家?guī)Т蠹伊私庖幌掳伞?br />
圖片資源
目前圖片資源的主要性能問題在于大圖片和長列表圖片上,這兩種情況都有可能導致 iOS 客戶端內存占用上升,從而觸發(fā)系統(tǒng)回收小程序頁面。
圖片對內存的影響
在 iOS 上,小程序的頁面是由多個 WKWebView 組成的,在系統(tǒng)內存緊張時,會回收掉一部分 WKWebView。從過去我們分析的案例來看,大圖片和長列表圖片的使用會引起 WKWebView 的回收。
圖片對頁面切換的影響
除了內存問題外,大圖片也會造成頁面切換的卡頓。我們分析過的案例中,有一部分小程序會在頁面中引用大圖片,在頁面后退切換中會出現(xiàn)掉幀卡頓的情況。
當前我們建議開發(fā)者盡量減少使用大圖片資源。
代碼包大小的優(yōu)化
小程序一開始時代碼包限制為 1MB,但我們收到了很多反饋說代碼包大小不夠用,經過評估后我們放開了這個限制,增加到 2MB 。代碼包上限的增加對于開發(fā)者來說,能夠實現(xiàn)更豐富的功能,但對于用戶來說,也增加了下載流量和本地空間的占用。
開發(fā)者在實現(xiàn)業(yè)務邏輯同時也有必要盡量減少代碼包的大小,因為代碼包大小直接影響到下載速度,從而影響用戶的首次打開體驗。除了代碼自身的重構優(yōu)化外,還可以從這兩方面著手優(yōu)化代碼大小:
控制代碼包內圖片資源
小程序代碼包經過編譯后,會放在微信的 CDN 上供用戶下載,CDN 開啟了 GZIP 壓縮,所以用戶下載的是壓縮后的 GZIP 包,其大小比代碼包原體積會更小。 但我們分析數據發(fā)現(xiàn),不同小程序之間的代碼包壓縮比差異也挺大的,部分可以達到 30%,而部分只有 80%,而造成這部分差異的一個原因,就是圖片資源的使用。GZIP 對基于文本資源的壓縮效果最好,在壓縮較大文件時往往可高達 70%-80% 的壓縮率,而如果對已經壓縮的資源(例如大多數的圖片格式)則效果甚微。
及時清理沒有使用到的代碼和資源
在日常開發(fā)的時候,我們可能引入了一些新的庫文件,而過了一段時間后,由于各種原因又不再使用這個庫了,我們常常會只是去掉了代碼里的引用,而忘記刪掉這類庫文件了。目前小程序打包是會將工程下所有文件都打入代碼包內,也就是說,這些沒有被實際使用到的庫文件和資源也會被打入到代碼包里,從而影響到整體代碼包的大小。
希望鄭州小程序開發(fā)專家分享的這些內容,能夠幫助大家更好你的優(yōu)化小程序的性能。
目前圖片資源的主要性能問題在于大圖片和長列表圖片上,這兩種情況都有可能導致 iOS 客戶端內存占用上升,從而觸發(fā)系統(tǒng)回收小程序頁面。
圖片對內存的影響
在 iOS 上,小程序的頁面是由多個 WKWebView 組成的,在系統(tǒng)內存緊張時,會回收掉一部分 WKWebView。從過去我們分析的案例來看,大圖片和長列表圖片的使用會引起 WKWebView 的回收。
圖片對頁面切換的影響
除了內存問題外,大圖片也會造成頁面切換的卡頓。我們分析過的案例中,有一部分小程序會在頁面中引用大圖片,在頁面后退切換中會出現(xiàn)掉幀卡頓的情況。
當前我們建議開發(fā)者盡量減少使用大圖片資源。
代碼包大小的優(yōu)化
小程序一開始時代碼包限制為 1MB,但我們收到了很多反饋說代碼包大小不夠用,經過評估后我們放開了這個限制,增加到 2MB 。代碼包上限的增加對于開發(fā)者來說,能夠實現(xiàn)更豐富的功能,但對于用戶來說,也增加了下載流量和本地空間的占用。
開發(fā)者在實現(xiàn)業(yè)務邏輯同時也有必要盡量減少代碼包的大小,因為代碼包大小直接影響到下載速度,從而影響用戶的首次打開體驗。除了代碼自身的重構優(yōu)化外,還可以從這兩方面著手優(yōu)化代碼大小:
控制代碼包內圖片資源
小程序代碼包經過編譯后,會放在微信的 CDN 上供用戶下載,CDN 開啟了 GZIP 壓縮,所以用戶下載的是壓縮后的 GZIP 包,其大小比代碼包原體積會更小。 但我們分析數據發(fā)現(xiàn),不同小程序之間的代碼包壓縮比差異也挺大的,部分可以達到 30%,而部分只有 80%,而造成這部分差異的一個原因,就是圖片資源的使用。GZIP 對基于文本資源的壓縮效果最好,在壓縮較大文件時往往可高達 70%-80% 的壓縮率,而如果對已經壓縮的資源(例如大多數的圖片格式)則效果甚微。
及時清理沒有使用到的代碼和資源
在日常開發(fā)的時候,我們可能引入了一些新的庫文件,而過了一段時間后,由于各種原因又不再使用這個庫了,我們常常會只是去掉了代碼里的引用,而忘記刪掉這類庫文件了。目前小程序打包是會將工程下所有文件都打入代碼包內,也就是說,這些沒有被實際使用到的庫文件和資源也會被打入到代碼包里,從而影響到整體代碼包的大小。
希望鄭州小程序開發(fā)專家分享的這些內容,能夠幫助大家更好你的優(yōu)化小程序的性能。
版權與免責聲明
鄭州APP開發(fā),鄭州小程序開發(fā)燚軒軟件科技有限公司聲明:如發(fā)現(xiàn)內容存在版權問題,煩請?zhí)峁┫嚓P信息發(fā)郵件至854221200@qq.com,我們將及時溝通處理。本站內容源于網絡,涉及內容、言論與本站無關
分享到微信朋友圈
+
打開微信,點擊底部的“發(fā)現(xiàn)”,使用 “掃一掃” 即可將網頁分享到我的朋友圈。 如何使用?
推薦文章
企業(yè)該如何選擇靠譜的小程序開發(fā)公司
燚軒科技    ·
03月25日
·    小程序開發(fā),鄭州小程序制作
雜,并不是一切的小程序開發(fā)公司都會專心于產品的自身,產品的首要價值就是滿足人們的需求,這就是...
2646
閱讀量
在想要進行APP應用開發(fā)時,該選擇企業(yè)自主開發(fā)嗎?
燚軒科技    ·
09月03日
·    鄭州APP開發(fā),鄭州APP制作,鄭州APP開發(fā)公司
的絕大部分,在這么多的企業(yè)中很難建立自己的聲譽和自己的品牌,那么如何才能迅速創(chuàng)造品牌效應呢?...
2649
閱讀量
鄭州小程序開發(fā)的具體步驟有哪些,開發(fā)周期和什么有關
燚軒科技    ·
05月06日
·    小程序開發(fā),鄭州小程序制作
準流程,可能很少有投資者清楚,大家只知道有些小程序開發(fā)速度非???,10天或20天左右就制作完...
2212
閱讀量
未來微信小程序有前途嗎?這篇文章告訴你!
燚軒科技    ·
01月26日
·    鄭州做APP公司
移動互聯(lián)網帶來了新的生機,而且,鄭州APP制作專家認為,隨著用戶量的不斷增加,以及小程序功能...
3531
閱讀量
還在擔心你的小程序嗎?小程序開發(fā)營銷的方法看這里
燚軒科技    ·
10月28日
·    鄭州小程序開發(fā),鄭州小程序制作,鄭州小程序開發(fā)公司
管是APP應用還是微信小程序都發(fā)展的越來越多,人們有了更多的選擇,APP應用和小程序的競爭也...
2495
閱讀量
一覽APP開發(fā)流程,你也可以成為開發(fā)者一員
燚軒科技    ·
10月09日
·    鄭州APP開發(fā)公司
APP開發(fā)的構思大局,讓你對一款APP的開發(fā)有自己的獨立見解。...
3004
閱讀量