微信也能測手機幀率?這原來是小程序的“陰謀”
上個月,微信在Android測試版中加入了定向清理緩存的功能,似乎以第一方的身份印證了微信緩存管理遇到了問題。而在短短兩周之后,微信又一次在Android手機客戶端中加入了更多的性能檢測工具:在Android版8.0.22中,用戶可以在“幫助與反饋”界面找到微信修復工具的入口,在打開下方的性能檢測工具后就能看到新加入的MAtrix性能檢測工具。
這個Matrix性能檢測工具能以屏幕懸浮窗的形式常駐用戶顯示頁面的最上方,提供了占用率,FPS、功耗信息、內存信息等詳細的性能數據,甚至還會實時顯示當前的核心溫度。
難道微信也要進軍手機性能檢測/跑分行業,像某兔某大師發起挑戰嗎?
作為國內裝機量“數一數二”名列前茅的軟件,微信的目標當然不會是放棄第一即時通信軟件的身份,轉而去做“一次性”的跑分軟件。這個性能檢測與其說用來測試手機,方便用戶比較手機性能的,倒不如說是用來發給開發者監測自己的程序、優化軟件資源需求的。
而什么軟件需要用到微信內置的性能檢測工具呢?沒錯,說的就是功能越來越多,資源需求越來越高的微信小程序。
小程序、大負擔
2017年1月9日,微信正式上線了微信小程序的功能。在上線初期,微信小程序其實備受爭議:盡管小程序可以在微信的體系內快速調用,同時也能借助微信的平臺快速部署、分發,但和傳統的本地App相比,微信小程序無論在功能的豐富程度還是運行的穩定性上都略顯遜色。再加上微信小程序的開發者文檔和接口常常在短時間內多次更新,小程序的初期體驗并不好。
但在微信團隊持之以恒地更新和推廣下,憑借低成本、簡單適配、快速部署的特點,微信小程序在不到一年內就完成了對傳統本地App的超越,越來越多的商業服務選擇使用微信小程序執行,餐廳的微信點餐就是其中一個最好的例子。
而同年年底上線的小游戲更是讓微信小程序迅速破圈。以著名的“跳一跳”為例,這款游戲不僅向微信生態的開發者展示小程序框架內的無限可能性,更是向所有微信生態參與者展示了微信生態“造神破圈”的能力。
但隨著小程序的爆紅,越來越多的第三方小程序和不規范開發也讓微信小程序里自己原本的目標越走越遠。
在最初的設想中,微信小程序的定位介于服務號和本地App之間:在功能上,它比服務號要多,同時也能跳出網頁交互的限制,實現更豐富的交互功能;在易用性上,小程序也不需要下載安裝,點開二維碼就能直接運行,還能延續微信自己的用戶身份識別,不需要另外的注冊步驟。
但在產品上線運行五年后的今天,小程序早已不是原本輕量化的樣子。越來越大的本地文件緩存,越來越復雜的環境依賴讓小程序的體積越發膨脹,也對小程序的流暢運行提出了全新的要求。微信之所以會在軟件中性能檢測工具,而且將重點聚焦在內存占用和界面交互上,相信也是出于同樣的考慮。
為微信打下大片江山的小程序,是時候執行“瘦身計劃”了。
但話又說回來,即使微信小程序越做越復雜,但依舊是不少政企介入移動互聯網的第一道關。為什么國內互聯網依舊沒能迎來下一個“小程序殺手”呢?
那些小程序的挑戰者們
首先需要澄清的是,小程序雖然是微信獨創,但借助瀏覽器內核將網頁封裝成獨立“App”卻不是微信的創意。別的不說,即使在本地App時代,絕大多數的注水App采用的都是封裝一個前端網頁來湊數的開發方式。時至今日,某游戲App的手機客戶端采用的依舊是封裝瀏覽器的原理。
而在微信小程序發光發熱的這幾年,網頁封裝App經歷了多次的技術迭代,并最終拿出了應對微信小程序的“殺手锏”——PWA應用(漸進式 Web 應用)。
簡單來說,PWA的本質依舊是Web程序,但不同于直接用瀏覽器打開一個頁面,PWA可以和手機操作系統更好地整合,離線依舊可以運行就是PWA應用相較于一般Web和微信小程序最大的亮點。
另外,對于那些已經有成熟桌面網頁的網站來說,PWA應用可以最大限度地復用已經存在的系統資源,對增量更新和熱更新的支持使PWA應用能在桌面互聯網高度發達的市場中快速普及。
但為什么PWA在國內行不通呢?在我看來原因主要有三點:
首先,PWA脫胎于Web,盡管移動互聯網也可以二次開發成PWA應用,但這都只停留在用戶端或者前端的范疇,對于背后的服務提供者來說,從零開始擁抱PWA顯然有著更高的熟悉和開發成本。而微信小程序連同背后的騰訊云提供了完整的配套服務,這顯然更適合國內互聯網市場。
其次,PWA沒有一套行之有效的通用ID系統。作為Web的變體,PWA的需要服務提供者自行建立用戶ID系統,而在電子郵箱使用率相對較低的國內市場,由微信、支付寶等生態提供的統一接入ID可以顯著降低用戶使用軟件的門檻。
最后是應用的分發,PWA應用的分發離不開URL或URL的各種變體,比如二維碼。但微信小程序作為微信的一部分,可以直接以圖形化交互分享給其他用戶,再聯合剛剛提到的第二點,微信小程序能在國內互聯網中飛速發展自然也是水到渠成的事情。
至于支付寶的“小程序”為什么無法在國內大規模展開,在我看來還是用戶習慣的問題,國內用戶對手機支付顯然有更高的警惕性,不愿意在金融類App中使用和交易無關的功能。如果不將“芝麻”體系和支付體系進行切割,支付寶的小程序很難達到微信小程序的高度。
總結
歸根結底,微信需要在手機App中加入性能檢測套件,其實是國內移動互聯網飛速發展的一個縮影。在“跳過”以桌面為基石的傳統互聯網生態后,國內互聯網建設的重任全都移交到了移動互聯網身上。本應朝著輕量化發展的移動互聯網生態,也被迫承擔起越來越復雜的交互和大量的緩存。微信此次選擇加入性能檢測工具,其最終目的也是為開發者提供更加趁手的開發工具,從而提升移動互聯網的整體體驗。
但問題是推出工具讓開發者自查在我看來只是治標不治本的舉措。移動互聯網生態的臃腫大家有目共睹,一個量化工具難以對生態優化提出實質性的推動作用。在便捷的移動互聯網和手機運行效率之間,用戶和開發者都需要作出艱難的選擇。
本文來自微信公眾號 “雷科技”(ID:leitech),作者:一位天明,36氪經授權發布。
標簽: