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

快應用開發踩坑之旅

前言

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

容易出錯的地方

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

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

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

使用list元件造成應用閃退

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

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

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

上傳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用以釋出

目前不支援的地方

  1. background目前不支援網路圖片,所以要使用網路圖片時應該考慮用image元件來替代

  2. 無法將canvas元件轉化為圖片儲存在本地

  3. swiper不支援控制方向,只支援橫向滾動

  4. css不支援overflow樣式,無法設定超出滾動或顯示。元件內滑動只能使用list元件

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

總結

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