1. 程式人生 > >快應用開發的踩坑之旅

快應用開發的踩坑之旅

校驗 未來 bug 失敗 作用 定義 無需 功能 com

前言

嘗試一款新的開發框架的時候勢必會遇見各種各樣的問題。可能因為一開始不熟悉文檔,導致配置錯誤,或是api使用錯誤。當然開發的時候我們也不能確認框架沒有問題,是否存在bug。所以在某些出錯的情況下,我們也許會不斷懷疑自己,懷疑框架,最終懷疑人生。這時候就需要開發者們發揮無私的精神,積極討論,記錄並貢獻自己的填坑秘笈,供大家討論參考。所以在這裏我就先記錄自己收集及遇見的坑,希望起到拋磚引玉的作用。大家有不同的問題的可以一起討論,方便後來的開發者。

容易出錯的地方

1.更新 rpk 的時候出現版本號必須高於上一個版本的錯誤提示

出現這個問題是因為快應用官方以配置 manifest.json 的屬性versionCode

的值來確認版本更新,官方要求每次上架更新需要將該值手動 自增1。很多同學會誤以為修改 versionName 來更新版本,versionName 應該是屬於那種顯示在應用商店

2.使用list組件造成應用閃退

根據文檔說明,list 組件下面的 list-item 是可以配置type屬性來優化渲染的,但是具有相同 type 屬性的list-itemdom結構必須一致,如果不一致就會出現閃退情況,但是看不到任何錯誤說明,讓人找不到錯誤原因,非常頭疼。所以應該盡量不在裏面使用iffor指令,否則會很容易出現 dom 結構不一致造成應用閃退。

3.在protected public private
裏定義的屬性,在 template 中無法獲取

在快應用中具有多種定義數據的形式,分別可以定義在 protected public private data 裏面,但是有一個很容易被大家忽視的細節,就是在官方文檔中說明了 protected public private 只能在頁面級組件中才能使用,所以在自定義組件,非頁面級組件中是無法使用的,自然也就在 template 中取不到數據了。

4.上傳 rpk 的時候,出現應用簽名校驗失敗

平常我們開發及測試的時候使用的是 npm run build 命令進行打包調試,其中運行時會使用 sign 下面的 debug 的簽名及證書來打包 rpk。當我們開發完成準備上傳時,需要進行以下步驟:

  1. 生成發布的證書和簽名:運行 openssl req -newkey rsa:2048 -nodes -keyout private.pem -x509 -days 3650 -out certificate.pem
  2. 在 sign 目錄下新建release文件夾,將生成的 certificate.pem 和 private.pem 放入其中
  3. 運行npm run release生成以.signed.rpk結尾的 rpk 用以發布

官方IDE已經支持一鍵調試,一鍵生成簽名等功能,覺得以上步驟麻煩的同學可以去體驗體驗,下載鏈接 https://www.quickapp.cn/docCe...

目前不支持的地方

  1. background目前不支持網絡圖片,所以要使用網絡圖片時應該考慮用image組件來替代
  2. 無法將canvas組件轉化為圖片保存在本地
  3. swiper不支持控制方向,只支持橫向滾動
  4. css 不支持overflow樣式,無法設置超出滾動或顯示。組件內滑動只能使用list組件

但是據相關的開發同學告知,這些功能已經正在開發及完善,不久就會支持了。

總結

相對來說,作為一個新推出的新型應用生態,快應用還是有許多不足需要去完善。但是其無需安裝,多入口快速打開是具備一定優勢的。在可預見的未來,會有越來越多的企業及開發者加入其中。本文希望通過記錄自己在開發過程中遇見的問題及解決方案來進行總結,方便後來者查閱。

原文地址:https://segmentfault.com/a/1190000016823184

快應用開發的踩坑之旅