1. 程式人生 > >安卓開發封裝SharedPreferences類

安卓開發封裝SharedPreferences類

安卓開發中會常常使用到SharedPreferences儲存方式來儲存一些控制元件的狀態或者是密碼資訊,因此我們就需要

對SharedPreferences類進行封裝,一勞永逸,也可以簡化程式碼,使程式碼變得簡潔。

工具類的封裝-SharedPreferences封裝

下面是程式碼

package com.gougoucompany.clarence.smartbutler.utils;

import android.content.Context;
import android.content.SharedPreferences;

/**
 * 專案名:   SmartButler
 * 包名:     com.gougoucompany.clarence.smartbutler.utils
 * 檔名:   ShareUtils
 * 建立時間: 2018/4/28 8:54
 * 英文名:   Clarence
 * 中文名:   習偉博
 * 描述:
 * SharedPreference封裝:
 * 1.定義存取方式get/put
 * 2.明確資料型別Int/String/Boolean
 * 3.定義刪除功能 單個/全部

 */

public class ShareUtils {

    public static final String NAME = "config";

    //鍵 值
    public static void putInt(Context mContext, String key, int value){
        SharedPreferences sp = mContext.getSharedPreferences(NAME, Context.MODE_PRIVATE);
        sp.edit().putInt(key ,value).commit();
    }

    public static void putString(Context mContext, String key, String value){
        SharedPreferences sp = mContext.getSharedPreferences(NAME, Context.MODE_PRIVATE);
        sp.edit().putString(key ,value).commit();
    }

    public static void putBoolean(Context mContext, String key, boolean value){
        SharedPreferences sp = mContext.getSharedPreferences(NAME, Context.MODE_PRIVATE);
        sp.edit().putBoolean(key ,value).commit();
    }

    //鍵 預設值
    public static String getString(Context mContext, String key, String defValue){
        SharedPreferences sp = mContext.getSharedPreferences(NAME, Context.MODE_PRIVATE);
        return sp.getString(key, defValue);
    }

    public static int getInt(Context mContext, String key, int defValue){
        SharedPreferences sp = mContext.getSharedPreferences(NAME, Context.MODE_PRIVATE);
        return sp.getInt(key, defValue);
    }

    public static boolean getBoolean(Context mContext, String key, boolean defValue){
        SharedPreferences sp = mContext.getSharedPreferences(NAME, Context.MODE_PRIVATE);
        return sp.getBoolean(key, defValue);
    }

    //刪除單個
    public static void deleShare(Context mContext, String key){
        SharedPreferences sp = mContext.getSharedPreferences(NAME, Context.MODE_PRIVATE);
        sp.edit().remove(key).commit();
    }

    //刪除全部鍵值對資訊
    public static void deleAll(Context mContext){
        SharedPreferences sp = mContext.getSharedPreferences(NAME, Context.MODE_PRIVATE);
        sp.edit().clear().commit();
    }

}