wap2app手機網站快速生成app神器
wap2app是一個將現有M站(也稱手機wap站,區別于pc的web站)快速發布成App的增強方案,通過DCloud的wap2app框架,進行簡單的配置和必要的編程,即可完成M站的體驗強化,達到原生應用的功能體驗,進而再發布為原生安裝包或流應用。
如果你沒有wap站, 而是想重新開發一個應用,并且開發一次,M站、跨平臺原生App都自動生成,請移步DCloud的另一個產品MUI框架
-提供了原生渲染能力,讓界面渲染速度和動畫效果,達到原生體驗(優化后的體驗有多好,可以滾動到文檔底部看“案例體驗”章節)
-提供豐富的系統原生能力(定位、分享、支付、推送等),達到原生功能
-通過json配置頁面規則和強化規則,工作量低,學習成本低
-M站僅需稍作修改,改造成本低
-強化部分和之前的M站解耦合,M站后續升級業務邏輯,生成的App自動含有更新后的業務邏輯
使用wap2app,開發者可復用M站之前的所有業務邏輯,僅需進行必要的強化,而之前的注冊、購物、查詢等所有業務邏輯全部復用。
開發者所做的強化工作,分為:1、wap2app客戶端的配置編程工作,2、原M站的改造工作。
注意這2塊是分開解耦的。
在HBuilder8.8.3起,新建項目時選擇wap2app類型項目,會自動生成一批模板文件,這些json或js是部署在手機客戶端側的,并非部署到M站的服務器上。強化工作主要在這里做。
開發者無需、也不能把M站的項目源碼導入到HBuilder的wap2app項目里,M站仍然是之前的模式,在服務器側遠程加載。
如果要在HBuilder中同時編寫M站,則在HBuilder里新建項目時選擇web項目類型。
在HBuilder中把新建的wap2app項目選擇打包為原生應用或發布為流應用時,wap2app項目下的這些強化配置和編程文件,是存在app包里的,安裝后直接在手機的本地存儲區里運行,可以理解為是C/S模式的Client部分。而M站仍然是B/S模式的,并不會打包M站的那些文件到app包里,而是從服務器在線加載M站頁面。
手機端實際運行時,DCloud的框架會自動把本地的強化配置和在線的wap站融合在一起,在用戶眼里,仍然是一個app的感覺。
1.wap2app本地端的工作:通過框架提供的sitemap文件,描述頁面關系和動畫強化方案,以達到原生的窗體切換效果。當sitemap.json配置無法滿足復雜需求時,可使用app.js編程進行增強處理。
2.M站的改造工作:針對App運行環境(UA不同),進行適當的改造,包括去掉一些App里不應該出現的頁面元素(如底部的電腦版鏈接,或某些原生app下載引導)。
3. 如果需要調用DCloud的HTML5+擴展能力,比如M站之前無法實現的微信分享、推送、原生支付,進行必要的編程調用。HTML5+擴展的api參考http://www.html5plus.org/doc/h5p.html,在DCloud提供的wap2app框架中,包含了完整的HTML5+擴展能力,可以調用幾十萬原生應用的api。這部分工作,可以在wap2app本地端實現,也可以在M站實現(需判斷運行環境)。
強化和新開發的區別:
新開發一個app,是大多數編程人員常見的思路,比如新開發一個微信小程序,學習它的每個api,重頭做起。
但使用強化框架,并非重頭做起。它的學習方式和開發者過去的習慣可能有所不同,比如開發者時刻要清楚什么工作在客戶端強化,什么工作在M站改造。但如果掌握了,它的投入產出是更高的。