package com.jc.jcfw.util import android.content.Context import android.content.SharedPreferences class SharedPreferencesHelper(context: Context, FILE_NAME: String?) { private val sharedPreferences: SharedPreferences private val editor: SharedPreferences.Editor init { sharedPreferences = context.getSharedPreferences( FILE_NAME, Context.MODE_PRIVATE ) editor = sharedPreferences.edit() } fun put(key: String?, `object`: Any) { if (`object` is String) { editor.putString(key, `object`) } else if (`object` is Int) { editor.putInt(key, `object`) } else if (`object` is Boolean) { editor.putBoolean(key, `object`) } else if (`object` is Float) { editor.putFloat(key, `object`) } else if (`object` is Long) { editor.putLong(key, `object`) } else { editor.putString(key, `object`.toString()) } editor.commit() } fun getSharedPreference(key: String?, defaultObject: Any?): Any? { return if (defaultObject is String) { sharedPreferences.getString(key, defaultObject as String?) } else if (defaultObject is Int) { sharedPreferences.getInt(key, (defaultObject as Int?)!!) } else if (defaultObject is Boolean) { sharedPreferences.getBoolean(key, (defaultObject as Boolean?)!!) } else if (defaultObject is Float) { sharedPreferences.getFloat(key, (defaultObject as Float?)!!) } else if (defaultObject is Long) { sharedPreferences.getLong(key, (defaultObject as Long?)!!) } else { sharedPreferences.getString(key, null) } } fun remove(key: String?) { editor.remove(key) editor.commit() } fun clear() { editor.clear() editor.commit() } fun contain(key: String?): Boolean { return sharedPreferences.contains(key) } val all: Map get() = sharedPreferences.all }