新版的安卓客戶端明顯使用了Chromium,為何要這麼做?是為了降低開發成本嗎? 我只是想了解一下基於Chromium開發移動應用這種理念的接受度

相關問題:如何評價安卓 Android 版知乎 4.0 新版UI? - 用戶界面設計


補充:

當然千醉提到的4.4之後是基於Chromium這個是流暢的一個因素,這是系統級的。只要題主是4.4+的系統都可以,與知乎版本升級無關。

依照題主的提問,我認為題主是以為知乎內嵌入了Chromium。所以纔有以下回答。

--------------------------分割線----------------------

先說是不是。

結論是 不是,知乎2.4並沒有使用Chromium。

先從百度上下載最新的知乎2.4的包。

下載地址:http://gdown.baidu.com/data/wisegame/e327cabd0a70ac46/zhihu_240.apk

通過反編譯代碼,並沒有發現有使用Chromium的痕跡。

相關的包為org.chromium,可是裡面卻沒有,至於有沒有改包名,按照知乎的習慣,是沒有的,有興趣的同學可以解包看一下,用了很多第三方框架,網路庫就有好幾套,比如volley、AndroidAsync、android-async-http、okhttp等,?_?,我都驚呆了,當然有可能是第三方庫用了不同的網路模塊。

然後考慮到Chromium一般是個NDK項目嘛,肯定會有so文件嘛,現在咱們看下so文件吧

幾乎都是處理圖像的嘛。接下來說說如果用,為什麼用
  • 原生的WebView兼容(一般2.2+)十分麻煩
  • 老版本的WebView還有各種漏洞可以被利用

  • Chromium在所有機器上性能都比原生的好,提供一致的體驗
  • Chromium對html5支持好啊

那為什麼又不用呢
  • 開發成本,都趕上做一個瀏覽器了,看知乎用的大部分都是第三方庫,除非迫不得已,一般夠嗆會自己開發
  • 維護成本,後續升級了還得改
  • 應用安裝包會大不少,具體大多少,dex文件2-3M,so文件保守估計11M+(比如QQ瀏覽器6.0.0.1550 libmttwebcore.so為11.236m,這還是做了精簡以及優化的)

至於為什麼題主感覺流暢了,要麼是題主系統升級優化了,要麼是知乎這個版本做了優化。

以上。碎覺了,明天還得上班。。。

沒有反編譯知乎的APK包,不清楚到底用沒用。不過樓主這麼認為,個人感覺主要原因可能是4.4 Kitkat之後,原本基於Android WebKit的WebView實現被換成基於Chromium的WebView實現。

Migrating to WebView in Android 4.4
知乎用了系統的webview,系統webview從4.4開始就是chromium的內核,但並不是2.4加的,2.3也有webview
webview != chromium
你可能是更新了這個,這是基於chrome的。Android System WebView
1. 公司人員匹配更靈活, 因為與網站前端用的程序員是一樣的,這樣就可以在互相幫忙。2.節省成本1,很大一部分前端代碼或工具可以共享。3.節省成本2,跨平臺,手機端只需維護一份代碼。4.節省成本3,使用html5開發速度更快。5.已經夠用,使用html5 + chromium殼的方式出來的應用非常流暢,體積也不會比本地應用大太多。
推薦閱讀:
相關文章