有些webapp是以native殼的形式,提供一個瀏覽器的webview 發佈在appstore或各種應用程式商店中,那麼在不同的系統中,例如ios和安卓系統上,這些從商店中下載的webapp中的瀏覽器內核都是什麼樣的?
如果都是使用-webkit-內核,開發中兼容性上是不是要考慮的能少一些(僅考慮native殼形式的app,透過各種瀏覽器輸入網頁瀏覽的不算)?
初學前端,對webapp開發沒什麼概念,如果要在ios上發布一個帶殼的native形式的app,是不是還要稍微學一下objective-c?
智慧型手機iOS和Android上瀏覽器的核心基本上都是以webkit為基礎的,對於網頁相容是一個好消息。但不同的webkit版本對於js的實現有差異,特別是對es2015的支持,不同的手機作業系統版本可能整合了不同版本的webkit,在開發網頁時還是需要考慮最低支援到什麼版本的作業系統,否則就需要犧牲很多新版的js才有的新特性。
簡單的Objective-C的知識還是要有的,花一周左右的時間搭建最基本的開發環境,購買開發證書,摸清楚AppStore上架的流程,開發一個簡單的Hello World程序,對未來的開發有幫助。
如果只是考慮不同作業系統手機跨平台開發的話,帶殼的webkit程式不一定是理想選擇。可以考慮ionic或react native,這兩種都是JavaScript語言開發,但編譯後的結果是原生的iOS應用和Android應用,效能和體驗上都遠優於webkit殼的應用。