1. 程式人生 > >Android 中使用SharedPreferences儲存通用物件

Android 中使用SharedPreferences儲存通用物件

由於最近開發的專案在趕進度實在是太忙了 ,也沒時間去更新部落格文章,今天寫寫關於在實際開發中使用
使用SharedPreferences 來儲存通用的物件的方法.對大對數開發這來說使用SharedPreferences來存
儲一般的物件都會操作,但是有時候在實際的開發中需要儲存的物件不是簡單的物件時,例如儲存一個javabean
一個集合等等,這該如何正確使用SharedPreferences呢?今天我就寫寫使用SharedPreferences如何操作.話不多說了直接上程式碼…………

/**
* 建立單例的SharedPreferences
*/
 private static SharedPreferences sp = null
; public static SharedPreferences getSp(String path) { sp = Application.getContextObject().getSharedPreferences(path, MODE_PRIVATE); return sp; }
  /**
     * 
     * @param path 儲存的路徑
     * @param key  key值
     * @param obj 儲存的物件
     */
**通過該方法之前你需要在你的專案中引入Gson,儲存的物件需要實現序列化Serializable介面,將需要的儲存的物件通過Gson將儲存的物件轉化為String儲存,在通過獲取字串的方式獲取出來一個String的值為str**
    public
static void putObject(String path, String key, T t) { getSp(path).edit().putString(key, new Gson().toJson(t)).commit(); }

得到的str再通過Gson轉化為儲存之前的物件,其中T是泛型,就是儲存之間的object的資料型別

      T t =new Gson().fromJson(str, new TypeToken<T>() {}.getType());

這樣就可完美的實現使用SharedPreferences 儲存通用的物件了,是不是很簡單,希望這篇文章對你有所幫助.希望能幫忙點個贊哦,謝謝………

相關推薦

Android 使用SharedPreferences儲存通用物件

由於最近開發的專案在趕進度實在是太忙了 ,也沒時間去更新部落格文章,今天寫寫關於在實際開發中使用 使用SharedPreferences 來儲存通用的物件的方法.對大對數開發這來說使用SharedPr

Android使用SharedPreferences儲存物件

1、將要儲存的物件進行序列化實現implements Serializable介面 2、給序列化介面配置ID serialVersionUID,如果沒有配置ID後面版本物件如做改變,將和以前版本衝突,ID要在工程中唯一,可以使用eclipse自動生成 3

androidSharedPreferences儲存集合物件

由於getSharedPreferences是依賴於上下文環境的,即為context,無論哪個類中,一定要通過activity類的context才能呼叫。    在類繼承了activity中使用時。       宣告一個 private Context context;        可以在oncreat

androidSharedPreferences 讀取不到數據的問題

由於 ppoe string log 不同的 nbsp bsp edit andro 在兩個不同的 Activity中,A中SharedPreferences保存了數據,在A中可以讀取到,但是在 B中卻讀取不到了,一直是空值,好是不爽,由於是按照書本上的例子寫的, 怎麽

AndroidSharedPreferences.Editor的apply()與commit()方法

寫在前面   今天在寫 LifeTips App 時,涉及到儲存使用者調節的螢幕亮度時,使用了 SharedPreferences,及 SharedPreferences.Editor,結果 Android Studio 出現了”黃色的感嘆號“(本人有強迫症,不喜歡任何 warnin

MVP SharedPreferences 儲存第一次登陸

** SharedPreferences 儲存第一次登陸 ** //上下文獲取shp 引號config mode 私有屬性 返回值 提上去 sp = context.getSharedPreferences("config", Context.M

AndroidIntent傳遞類物件的方法一(Serializable)

Activity之間通過Intent傳遞值,支援基本資料型別和String物件及它們的陣列物件byte、byte[]、char、char[]、boolean、boolean[]、short、short[]、int、int[]、long、long[]、float、

AndroidSharedPreferences儲存資料實現註冊和登入功能(首次安裝預設開啟註冊,記住密碼)

註冊介面xml <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"

Android SharedPreferences跨應用讀取資料的

http://download.csdn.net/download/gcsdn2000/4161520 儲存 package edu.cczu.SimplePreference; import android.app.Activity; import android.c

android儲存資料方法

android中儲存資料的方式有 1,雲端儲存(網路儲存), 2,本地SharedPreferences儲存少量資料, 3,本地檔案流儲存, 4,本地資料庫儲存。 下面講的第2,3,4點; 2.SharedPreferences為程式持久化儲存少量值: <span s

Android使用SharedPreferences儲存HashSet資料不能更新成功

android 使用SharedPreferences儲存HashSet的時候要注意資料不能寫入進去的問題: 不能更新的問題就出在getStringSet的object和putStringSet的ob

AndroidSharedPreferences儲存,讀取和刪除資料

SharedPreferences類是一個輕量級的儲存類,特別適合用於儲存軟體配置引數。使用SharedPreferences儲存資料,其背後是用xml檔案存放資料,檔案存放在/data/data/&

Android面試】(一):Androidactivity儲存狀態和資料到底該在哪個方法進行

        今天接到一個電面,途中面試官問到一個問題,如果一個activity在後臺的時候,因為記憶體不足可能被殺死,在這之前如果想儲存其中的狀態資料,比如說客戶填的一些資訊之類的,該在哪個方法中進行。         我聽到的第一反應就是說:在onPause方法中進

AndroidSharedpreferences 有時候獲取值不正確

前段時間和朋友看一個 launcher 中一個問題, 最後發現是 Sharedpreferences 在塞值後, 取出來的值並沒有發生變化,或者說是不正確吧 最後發現是 不在一個程序的原因, 所以這邊程序改,那邊程序按照平常的方式獲取資料是有問題的 可

Android的資料儲存一(檔案儲存SharedPreferences儲存)

一.檔案儲存 檔案儲存不對儲存的內容進行處理,適合用於儲存一些簡單的文字資料或二進位制資料。如果要儲存較為複雜的文字資料,就要定義一套自己的格式規範。 1.將資料儲存到檔案中 Context類中有一個 openFileOutput(String name, int mo

Android使用sqlite資料庫實現物件儲存

1。物件類 public class Student implements Serializable{ String name; String id; public Student(String name, String id) {

Android使用SharedPreferences儲存資料以實現資料共享

在Android中,我們可以使用SharedPreferences來儲存資料,以實現資料的共享。 (以一個使用者登入為例) 簡介: 首先我們需要了解一下SharedPreferences類,Share

android開發之SharedPreferences儲存物件

因為作者最近在做一個收藏的功能,涉及到了資料的儲存和讀取,又因為太懶,不想去使用ContentProvider,所以種種原因讓我選擇了使用SharedPreferences來儲存資料,但是儲存一條、兩條單獨的資料是可以的,但是要儲存物件!作者只能說咋搞!怕啥,一步一步的來嘛

Android使用Gson和SharedPreferences儲存物件

Android儲存檔案通常可以用SharedPreferences、SQLite、Content Provider和File,但是SharedPreferences只支援簡單的key-value, 通常,如果要儲存一個物件,可以先把它序列化,然後用輸入輸出流存進file檔案

安卓使用SharedPreferences儲存javaBean類物件

安卓中儲存檔案的方法有多種多樣的,現在說的一種就是在開發中經常用到的SharedPreferences。相信接觸過一段時間安卓開發的朋友都會使用基本用法。(就算不會用,百度一下也有很多普通的用法教程)。 SharedPreferences儲存資料是以鍵值對的方