在Android中使用SharedPreferences儲存資料以實現資料共享
在Android中,我們可以使用SharedPreferences來儲存資料,以實現資料的共享。
(以一個使用者登入為例)
簡介:
首先我們需要了解一下SharedPreferences類,SharedPreferences是一個輕量級的儲存類,使用SharedPreferences儲存資料通常是講資料儲存在xml檔案,而xml檔案通常儲存位置在/data/data/<專案包名>/xx.xml。
1.獲取SharedPreferences物件
SharedPreferences sharedPreferences= getSharedPreferences("userlogin", Activity.MODE_PRIVATE);
通過以上獲取到SharedPreferences物件,userlogin是我用來儲存使用者登入成功時的使用者名稱的,即將登陸成功的使用者名稱儲存到userlogin.xml中,後續頁面有需要獲取當前登入使用者的使用者名稱時,而已通過使用SharedPreferences讀取userlogin.xml檔案即可。
注意:在獲取物件時,在getSharedPreferences方法中,xml名字只需要輸入檔名即可,不需要在加“.xml”,SharedPreferences會預設替你加上“.xml”。
上述是在Activity中獲取SharedPreferences物件,如果是fragment中,則需要使用以下:SharedPreferences sharedPreferences=getActivity().getSharedPreferences("userlogin", Context.MODE_PRIVATE);
2.寫入資料前需要獲取Editor物件
SharedPreferences.Editor editor=sharedPreferences.edit();
通過使用sharedpreferences物件呼叫edit()方法來獲取Editor物件。
3.寫入資料
利用editor物件寫入資料,sharedpreferences在xml檔案中儲存是以鍵值對的形式儲存資料,如下:<span style="white-space:pre"> </span>editor.putString("loginname", username);
editor.commit();
putString方法第一個引數是儲存的資料的key,第二個引數是要儲存的資料,當然我這裡是儲存string型別的資料,所以使用的putString,以此類推,在put之後需要再commit提交一下。
4.讀取資料
讀取資料之前同樣需要先獲取sharedpreferences物件,參照前面,不再贅述。在獲取sharedpreferences物件後,如下:
loginedname=sharedPreferences.getString("loginname", "");
同樣是根據鍵值對來獲取資料,第一個引數是要獲取的資料的key,第二個引數是預設值,預設為“”。
5.完整的讀取和寫入資料
寫入:
SharedPreferences sharedPreferences=
getSharedPreferences("userlogin", Activity.MODE_PRIVATE);
SharedPreferences.Editor editor=sharedPreferences.edit();
editor.putString("loginname", username);
editor.commit();
讀取:
SharedPreferences sharedPreferences=getActivity().getSharedPreferences("userlogin", Context.MODE_PRIVATE);
loginedname=sharedPreferences.getString("loginname", "");
相關推薦
在Android中使用SharedPreferences儲存資料以實現資料共享
在Android中,我們可以使用SharedPreferences來儲存資料,以實現資料的共享。 (以一個使用者登入為例) 簡介: 首先我們需要了解一下SharedPreferences類,Share
Android用SharedPreferences儲存資料實現註冊和登入功能(首次安裝預設開啟註冊,記住密碼)
註冊介面xml <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
Spark Streaming 之 consumer offsets 儲存到 Zookeeper 以實現資料零丟失
在 Spark Streaming 中消費 Kafka 資料的時候,有兩種方式: 1)基於 Receiver-based 的 createStream 方法 2)Direct Approach (No Receivers) 方式的 createDirectStream 方法
android 中 鍵值對 方式存取 資料 方式之 SharedPreferences
說道 資料存取, 那就要 持久化..(這裡不說File ,Sqlite ,哈哈,這些當然可以理解為 檔案.. ) SharedPreferences 檔案是使用 XML 格式來對資料進行管理的.
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
Android的SharedPreferences儲存,讀取和刪除資料
SharedPreferences類是一個輕量級的儲存類,特別適合用於儲存軟體配置引數。使用SharedPreferences儲存資料,其背後是用xml檔案存放資料,檔案存放在/data/data/&
【Android面試】(一):Android中activity儲存狀態和資料到底該在哪個方法中進行
今天接到一個電面,途中面試官問到一個問題,如果一個activity在後臺的時候,因為記憶體不足可能被殺死,在這之前如果想儲存其中的狀態資料,比如說客戶填的一些資訊之類的,該在哪個方法中進行。 我聽到的第一反應就是說:在onPause方法中進
看得見的資料結構Android版之表的陣列實現(資料結構篇)
零、前言: 一講到裝東西的容器,你可能習慣於使用ArrayList和陣列,你有想過ArrayList和陣列的區別嗎? Java的類起名字都不是隨便亂起的,一般前面是輔助,後面是實質:ArrayList = Array + List Array就是陣列,List便是表結構,ArrayList即陣列實現的
測試技能:在oracle中自用儲存過程進行測試資料構造
一、實踐 –迴圈賦值 declare i integer; –定義變數 begin i := 101; loop /* 插入資料 */ insert into emp (EMP_ID, E_ID, UM_ID, NAME, BIRTHDAY, A
Linux環境下在docker中配置Oracle資料庫並實現資料持久化
一 CentOs安裝docker 前置條件: 64-bit 系統 kernel 3.10+ 作者以下操作皆在root使用者下進行 1.檢查核心版本,返回的值大於等於3.10即可。 # uname -r 2.確保yum是最新的 # yum up
android 中okhttp post請求傳遞json資料
public final static int CONNECT_TIMEOUT = 60; public final static int READ_TIMEOUT = 100;
Android開發入門之採用ListView實現資料列表顯示
再次用到上一篇寫過的db工程, activity_main.xml: <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://s
Android通過介面回撥來實現資料更新(Kotlin版)
最近開發一個專案,用的是kotlin,本人kotlin水平有限,還請諒解,需要在fragment修改資料,然後更新到activity中,我使用介面回撥來完成這個需求。 先上一張圖來看一下 修改完暱稱,不僅要在fragment裡更新資料,還要同步更新act
【String.xml】修改Android中strings.xml檔案, 動態改變資料
有些朋友可能會動態的修改Android中strings.xml檔案中的值,在這裡給大家推薦一種簡單的方法。strings.xml中節點是支援佔位符的,如下所示: <string name="data">整數型:%1$d,浮點型:%2$.2f,字串:%3$s&
SharedPreferences儲存各種型別的資料
/** * 專門訪問和設定SharePreference的工具類, 儲存和配置一些設定資訊 */ public class PrefUtils { private static final S
Android中activity之間如何傳遞Hashmap資料
我的使用場景是當一個頁面需頁面中的listview中的hashmap的資料時要另一個,就要用到了傳遞hashmap資料。 在傳送方,我的程式碼是這樣的: package cn.oddcloud.ww
Android基於bmob後端雲實現資料讀取
最近在上手一個app作為練手,是關於失物招領的,其中要實現的一個功能是從雲端讀取資料展示在app的listview當中,其實這個功能挺常見的,不過這裡還是拿來分享一下,主要介紹我解決的過程以及思路。 我認為要注意的! 1.Fragment中如何findbyview? 2
運用fastjson+SharedPreferences 儲存、讀取複雜資料
儲存資料: SharedPreferencesUtil.putString(getActivity(), getString(R.string.faxian_title), JSON.toJSONString));//tmpSubject是一個複雜的類 讀