1. 程式人生 > >android應用儲存使用者資訊,map集合與使用者物件儲存

android應用儲存使用者資訊,map集合與使用者物件儲存

場景描述:使用者在登入之後,伺服器返回使用者的基本資訊,比如使用者的ID,Token等資訊,這時,我們需要將使用者的資訊進行儲存,以方便在其他頁面進行呼叫。使用SharedPrefrences對整個使用者物件進行儲存。 User 屬性nickName、userHead、isLogin 
     //儲存使用者資訊
     private void saveUserInfo(User user){
          SheredPrefrences userInfoSp = Context.getSharedPrefrences(“user_info”,MODE_PRIVATE);
          userInfoSp.edit().putString(“nickname”,user.getNickName())
                                    .putString(“user head”,user.getUserHead())
                                    .putBoolean(“slogan”,user.getIsLogin()).commit();
     }
     //獲取使用者資訊
     private HashMap<String Object> getUserInfo(){
          SheredPrefrences userInfoSp = Context.getSharedPrefrences(“user_info”,MODE_PRIVATE);     
          return (HashMap<String Object>)userInfoSp.getAll()
     }
     //清除使用者資訊
     private void clearUserInfo(){
          SheredPrefrences userInfoSp = Context.getSharedPrefrences(“user_info”,MODE_PRIVATE);     
          userInfoSp.editor().clear().commit();
     }

這樣,很簡單的,就能儲存和獲取使用者資訊
SharedPreferences 與 Gson 一起使用能方便的儲存物件和集合
     private void saveUserInfo(Context context , User user){
          SharedPrefrences sp = PrefrenceManager.getDefaultSharedPrefrences(context)
          sp.editor().putString(“user_info”,new Gson().toJson(user)).commit();//講使用者的資訊儲存成Json格式
     }
     //獲取使用者物件
     private User getUserInfo(){
          SharedPrefrences sp = PrefrenceManager.getDefaultSharedPrefrences(context)
          String userInfo = sp.getString(“user_info” , null);
          if(userInfo != null){
               return new Gson().fromJson(userInfo , User.class);     
          }
          return null;
     }

這樣子,使用SharedPrefrences和Gson儲存使用者資訊也完成了。