探一探快應用的虛實

本文來自網易雲社區,轉載務必請註明出處。css


快應用號稱是要替代微信小程序的,咱們來看看,他究竟是個什麼東西呢?html

什麼是快應用

根據官方的說法,快應用是基於手機硬件平臺的新型應用形態,標準是由主流手機廠商(小米、華爲、中興、金立、聯想、魅族、努比亞、OPPO、vivo)組成的快應用聯盟聯合制定的;快應用標準的誕生將在研發接口、能力接入、開發者服務等層面建設標準平臺,而且是以平臺化的生態模式對我的開發者和企業開發者全品類開放。前端

快應用的特色

快應用的特色是使用前端相關技術棧,可是使用體驗是不亞於App原生的。官方宣傳圖以下:vue

快應用的特色

快應用性能優點

官方強調,快應用的開發方式是與H5開發一致,可是性能上是要比H5要好,僅次於App原生的。web

快應用性能優點

那既然快應用那麼優秀,咱們開始擼碼吧!ajax

快應用的開發

搭建環境

  • 快應用官方提供了一個開發者工具,安裝時須要安裝 Node.js (>= 6.0)或者yarn。npm

npm i hap-toolkit -g// 檢測是否安裝成功hap -V
  • 手機安裝「快應用」調試器 ── 一個 Android 應用程序,它能夠鏈接到手機系統內的快應用執行環境,包含掃碼安裝、本地安裝、在線更新、開始調試、等功能;json

掃碼安裝:配置 HTTP 服務器地址,下載 rpk 包,並喚起平臺運行 rpk 包;
本地安裝:選擇手機文件系統中的 rpk 包,並喚起平臺運行 rpk 包;
在線更新:從新發送 HTTP 請求,更新 rpk 包,並喚起平臺運行 rpk 包;
開始調試:喚起平臺運行 rpk 包,並啓動遠程調試工具;小程序

備註:當您的手機系統還沒有內置快應用運行平臺,或您想在開發過程當中體驗快應用還沒有正式發佈的新功能、新特性,您能夠安裝快應用預覽版,這是一個包含了快應用基礎功能的 Android 應用程序。下載安裝成功後,經過快應用調試器能夠選擇在快應用預覽版運行 rpk包,開發測試對應平臺的 api 和功能。更詳細的敘述,請參見 快應用開發文檔 | 環境搭建 。微信小程序

  • 開發IDE 若是是VS Code,可在擴展商店安裝Hap Extension,會有代碼高亮和代碼提示。

    效果以下:
    代碼高亮:

    代碼高亮

    代碼提示:

    代碼提示

其餘編輯器設置可參考:快應用開發文檔 - 代碼編輯配置

快應用示例

在安裝 Toolkit 工具後,可經過全局 hap 命令建立一個項目模板,以下所示:

// 首先建立一個demo項目hap init quickapp-demo// 進入demo項目cd quickapp-demo// 對項目進行臨時編譯npm run build// 進行項目預覽npm run server

預覽後控制檯顯示以下:

快應用示例-1

快應用真機顯示:

快應用示例-2

demo項目的目錄以下:

├── sign                # 存儲 rpk 包簽名模塊;│   ├── debug           # 調試環境證書/私鑰文件│   └── release         # 正式環境證書/私鑰文件└── src
│   ├── assets          # 公用的資源(Images/Styles/字體...)│   │   ├──images       # 存儲 png/jpg/svg 等公共圖片資源│   │   └──styles       # 存放 less/css/sass 等公共樣式資源│   ├── helper          # 項目自定義輔助各種工具│   │   ├──apis         # 存儲與後臺請求接口相關(已封裝好)│   │   ├──ajax.js      # 對系統提供的 fetch api 進行鏈式封裝│   │   └──util.js      # 存放項目所需公共工具類方法│   ├── pages           # 統一存放項目頁面級代碼│   ├── app.ux          # 應用程序代碼的人口文件│   └── manifest.json   # 配置應用基本信息└── package.json        # 定義項目須要的各類模塊及配置信息

快應用框架

  • 首先介紹下生命週期:

    • 頁面生命週期 onInitonReadyonShowonHideonDestroyonBackPressonMenuPress

    • App的生命週期 onCreateonDestroy

熟悉小程序開發的話,這裏也沒什麼難點。

你們能夠看一下代碼:

代碼預覽

頁面、組件的開發跟Vue開發沒多大差異。

其餘Api接口可參照: https://doc.quickapp.cn/features/

PS: 我我的以爲,官方的開發文檔是很是通俗易懂的,只要對照着官方文檔進行開發,是沒多大問題的。

快應用 VS 小程序

既然是對標小程序的新形態,那必然要作一下比較,由於還沒有走完整個流程,因此僅從初期開發體驗上來作一下分析比較:

  • 開發環境:快應用須要自行安裝配置一系列環境及調試工具,而小程序只需一個開發者工具便可,這一點小程序勝。

  • 開發體驗:快應用的語法和vue1很像,而小程序有着本身一套語法規範,相對來說,快應用會更容易上手。

  • 程序包大小:小程序4M,快應用1M,這一點確實有點侷限,但小程序也是從1M變成4M的。

  • 能力:小程序和快應用在安卓端均可以添加快捷方式到桌面,但不一樣的是,快應用屬於系統級應用,與微信同級,能調用更多系統級API,體驗上會更優於小程序,這一點是後者所不能比的。

  • 其餘:小程序上架發佈流程較爲簡單,快應用須要逐家關聯開發者權限,這方面有點捉急……不過對於企業帳號已有的安卓渠道來講,也沒什麼門檻。


開發技術 渲染方式 硬件資源扶持 系統級能力 桌面留存
小程序 前端技術棧 webview渲染
快應用 前端技術棧 native渲染

總結

快應用在微信小程序推出並推廣一年後纔出來,說白了,就是爲了不小程序一家獨大,至少在桌面級別應用爭取了一些流量入口。可是,這種桌面級別的應用入口只是在安卓下有效,iOS上是沒法享受到這種級別待遇的。綜合來看,快應用和小程序兩者不分伯仲,開發和維護成本都不高,都在努力爭取流量入口。對開發者來說,又多了一項技能,對企業來講,更多了一份可能。

百家爭鳴,百花齊放,也是一件不錯的事情...

參考

  1. 快應用開發文檔: https://doc.quickapp.cn/

  2. 快應用之開發體驗紀要: https://jeffjade.com/2018/08/31/143-develop-quick-app-experience-notes/

  3. 10 大手機廠商聯手狙擊微信小程序!如今這些「快應用」怎麼樣了? https://mp.weixin.qq.com/s/ptPUla24WP_05NP-cy45VA



本文來自網易雲社區 ,經做者餘伯賢受權發佈。

網易雲免費體驗館,0成本體驗20+款雲產品!

更多網易研發、產品、運營經驗分享請訪問網易雲社區


相關文章:
【推薦】 知物由學|如何應對日益強大的零日攻擊
【推薦】 Android事件分發機制淺析(2)

相關文章
相關標籤/搜索