前兩天與同事聊到產(chǎn)品思維時提到,做為一個產(chǎn)品人,當(dāng)面對一個 app 或者要去開發(fā)一個 app 產(chǎn)品時,他看到的可能就不是 UI,不是設(shè)計,而是整個 app 在不同狀態(tài)下的響應(yīng)模式,這就是產(chǎn)品人的一種技能。
說回 app 的狀態(tài), 可以抽象為數(shù)據(jù)+ UI 兩種元素的狀態(tài)變化加上相互影響。數(shù)據(jù)決定了 UI 的狀態(tài),UI 決定了數(shù)據(jù)的傳達。在下來的整理中,根據(jù) app 的生命周期,將整理 app 常見的狀態(tài),并附上一些案例加以說明。
首次啟動
當(dāng)用戶第一次打開 app 時的狀態(tài),一般情況下:
- 直接進入 app
- 用戶引導(dǎo)
用戶引導(dǎo)用于跟用戶介紹 app ,或者是基本的教程等。

初始狀態(tài)
如果用戶打開過 app 并且已經(jīng)加載過數(shù)據(jù),那么初始狀態(tài)一般都是直接加載這些舊的數(shù)據(jù)。

空數(shù)據(jù)
如果用戶首次打開,或者因為網(wǎng)絡(luò)問題之前沒有打開過,那么就會進入到空數(shù)據(jù)狀態(tài)。

加載中
網(wǎng)絡(luò)連接良好的情況下,app 將請求網(wǎng)絡(luò)并加載內(nèi)容。
加載完成(內(nèi)容填充)
網(wǎng)絡(luò)請求結(jié)束后,加載完成狀態(tài),這時要去替換舊的數(shù)據(jù)。

分頁處理
對于常見的數(shù)據(jù),我們都會做分頁處理,而不是直接一次性把所有的數(shù)據(jù)都請求并加載完成。

錯誤狀態(tài)
由于網(wǎng)絡(luò)錯誤,或者一些其他原因,網(wǎng)絡(luò)請求沒有成功的情況下要考慮 app 的錯誤反饋。
正確操作時的用戶反饋(完成狀態(tài))
除了加載數(shù)據(jù),app 請求數(shù)據(jù)并且得到響應(yīng)后可以通過一些提示去告知用戶狀態(tài)。

從暫停中恢復(fù)
這在游戲中比較常見,當(dāng)用戶把程序放后臺時,app 應(yīng)該保存這時候的數(shù)據(jù)及狀態(tài),方便 app 重新恢復(fù)時延續(xù)狀態(tài)。
臨界值、邊緣條件
最后還有一個常見的狀態(tài)是 app 要去處理邊緣條件下的數(shù)據(jù)展示狀態(tài),例如在一個輸入框中輸入超過限定的數(shù)值時的提示等。
