APP低版本強(qiáng)制更新問題這個(gè)問題是在產(chǎn)品不斷迭代中容易忽視的問題,因?yàn)橹挥挟?dāng)APP開發(fā)人員不能做到低版本兼容的時(shí)候才會(huì)去想到的這個(gè)問題。
為什么不能繼續(xù)兼容低版本呢?總結(jié)了如下原因:
一是老版本不支持現(xiàn)有的業(yè)務(wù),出于公司業(yè)務(wù)上的強(qiáng)制推廣;二是業(yè)務(wù)線的接口(interface)的更新不兼容老版本,導(dǎo)致老版本部分需求無法正常使用;三是從公司研發(fā)資源的考慮(consider),老版過多維護(hù)成本過高。
這個(gè)時(shí)候大多數(shù)的做法有如下幾種:
第一種:新版本更新彈框主動(dòng)提示用戶老版本不能繼續(xù)使用某些功能;第二種:系統(tǒng)消息提醒不兼容版本的用戶去主動(dòng)更新;第三種:在某些頁(yè)面調(diào)用后端接口(interface)的時(shí)候提示用戶“版本過低,需要更新到新版本才能使用該功能”。
以上為3種常見的做法,但是這三種做法都是在發(fā)現(xiàn)不能兼容低版本的時(shí)候的補(bǔ)救方法,用戶收到這些提示就能達(dá)到目的嗎?從用戶的角度(angle)分析(Analyse),低版本的用戶一直不更新你的app,原因可能(maybe)是如下幾個(gè)原因:app中他所需要的功能較少,你的版本更新網(wǎng)站內(nèi)容并不能刺激他更新;用戶的配置(deploy)較低(安卓手機(jī)較為突出)更新到最新版本就可能出現(xiàn)使用不了的問題。
反過來思考,我們能不能提前預(yù)估好低版本強(qiáng)制更新的問題,提前做好預(yù)防呢?在這里和大家分享一下我的個(gè)人想到的方式:
1、不兼容的低版本的更新彈框,只給用戶更新按鈕,用戶不更新,將不能繼續(xù)使用app,這個(gè)可以在后端配置(deploy)更新彈框的時(shí)候設(shè)置。常熟app開發(fā)秉持拒絕平凡、突破與創(chuàng)新的理念,致力于打造高品質(zhì)的APP。該方法雖然較為粗暴,但是可以通過提示話術(shù)上的美化,用戶有可能(maybe)容易接受,好處在于效果較為明顯;
2、分功能模塊進(jìn)行更新到最新版本的提示,用到不兼容低版本的功能的時(shí)候提示用戶。該方法復(fù)雜度會(huì)更高一點(diǎn),開發(fā)的工作量較大,不過好處在于方式用戶易于接受一些,但是更新效果會(huì)更慢一點(diǎn)。
對(duì)于這個(gè)問題,任何應(yīng)用都不能避免,作為運(yùn)營(yíng)人員應(yīng)該做好每一個(gè)版本更新推廣工作,這樣才能有效避免低版本強(qiáng)制更新帶來的用戶損失(loss)和不好的用戶訪問體驗(yàn)。作為開發(fā)人員應(yīng)該更多的考慮(consider)用戶價(jià)值,盡量做到老版本的兼容。
用戶賬號(hào)被凍結(jié)帶來安全問題
這個(gè)問題也是在我最近剛好遇到了才引起的重視。我現(xiàn)在的產(chǎn)品是一家B端產(chǎn)品,員工消費(fèi)是可以用公司賬戶支付,最近遇到一個(gè)問題,員工已經(jīng)離職,賬號(hào)已經(jīng)被凍結(jié)。通過這件事情想想我們產(chǎn)品的設(shè)計(jì)過程前期是不是應(yīng)該預(yù)防這種問題的發(fā)生,以免問題發(fā)生后才進(jìn)行補(bǔ)救。針對(duì)這種問題,從原理上來講可以根據(jù)用戶ID進(jìn)行校驗(yàn)就行,而這種校驗(yàn)大多數(shù)會(huì)在登錄的時(shí)候進(jìn)行賬號(hào)的校驗(yàn),而我遇到的問題說明只有這層校驗(yàn)是不能規(guī)避問題,這里給一個(gè)建議的方法:在服務(wù)端(Server)能夠拿到用戶id的關(guān)鍵(解釋:比喻事物的重要組成部分)接口(interface)添加一道校驗(yàn),給用戶相應(yīng)提示或引導(dǎo)用戶重新登錄。
接口(interface)更新的防護(hù)
這個(gè)問題的準(zhǔn)確意思是:在App的迭代中,后端接口(interface)肯定會(huì)增加更多的字段和提示等,如果開發(fā)過程中沒有提前做好這種預(yù)先的防護(hù),后期用戶在使用App的就會(huì)出現(xiàn)閃退和App崩掉的情況。常
熟微信開發(fā)模式所實(shí)現(xiàn)的功能,主要是在和微信號(hào)對(duì)話的時(shí)候用到。舉個(gè)遇到的栗子,我們最近提交訂單的時(shí)候新增了一個(gè)errorcode,前端因?yàn)闆]有事先做好這方面防護(hù),導(dǎo)致這種錯(cuò)誤發(fā)生時(shí),前端處理不了,應(yīng)用直接導(dǎo)致死機(jī)。針對(duì)這種問題一般開發(fā)是會(huì)主動(dòng)去考慮(consider)的,不過在這也提醒一下大家,還是去和開發(fā)溝通了解一下,以免之后出現(xiàn)類似問題。
多接口(interface)調(diào)用異常
問題的處理產(chǎn)品的設(shè)計(jì)中,很多頁(yè)面都會(huì)出現(xiàn),同時(shí)調(diào)用多個(gè)接口(interface)去獲取(obtain)數(shù)據(jù)(data)的情況。
常熟微信開發(fā)模式所實(shí)現(xiàn)的功能,主要是在和微信號(hào)對(duì)話的時(shí)候用到。這種時(shí)候一般出現(xiàn)問題呢,是因?yàn)槲覀兺酥霸擁?yè)面有調(diào)用其他接口,不斷的新增需求忽視要處理好和已有功能的關(guān)系。其實(shí)在產(chǎn)品設(shè)計(jì)中接口并行調(diào)用和串行調(diào)用都是存在的,但是這里需要告訴大家的是,要處理好接口數(shù)據(jù)(data)異?;蛘{(diào)用異常的時(shí)候?qū)τ脩舻奶崾竞鸵龑?dǎo)的處理。很多時(shí)候我們忽視這個(gè)問題導(dǎo)致提示彈框重疊,優(yōu)先級(jí)混亂,導(dǎo)致極差的用戶訪問體驗(yàn)。這類問題大多數(shù)在開發(fā)和測(cè)試(TestMeasure)過程中,會(huì)暴露出來,但是作為產(chǎn)品人員能夠事先做好這部分的考慮(consider)是不是更好。