前兩天與同事聊到產(chǎn)品思維時(shí)提到,做為一個(gè)產(chǎn)品人,當(dāng)面對(duì)一個(gè) app 或者要去開發(fā)一個(gè) app 產(chǎn)品時(shí),他看到的可能就不是 UI,不是設(shè)計(jì),而是整個(gè) app 在不同狀態(tài)下的響應(yīng)模式,這就是產(chǎn)品人的一種技能。
說(shuō)回 app 的狀態(tài), 可以抽象為數(shù)據(jù)+ UI 兩種元素的狀態(tài)變化加上相互影響。數(shù)據(jù)決定了 UI 的狀態(tài),UI 決定了數(shù)據(jù)的傳達(dá)。在下來(lái)的整理中,根據(jù) app 的生命周期,將整理 app 常見的狀態(tài),并附上一些案例加以說(shuō)明。
首次啟動(dòng)
當(dāng)用戶第一次打開 app 時(shí)的狀態(tài),一般情況下:
- 直接進(jìn)入 app
- 用戶引導(dǎo)
用戶引導(dǎo)用于跟用戶介紹 app ,或者是基本的教程等。
初始狀態(tài)
如果用戶打開過 app 并且已經(jīng)加載過數(shù)據(jù),那么初始狀態(tài)一般都是直接加載這些舊的數(shù)據(jù)。
空數(shù)據(jù)
如果用戶首次打開,或者因?yàn)榫W(wǎng)絡(luò)問題之前沒有打開過,那么就會(huì)進(jìn)入到空數(shù)據(jù)狀態(tài)。
加載中
網(wǎng)絡(luò)連接良好的情況下,app 將請(qǐng)求網(wǎng)絡(luò)并加載內(nèi)容。
加載完成(內(nèi)容填充)
網(wǎng)絡(luò)請(qǐng)求結(jié)束后,加載完成狀態(tài),這時(shí)要去替換舊的數(shù)據(jù)。
分頁(yè)處理
對(duì)于常見的數(shù)據(jù),我們都會(huì)做分頁(yè)處理,而不是直接一次性把所有的數(shù)據(jù)都請(qǐng)求并加載完成。
錯(cuò)誤狀態(tài)
由于網(wǎng)絡(luò)錯(cuò)誤,或者一些其他原因,網(wǎng)絡(luò)請(qǐng)求沒有成功的情況下要考慮 app 的錯(cuò)誤反饋。
正確操作時(shí)的用戶反饋(完成狀態(tài))
除了加載數(shù)據(jù),app 請(qǐng)求數(shù)據(jù)并且得到響應(yīng)后可以通過一些提示去告知用戶狀態(tài)。
從暫停中恢復(fù)
這在游戲中比較常見,當(dāng)用戶把程序放后臺(tái)時(shí),app 應(yīng)該保存這時(shí)候的數(shù)據(jù)及狀態(tài),方便 app 重新恢復(fù)時(shí)延續(xù)狀態(tài)。
臨界值、邊緣條件
最后還有一個(gè)常見的狀態(tài)是 app 要去處理邊緣條件下的數(shù)據(jù)展示狀態(tài),例如在一個(gè)輸入框中輸入超過限定的數(shù)值時(shí)的提示等。