在產(chǎn)品工作中,經(jīng)常要對(duì)產(chǎn)品APP進(jìn)行迭代升級(jí)。本文作者根據(jù)自己的工作經(jīng)驗(yàn),對(duì)APP版本升級(jí)管理這個(gè)問題展開了深入的思考,希望對(duì)你有幫助。
移動(dòng)端功能開發(fā)測(cè)試完成后,需要引導(dǎo)用戶安裝新版本,針對(duì)用戶量級(jí)較大的APP這個(gè)過程中會(huì)分為兩個(gè)階段:灰度階段和正式階段。
灰度階段是面向部分用戶投放應(yīng)用,目的是驗(yàn)證應(yīng)用包的可用性及兼容性問題。正式階段是面向全量用戶投放正式的應(yīng)用,目的是引導(dǎo)用戶升級(jí)到新的版本。
實(shí)施方式:
灰度階段有兩種方式:APP灰度——全量功能APP分發(fā)給部分用戶試用。功能灰度——部分功能由后臺(tái)控制開關(guān)供部分用戶使用正式階段(全量開放):經(jīng)檢驗(yàn)沒有問題的APP上傳到各應(yīng)用市場(chǎng),同時(shí)引導(dǎo)老用戶進(jìn)行版本升級(jí)
本文僅針對(duì)正式階段,面向全量用戶進(jìn)行新版本升級(jí)引導(dǎo)的APP版本升級(jí)管理進(jìn)行展開討論。
版本升級(jí)流程:
版本升級(jí)總共分為兩步:安裝包發(fā)布到官網(wǎng),引導(dǎo)用戶升級(jí)到新版本。
流程圖如下:APP官網(wǎng)投放、iOS需要上傳appstore審核,安卓可依據(jù)需求投放不同應(yīng)用市場(chǎng)。
特別說明:因?yàn)锳pp Store存在審核時(shí)間長(zhǎng)的特性(3-14天不等),如果需要兩端同步發(fā)布一般是需要先將iOS端進(jìn)行提審,再講安卓提審(安卓應(yīng)用市場(chǎng)審核周期為一天左右),等到應(yīng)用包已經(jīng)上架應(yīng)用商店后,接下來就是引導(dǎo)已經(jīng)安裝APP的老用戶進(jìn)行升級(jí)到新版本各應(yīng)用商店有自己的應(yīng)用升級(jí)方式。
但是升級(jí)過程會(huì)很被動(dòng)(比如用戶關(guān)閉自動(dòng)升級(jí),新版本存在功能不兼容導(dǎo)致用戶不能使用),所以需要我們自己開發(fā)管理后臺(tái)去控制各版本之間的升級(jí)方式
運(yùn)營(yíng)配置升級(jí)流程:
引導(dǎo)用戶升級(jí)需要在后臺(tái)做兩步:配置需要升級(jí)的安裝包信息,設(shè)置升級(jí)方案。
第一步:填寫安裝包信息
不同渠道的安裝包需要填寫的安裝包信息不同,iOS之所以分為三種發(fā)布類型是可以理解為兩個(gè)用途:appstore用于正式安裝包配置,企業(yè)分發(fā)/testflight為內(nèi)部測(cè)試升級(jí)使用。
testflight是蘋果提供給開發(fā)者專用的測(cè)試方式,用戶需要測(cè)試之前需要安裝蘋果提供的一個(gè)testflight工具,然后會(huì)收到開發(fā)者的測(cè)試升級(jí)邀請(qǐng),或者通過開發(fā)者開放的一個(gè)公開鏈接去下載測(cè)試包。
testflight這種方式一是測(cè)試人數(shù)有上限(9999人),二是需要額外安裝工具。
內(nèi)部測(cè)試的話,也可以通過企業(yè)證書打包的方式,企業(yè)證書是面向企業(yè)內(nèi)部員工使用的APP的開發(fā)者證書。開發(fā)者只需要將應(yīng)用打包,生成應(yīng)用下載二維碼,這樣用戶就可以直接掃碼安裝。
兩者可以依據(jù)現(xiàn)實(shí)情況考慮,不是必要選項(xiàng)。
第二步:設(shè)置升級(jí)方案
這里面有兩種主流升級(jí)方式:依據(jù)最新版本升級(jí)方式引導(dǎo)升級(jí),依據(jù)用戶當(dāng)前所用版本升級(jí)方式引導(dǎo)用戶升級(jí)。
依據(jù)最新版本升級(jí)方式引導(dǎo)用戶升級(jí):不管用戶當(dāng)前所用版本,所有版本都是依據(jù)最新版的升級(jí)方式來升級(jí)的。
優(yōu)點(diǎn):引導(dǎo)性強(qiáng),可以快速引導(dǎo)全量用戶升級(jí)到最新的版本。
缺點(diǎn):影響范圍廣,比如本次新版功能只針對(duì)上個(gè)版本用戶做了bug修復(fù),需要強(qiáng)制升級(jí),但是其他版本用戶雖然沒受到影響也需要跟著一起強(qiáng)制升級(jí)。
依據(jù)用戶當(dāng)前使用版本的升級(jí)方式引導(dǎo)用戶升級(jí):新版發(fā)布時(shí),為每個(gè)歷史版本配置該版本的升級(jí)模式,比如新發(fā)布2.0.0版本,為1.2.0版本配置提示升級(jí),為1.1.0版本配置不提示升級(jí),為1.0.0版本配置強(qiáng)制升級(jí)。
優(yōu)點(diǎn):針對(duì)性強(qiáng),可以兼容歷史版本,用戶影響范圍小。
缺點(diǎn):維護(hù)成本高,隨著版本數(shù)量增多,會(huì)存在需要維護(hù)的歷史版本多的情況所以升級(jí)方案參考了上面的兩種升級(jí)方式,采用第一種依據(jù)最新版本升級(jí)方式,但又補(bǔ)充了最小兼容版本,盡可能在用戶體驗(yàn)及維護(hù)成本中平衡,先看下用戶端的升級(jí)判斷邏輯。
提醒用戶升級(jí)方式有四種:
升級(jí)策略的觸發(fā)條件除了最新版本配置的升級(jí)方法外,考慮到了歷史版本兼容性問題,增加了最小兼容版本的這個(gè)字段,就能滿足在固定版本以前無法正常使用,需要強(qiáng)制升級(jí)的邏輯場(chǎng)景。
最小兼容版本就是,最新版本升級(jí)邏輯僅支持的最小版本號(hào),小于該版本的歷史版本均采用強(qiáng)制升級(jí),保障用戶的基本使用體驗(yàn),其余版本則遵循最新版配置的升級(jí)邏輯。
版本管理列表:
新建版本:
客戶端升級(jí)彈窗: