iOS程序員眼中的首次使用產(chǎn)品體驗
產(chǎn)品懂技術(shù),就像流氓會武術(shù)。技術(shù)會點產(chǎn)品,就像會武術(shù)的人去耍流氓
一、前言
首先想說一下為什么寫這篇文章:
《啟示錄》這本書曾提到:如果開發(fā)的產(chǎn)品沒有市場價值,那么無論開發(fā)團隊多么優(yōu)秀也無濟于事。那么同樣的,在我們程序員費盡周折抓取各種數(shù)據(jù),嘗試不同的技術(shù)方案只為了讓冷啟動快0.1秒的同時,可能在產(chǎn)品層面稍微一個小技巧就能讓用戶感覺這1秒過得更快,那我們程序員進行代碼層級的優(yōu)化之前是不是最好思考一下產(chǎn)品層面的優(yōu)化呢?
有數(shù)據(jù)統(tǒng)計,App安裝前三天,平均流失77%的日活躍用戶。因為新用戶是沒有耐心的,他不知道你的產(chǎn)品能否給他們帶來便利,提高效率,產(chǎn)生價值,帶著這種懷疑的態(tài)度使用App過程中,可能一丁點的的不爽、彷徨就導(dǎo)致用戶卸載了App。就好比相親,如果外在的皮囊在第一時間讓對方感到不適,那么無論你的內(nèi)在的靈魂多么有趣也是無濟于事(除非你是個會吹牛的程序員?)。換個角度來講,可能整個App的產(chǎn)品設(shè)計很棒,代碼設(shè)計和優(yōu)化也做到了極致,但是因為用戶第一次使用感覺使用起來太復(fù)雜,跟預(yù)期相差太遠,就導(dǎo)致用戶還沒體驗到核心模塊就卸載了App。
你只有一次機會給別人留下好印象,同樣的,近年來手機、電腦、無人機等數(shù)碼產(chǎn)品也越來越重視開箱體驗,比如可以研究下錘子手機的包裝設(shè)計和內(nèi)置配件的排列布局,也是通過這樣的第一視覺沖擊提供更好的用戶體驗。
除了給用戶更好的第一印象,也給用戶一個“強行裝逼”的機會,誘導(dǎo)發(fā)朋友圈也會帶來更好的傳播效果。
可能有人會覺得,“產(chǎn)品?工作的一部分就是優(yōu)化以上所講的用戶體驗,程序?寫好代碼就行了”。然而在有些產(chǎn)品和設(shè)計上的原生樣式規(guī)則,程序員是應(yīng)該比產(chǎn)品和設(shè)計師更清楚的。
比如有次設(shè)計師提了個需求:要求原生彈框的確定設(shè)置為加粗Medium的顏色,取消設(shè)置為普通regular顏色。當(dāng)然,這個需求站在設(shè)計師的角度來講是合情合理的:90%的人(用戶)都是右撇子,產(chǎn)品本身具有引導(dǎo)和期望性質(zhì)的button放在右邊,同時顏色上更醒目。
比如美團的推廣美團支付的這個彈框
但問題是美團的彈框是自定義的,對于原生的Alert彈框按鈕類型而言,有三個枚舉值:
- UIAlertActionStyleDefault:Apply the default style to the action’s button.
- UIAlertActionStyleCancel: Apply a style that indicates the action cancels the operation and leaves things unchanged.
- UIAlertActionStyleDestructive:Apply a style that indicates the action might change or delete data.
不同style對應(yīng)的顏色
蘋果原生的 一些彈框,cancel性質(zhì)的按鈕也都是加粗的
從代碼實現(xiàn)層面來講,無非是換一下按鈕枚舉值,但是違反了蘋果的官方規(guī)范可能后造成意想不到的問題,比如iOS11升級后,發(fā)現(xiàn)項目中有這樣一個問題。
如果不夠明顯的話可以與??修改bug后效果進行比較。
這是 UITableViewCell 對應(yīng)的一個 UITableViewRowAction,其對應(yīng)的style也有三個:
- UITableViewRowActionStyleDefault:Apply the default style to the button.
- UITableViewRowActionStyleDestructive:Equal to the default style.
- UITableViewRowActionStyleNormal:Apply a style that reflects standard non-destructive actions.
后來查明原因就是之前的代碼把刪除對應(yīng)的style設(shè)置成了UITableViewRowActionStyleNormal,改為UITableViewRowActionStyleDestructive才得以修復(fù)該問題,因為執(zhí)行刪除后,數(shù)據(jù)源及cell已進行了刪除更新操作,但是UITableViewRowAction對應(yīng)的動畫效果卻是UITableViewRowActionStyleNormal,因此會造成上面的問題。
但是這個手誤是在iOS11 新增的交互動效上才暴露出來的,在之前的系統(tǒng)上是沒有問題的,因此我拒絕了那位設(shè)計師,確實可能會埋下一些隱患,除非整個App 的 Alert 風(fēng)格都改為自定義。
二. 各種權(quán)限彈框的處理邏輯
在互聯(lián)網(wǎng)上半場,很多不精細(xì)的產(chǎn)品中存在這樣一個問題:用戶首次下載后咔咔咔三四個權(quán)限彈框接連彈出,這就好像你跟女神第一次見面,對方還沒說話,你就笑嘻嘻地問:“妹妹家有幾口?從哪里來又到哪里去???可以加個微信么?要不要考慮做我女朋友???”
1. WLAN與蜂窩權(quán)限
iOS10以后,由于工信部的要求,在國行手機上用戶首次下載App,需要向用戶請求網(wǎng)絡(luò)權(quán)限,針對該彈框,有以下幾個問題:
- 開發(fā)者不能判斷該彈框的狀態(tài),也不能主動觸發(fā)該權(quán)限的請求,在蘋果爸爸面前,依舊是“人為刀俎,我為魚肉”。
- 蘋果官方的bug:畢竟是臨時改需求,有時候第一次下載該彈框沒有彈出,導(dǎo)致App一直不能聯(lián)網(wǎng),App對應(yīng)的權(quán)限列表也沒有WLAN和蜂窩權(quán)限,目前在iOS11上測試多次,目測該bug已修復(fù)。
- 有的用戶習(xí)慣性拒絕,小手一抖就不允許訪問網(wǎng)絡(luò)了。
蘋果是爸爸,可用戶也是大爺啊,針對以上問題,常規(guī)的處理方式是這樣的:
在檢測到?jīng)]有網(wǎng)絡(luò)的前提下(無網(wǎng)絡(luò)訪問權(quán)限/手機確實沒有聯(lián)網(wǎng)),告知用戶可能是因為網(wǎng)絡(luò)權(quán)限問題導(dǎo)致的無網(wǎng)絡(luò)狀態(tài),并向用戶提供解決方案:
- 給出設(shè)置路徑,讓用戶手動到達路徑并更改網(wǎng)絡(luò)權(quán)限
- 點擊按鈕直接跳轉(zhuǎn)到該 App 設(shè)置界面修改網(wǎng)絡(luò)權(quán)限
我個人一般是使用第二種,因為一般用戶手機里面都有很多App,手動查找太費勁了,但是微信卻是讓用戶手動去查找,這點我不太明白,如哪位大佬看透還望告之(QQ的大部分權(quán)限是直接跳轉(zhuǎn)的)
但這里還有一個硬傷:各種權(quán)限修改之后,再次進入 App,就會回到首頁,相當(dāng)于進行了一次冷啟動。至于這個現(xiàn)象的原因,個人猜測:假如現(xiàn)在正在使用麥克風(fēng)錄音,用戶卻進入設(shè)置界面關(guān)掉了麥克風(fēng)權(quán)限。你讓蘋果爸爸怎么處理這個尷尬的局面?
對于特殊情況,比如該 App 沒有彈出網(wǎng)絡(luò)權(quán)限彈框,對應(yīng)的設(shè)置界面也沒有網(wǎng)絡(luò)權(quán)限,一下是各種偏方:
- 多進行幾次打開、殺死App的操作,在這過程中有一定幾率會彈出網(wǎng)絡(luò)權(quán)限彈框
- 先進入設(shè)置界面隨便關(guān)掉一個App的網(wǎng)絡(luò)權(quán)限,然后再進入目標(biāo)App設(shè)置界面,對應(yīng)的網(wǎng)絡(luò)網(wǎng)絡(luò)權(quán)限就顯示出來了
簡單粗暴的重啟一定好使??!
即刻的無網(wǎng)絡(luò)處理方式
2. App中重要且緊急的權(quán)限獲取
比如導(dǎo)航類產(chǎn)品的地理位置權(quán)限、修圖軟件的相冊權(quán)限、時間管理類軟件的日歷權(quán)限。針對這種“缺了你不行”特征的App,除了網(wǎng)絡(luò)權(quán)限無法控制之外,其他所有權(quán)限最好先不要觸發(fā),能延遲盡量要延遲,只留這一個權(quán)限選擇,最好在給出一定的提示:
美圖秀秀 & 餓了么
3. 其他重要不緊急的權(quán)限獲取
- 比如IM聊天軟件中麥克風(fēng)權(quán)限,普通工具類App中相冊權(quán)限(比如針對換頭像這種功能)。用戶需要正常進行這些操作需要對應(yīng)的權(quán)限,但是不應(yīng)該在App 第一次啟動的時候就立刻去請求權(quán)限。
- 對于這種重要不緊急的權(quán)限,一般都采取懶加載的方式,也就是等到用戶探索到這個功能的時候,主動觸發(fā)去發(fā)送請求。在用戶暫時還不需要這個信息的時候,千萬別給他提供!就像平時的待人接物一樣,要給對方想要的,而不是你認(rèn)為他想要的。
微博中用戶到分享界面后需要手動觸發(fā)權(quán)限獲取
MONO中的push權(quán)限獲取率肯定比其他直接彈出來的要高
三. 登錄相關(guān)的優(yōu)化
1. 免登陸邏輯
登錄注冊功能本身就是對用戶的一個限制,在用戶還未體驗到你產(chǎn)品價值的時候,卻讓用戶提交個人信息進行注冊,這顯然是不合適的。
因此,除非是即時通訊類似的與賬號強關(guān)聯(lián)的App,其他App最好都要進行免登陸操作:先向用戶展示一部分基本的功能,當(dāng)用戶觸發(fā)了與賬號強關(guān)聯(lián)的操作(比如評論、買單等),再去提示用戶進行登錄注冊操作
之前做過一個工具類App,用戶剛下載就要進行登錄注冊操作,統(tǒng)計數(shù)據(jù)顯示在注這部分流失掉的用戶為10%之多!
2. 登錄相關(guān)的優(yōu)化
如果用戶之前在該手機登陸過,在不需要考慮安全前提下,可以給用戶提供更便捷的登錄方式,或者對用戶進行提示(諸多第三方登錄選擇,可能用戶隨便點了一個,下次就忘記了)
新浪微博 & 輕聽英語
該功能一般使用UDID來實現(xiàn),關(guān)于這個有個小插曲,在 iOS 10.3 版本的 beta 2 – beta 5版本中,keychain 中的數(shù)據(jù)會因為 APP 的刪除而刪除,當(dāng)時趕緊找其他替代方案,調(diào)研了知乎、領(lǐng)英之后,發(fā)現(xiàn)用的不是簡單的keyChain,而是 iOS9 推出的SFSafariViewController,這個可以將密碼、共享Cookie、iCloud Web表單數(shù)據(jù)、證書等存儲在系統(tǒng)里面,與 iCloud keyChain 進行綁定。最后代碼寫的差不多了,發(fā)現(xiàn) 10.3 beta 6 版本,keychain 又可以繼續(xù)使用(10.3正式版也是如此)。
在登錄注冊的整個過程中,盡可能地減少用戶的操作(最開始有信電話是這樣做的,后來滴滴改版也變成這樣;AppleID 新設(shè)備登錄需要的驗證碼也是這樣的):
- 比如用戶輸入11位的電話號碼后經(jīng)過正則判斷有效后,直接觸發(fā)獲取驗證碼按鈕的操作,光標(biāo)進入驗證碼輸入框。
- 輸入短信驗證碼后直接觸發(fā)登錄操作。
- 也就是在整個過程中,用戶只需要輸入電話號碼和驗證碼,不需要其他任何切換的操作。
其他的諸如格式自動檢測、小屏幕適配、用戶手感上的優(yōu)化在此不再贅述。
四. 引導(dǎo)用戶了解核心功能的使用
1. 用戶下載之前
一般情況下,用戶通過社交媒體、產(chǎn)品運營活動或者App Store接觸到產(chǎn)品,通過這個首次接觸,會對產(chǎn)品建立一個初步認(rèn)識,如果在這些途徑中,你所描述的產(chǎn)品核心價值成功打動了用戶,并進行下載操作。
廣告運營 & App Store 推廣圖 就精準(zhǔn)地描述了產(chǎn)品的核心價值
2. 用戶下載之后初步使用
《用戶體驗要素》這本書提出:最底層的架構(gòu)是用戶需求和網(wǎng)站目標(biāo)一樣,推動新手引導(dǎo)設(shè)計的原因也有兩個:用戶需求和產(chǎn)品目標(biāo)。對于新手引導(dǎo)來說,用戶需求是快速、愉悅地學(xué)習(xí)使用產(chǎn)品。產(chǎn)品目標(biāo)是將新手用戶快速轉(zhuǎn)化為活躍度高、黏著度高的忠實用戶。
新手引導(dǎo)要維持這兩方面的平衡,根據(jù)各自產(chǎn)品特性進行不同的引導(dǎo)操作:
- 內(nèi)容社區(qū)類產(chǎn)品,開始用戶是沒有數(shù)據(jù)的,因此要首先給用戶展示內(nèi)容定制界面
- 工具、游戲類 App 就要引導(dǎo)用戶成功使用一次核心操作,在引導(dǎo)的過程中最好完成一次階段性流程就給予用戶一定的鼓勵
引導(dǎo)頁與App Store 推廣圖類似,在此不做討論
MONO的內(nèi)容定制 & Things 新手引導(dǎo)
狼人殺的新手引導(dǎo)
在這個過程中最好對用戶行為進行更細(xì)化的統(tǒng)計并追蹤結(jié)果,根據(jù)各種統(tǒng)計數(shù)據(jù)分析用戶流失的原因,從而不斷優(yōu)化引導(dǎo)的流程。
在第一次打開App或者用戶第一次登錄成功后,可能要下載一些歷史數(shù)據(jù)(比如微信登錄成功后要下載部分歷史消息、通訊錄數(shù)據(jù)),技術(shù)可以在這方面盡可能地做優(yōu)化;設(shè)計層面也可以考慮增加一些動效,讓用戶在心理上感覺時間過得很快(如果亞馬遜網(wǎng)頁下載速度慢 1 秒鐘,1 年就有可能損失 16 億美元;如果谷歌提交搜索結(jié)果的時間延遲 0.4 秒,一天的搜索量就會減少 800 萬次;好吧,這個浮躁的快節(jié)奏世界? )。
當(dāng)然,在用戶完成第一次使用App之后,運營方面也可以做一些諸如電話回訪、短信通知紅包下發(fā)、push推送活動信息等喚醒用戶操作。
五. 寫在最后
產(chǎn)品懂技術(shù),就像流氓會武術(shù)。技術(shù)會點產(chǎn)品,就像會武術(shù)的人去耍流氓???。
雷軍曾經(jīng)說過:如果寫代碼沒有寫詩的感覺,那就轉(zhuǎn)行做產(chǎn)品經(jīng)理吧!雖然確實沒有寫詩的感覺,但是有時候把用戶的感覺納入進去,對每一個小的功能點都保持著敬畏感,把人作為中心點去考慮而非代碼,好吧,我編不下去了??……工頭喊我搬磚了。
感謝閱讀。
作者:si1ence
來源:http://www.jianshu.com/p/689ea60d3352
本文由 @si1ence 授權(quán)發(fā)布于人人都是產(chǎn)品經(jīng)理,未經(jīng)作者許可,禁止轉(zhuǎn)載。
題圖來自unsplash,基于CC0協(xié)議
- 目前還沒評論,等你發(fā)揮!