android - 最近火起来的h5app是否已经能够完美转化原生控件?
迷茫
迷茫 2017-04-17 17:29:25
0
15
1179

最近发现很多H5app的框架,如react-native,wex5,phoneGap等。开发者只要写html5+js+css就可以了,网页端打开无可厚非,而打包成android客户端,iOS客户端的时候,上面的按钮文字等界面,用的是网页加载的还是全部转化成原生的控件呢?如iOS的UIView UIbutton

迷茫
迷茫

业精于勤,荒于嬉;行成于思,毁于随。

全部回覆 (15)
Peter_Zhu
  1. 大部分框架(例如PhoneGap)並未將html5轉化為原生控件,而是使用native
    webview去加載html,跟你打開瀏覽器瀏覽網頁是一樣的,以這種方式來實現跨平台。但這些框架又提供了js呼叫native程式碼的能力,讓前端語言開發的業務邏輯可以存取到一些系統原生的功能(電量、定位等等)。這種方式建構就是hybrid應用,在UI方面,簡單的佈局、空間使用html5開發,複雜佈局和控制使用native語言開發,框架提供將native語言開發的控制項實例化並加入到應用程式佈局中的能力,所以hybrid方式靈活且成本低。

  2. 由於瀏覽器渲染html頁面性能仍然無法媲美native,所以像react-native這種框架直接使用native控件,但控件的描述是基於框架自定義的js語法而不是html5,因為將html5轉換為原生控制太複雜(html標準很複雜),大部分框架的目的是跨平台(android ios),要做轉換每個平台都得做,這與開發一個web瀏覽器有什麼不同呢。

    阿神

    所以你們一個也沒寫過fuse 原生綁定html objc

      大家讲道理

      目前來說,html5在行動裝置上的順滑度不如源生的一些控制項。
      二者結合開發一個app是更好的選擇。
      常用固定的內容用源生api,不常用或頁面更新頻率高的內容用html5來構建,提高開發效率和資料更新時效性。

        黄舟

        首先,h5app不知道你的理解是不是app裡嵌套網頁。 =。 =!其實不全都這樣子的。
        例如ReactJS Navite其實應用一種『曲線救國』的方法,你寫好JS程式碼後還是要解析成原生的程式碼的。

          黄舟

          至少react-native 是轉換為原生元件的
          請參考連結 -- Hello React Native 段落

            Ty80

            至少APICloud的還是透過native跳用安卓和iOS底層的一些東西,有些介面的一些東西用js卻是也可以實現但是不如原聲的靈活

              小葫芦

              至少體驗方面還是有差,但也和開發者水準有關。感覺過個半年後會有很大進步。仍然很看好這個方面

                伊谢尔伦

                看是什麼類型的App了,如果只是普通的新聞客戶端,不追求調用什麼系統功能,直接App裡套個WebView訪問WAP站,本地實現記住密碼和自動登錄就夠了.# #

                  小葫芦

                  現在h5還沒辦法取代原生開發,混合開發可能是更好的選擇,這樣可以結合2者的優勢。

                    刘奇

                    想用h5代替源生這幾年看是沒戲至少我可以說局限性很多h5炒那麼火做遊戲的不還是cocos或者unity
                    我知道應用很多但是不燒錢的應用裡還是遊戲賺錢的最多
                    大公司更不缺android ios工程師
                    但是小公司做個資訊發布類應用程式還是沒問題的

                      最新下載
                      更多>
                      網站特效
                      網站源碼
                      網站素材
                      前端模板
                      關於我們 免責聲明 Sitemap
                      PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!