鍍金池/ 問(wèn)答/Android/ 應(yīng)用開發(fā)中的用戶登陸狀態(tài)保存方法,用靜態(tài)變量?

應(yīng)用開發(fā)中的用戶登陸狀態(tài)保存方法,用靜態(tài)變量?

調(diào)用登陸接口成功時(shí),比如服務(wù)器返回一個(gè)token,很多接口都需要帶上一個(gè)這個(gè)token,這個(gè)token除了持久化保存起來(lái),在應(yīng)用生命周期中用靜態(tài)變量來(lái)持有嗎?

總感覺代碼這樣寫都很怪,用句時(shí)髦的話來(lái)說(shuō)就是“不優(yōu)雅”,每次請(qǐng)求都時(shí)候都去找下這個(gè)靜態(tài)變量,但是我也沒(méi)有別的什么更合適的方法。

想問(wèn)下大家也都是這樣來(lái)處理的嗎?

補(bǔ)充:
我沒(méi)有排除持久化,持久化是必須的,我糾結(jié)的是:從持久化的數(shù)據(jù)中取出,然后用靜態(tài)變量來(lái)接收感覺做法不太好。這是無(wú)法避免的嗎?不停的傳遞肯定是不可能的!

回答
編輯回答
紓惘

為什么不使用SharedPreferences來(lái)保存呢?

2017年10月4日 11:08
編輯回答
還吻

靜態(tài)變量不是不行,不過(guò)應(yīng)用有銷毀再重建的可能,那么靜態(tài)變量可能就會(huì)重置,所以在這些時(shí)候需要保存后在重建的位置取出,否則應(yīng)用被系統(tǒng)或者什么360之類的安全應(yīng)用銷毀時(shí)拿不到值,或者直接銷毀了重新登錄。

好的方法的話,你不進(jìn)行持久化,那么就只有內(nèi)存存儲(chǔ),不用靜態(tài)那么使用的時(shí)候就需要不停的轉(zhuǎn)遞更加麻煩。

2018年3月27日 22:37