開發HTML5頁面要解決的主要問題之一,就是調用系統的能力,好比拍照/選圖/保存圖片到相冊/錄音/錄製視頻/定位等,而是否可以調用這些能力,在於其運行環境是否開放了這些權限,是否可以便捷地使用,取決於所提供的API。如果微信網頁開發,微信提供了js-sdk, 以及weui樣式庫;那麼如果原生APP提供的webview容器呢,或者直接在手機瀏覽器內運行呢,抑或直接打包成APP呢,是否也可以調用系統能力,而且用得優雅便捷?html
HTML5+是中國HTML5產業聯盟的擴展規範,基於HTML5擴展了大量調用設備的能力,使得web語言能夠想原生語言同樣強大。
HTML5中國產業聯盟:前端
HTML5中國產業聯盟,是工信部下屬單位,是爲了更好的推動HTML5的商用、更好的爲HTML5開發者服務而由產業鏈廠商共同組成的一個聯盟。
附:html5
使用HTML5開發,而後使用HBuilder提供的雲打包或本地打包將能夠把5+ Runtime和開發者編寫的HTML5頁面 打包爲原生App的安裝包,包括Android的apk和iOS的ipa。發行到原生應用市場。
在你的原生應用中內嵌5+ SDK,替代手機默認的webview,不管 使用Hybrid開發模式,仍是 在原生App中構建web應用生態,都將能體驗到更強大的內核動力。
HTML5+項目的開發工具,既是代碼編輯器,也是基於H5+的APP打包工具。瀏覽器
HBuilder是完整支持HTML5+及JSDoc+規範的優秀開發工具,在HBuilder中能夠有效提示HTML5+語法、JSDoc+提示,能夠開發、調試、發佈基於HTML5+的App。
HBuilder項目調試:微信
HBuilder 優勢:app
缺點:框架
附:HBuilder介紹及下載編輯器
一個與HTML5+配套的樣式框架工具
mui框架是一個基於HTML5+規範的開源前端UI框架,它利用了HTML5+擴展的原生能力,解決經常使用UI控件的性能及跨平臺問題。使用mui框架,能夠簡單方便的開發出高性能的App,同時mui也能夠自動適應沒有HTML5+環境的普通瀏覽器,下降爲普通web app,這使得開發者使用mui開發一次,能夠同時發佈爲HTML5+的iOS、Android App,也可同時發佈到手機瀏覽器裏。
附:mui官方網站
安卓集成:
HTML5+ SDK集成:
- 獨立應用集成方式:即Widget集成方式,開發者在集成後可在須要時啓動HTML5+ SDK,顯示指定目錄下的5+ WebAPP
- 單頁面集成方式:即Webview集成方式,用戶可在須要時顯示一個支持5+擴展API的Webview頁面。使用單頁面方式集成5+ SDK,在頁面內不能調用plus.webview的API建立新的頁面,其餘5+API的使用不受影響。
IOS集成:
- 獨立應用集成方式: 使用獨立應用方式,開發者須要將HTML5+SDK生成的首頁面設置爲當前View的subView。HTML5+ SDK將對應用進行管理。
- Widget集成方式: 運行方式和獨立運行方式相似,開發者在集成時可在須要的位置啓動HTML5+ SDK,顯示指定的HTML5+應用。
- Webview集成方式: 用戶可在任何頁面將HTML5+ SDK的頁面以Webview的形式獨立顯示,顯示的Webview頁面。
widget集成方式與webview集成方式的步驟區別:
由此可知,widget集成方式須要將webApp代碼導入到原生工程裏,適合同一團隊,不適合不一樣公司間合做;
而webview方式,看起來公司間合做可以使用此方式
相關文檔:
他人經驗分享:
安卓/IOS中集成HTML5+SDK:runtime方式和widget方式:
http://ask.dcloud.net.cn/ques...
http://ask.dcloud.net.cn/arti...
HBuilder/5+Runtime/mui/wap2app/流應用
的介紹經過以上初步瞭解,下載HBuilder並建立HelloH5+ / HelloMUI
模板項目、移動APP項目、web項目進行調試,對於開頭提出的問題,初步回答以下:
原生APP內嵌web應用:分別構建安卓和IOS的【H5+加強webview環境】,即【5+SDK集成後的環境】,在該環境中運行web應用或單個web頁面,但使用widget集成方式,須要將web應用的代碼放在原生APP的項目內,對於兩者分屬不一樣團隊來講,這種方式不適應;如果直接經過連接在原生APP中訪問web應用,看起來webview集成方式適用,其需求場景爲: