From 7c51157a22c14e1005d5930210b78aba95735f58 Mon Sep 17 00:00:00 2001
From: Runt <qingingrunt2010@qq.com>
Date: Fri, 20 Dec 2024 06:40:32 +0000
Subject: [PATCH] Preferences代码优化

---
 libmvi/src/main/java/com/runt/open/mvi/base/BaseActivity.kt |  126 ++++++++++++++++++++++++++++-------------
 1 files changed, 86 insertions(+), 40 deletions(-)

diff --git a/libmvi/src/main/java/com/runt/open/mvi/base/BaseActivity.kt b/libmvi/src/main/java/com/runt/open/mvi/base/BaseActivity.kt
index 4076d40..ea95839 100644
--- a/libmvi/src/main/java/com/runt/open/mvi/base/BaseActivity.kt
+++ b/libmvi/src/main/java/com/runt/open/mvi/base/BaseActivity.kt
@@ -1,9 +1,7 @@
 package com.runt.open.mvi.base
 
-import android.Manifest
 import android.content.Context
 import android.content.Intent
-import android.content.pm.ActivityInfo
 import android.content.pm.PackageManager
 import android.os.Build
 import android.os.Bundle
@@ -23,6 +21,7 @@
 import androidx.activity.result.contract.ActivityResultContracts
 import androidx.annotation.ColorRes
 import androidx.annotation.StringRes
+import androidx.collection.ArraySet
 import androidx.core.content.ContextCompat
 import androidx.lifecycle.Observer
 import androidx.lifecycle.ViewModelProvider
@@ -325,109 +324,156 @@
 
     //===========================================
     //以下为preferences操作
-    fun getBooleanUserPrefrence(key : String?) : Boolean {
-        return PreferencesUtils.getBoolean(this , key , false , PreferencesUtils.USER)
+    fun getBooleanUserPrefrence(key : String) : Boolean {
+        return getBooleanUserPrefrence(key,false)
     }
 
-    fun getBooleanProjectPrefrence(key : String?) : Boolean {
-        return PreferencesUtils.getBoolean(this , key , false , PreferencesUtils.PROJECT)
+    fun getBooleanUserPrefrence(key : String,value : Boolean) : Boolean {
+        return PreferencesUtils.getBoolean(this , key , value , PreferencesUtils.USER)
     }
 
-    fun getStringUserPrefrence(key : String?) : String {
-        return PreferencesUtils.getString(this , key , "" , PreferencesUtils.USER)
+    fun getBooleanProjectPrefrence(key : String) : Boolean {
+        return getBooleanProjectPrefrence(key,false)
     }
 
-    fun getStringProjectPrefrence(key : String?) : String {
-        return PreferencesUtils.getString(this , key , "" , PreferencesUtils.PROJECT)
+    fun getBooleanProjectPrefrence(key : String,value : Boolean) : Boolean {
+        return PreferencesUtils.getBoolean(this , key , value , PreferencesUtils.USER)
     }
 
-    fun getIntProjectPrefrence(key : String?) : Int {
-        return PreferencesUtils.getInt(this , key , 0 , PreferencesUtils.PROJECT)
+    fun getStringUserPrefrence(key : String) : String {
+        return getStringUserPrefrence(key,"");
     }
 
-    fun getLongProjectPrefrence(key : String?) : Long {
-        return PreferencesUtils.getLong(this , key , 0 , PreferencesUtils.PROJECT)
+    fun getStringUserPrefrence(key : String,value : String?) : String {
+        return PreferencesUtils.getString(this , key , value, PreferencesUtils.PROJECT)
     }
 
-    fun getFloatProjectPrefrence(key : String?) : Float {
-        return PreferencesUtils.getFloat(this , key , 0f , PreferencesUtils.PROJECT)
+    fun getStringProjectPrefrence(key : String) : String {
+        return getStringProjectPrefrence(key,"");
     }
 
-    fun getStringSetProjectPrefrence(key : String?) : Set<*> {
-        return PreferencesUtils.getStringSet(this , key , PreferencesUtils.PROJECT)
+    fun getStringProjectPrefrence(key : String,value : String?) : String {
+        return PreferencesUtils.getString(this , key , value, PreferencesUtils.PROJECT)
     }
 
-    fun getIntUserPrefrence(key : String?) : Int {
-        return PreferencesUtils.getInt(this , key , 0 , PreferencesUtils.USER)
+    fun getIntProjectPrefrence(key : String) : Int {
+        return getIntProjectPrefrence(key,0);
     }
 
-    fun getLongUserPrefrence(key : String?) : Long {
-        return PreferencesUtils.getLong(this , key , 0 , PreferencesUtils.USER)
+    fun getIntProjectPrefrence(key : String,value : Int) : Int {
+        return PreferencesUtils.getInt(this , key , value , PreferencesUtils.PROJECT)
     }
 
-    fun getFloatUserPrefrence(key : String?) : Float {
-        return PreferencesUtils.getFloat(this , key , 0f , PreferencesUtils.USER)
+    fun getLongProjectPrefrence(key : String) : Long {
+        return getLongProjectPrefrence(key,0);
     }
 
-    fun getStringSetUserPrefrence(key : String?) : Set<*> {
-        return PreferencesUtils.getStringSet(this , key , PreferencesUtils.USER)
+    fun getLongProjectPrefrence(key : String,value : Long) : Long {
+        return PreferencesUtils.getLong(this , key , value , PreferencesUtils.PROJECT)
     }
 
+    fun getFloatProjectPrefrence(key : String) : Float {
+        return getFloatProjectPrefrence(key,0f);
+    }
 
-    fun putBooleanUserPrefrence(key : String? , value : Boolean) {
+    fun getFloatProjectPrefrence(key : String,value : Float) : Float {
+        return PreferencesUtils.getFloat(this , key , value , PreferencesUtils.PROJECT)
+    }
+
+    fun getStringSetProjectPrefrence(key : String) : Set<*> {
+        return getStringSetProjectPrefrence(key, ArraySet<Any?>() )
+    }
+
+    fun getStringSetProjectPrefrence(key : String,value : Set<*>?) : Set<*> {
+        return PreferencesUtils.getStringSet(this , key ,value, PreferencesUtils.PROJECT)
+    }
+
+    fun getIntUserPrefrence(key : String) : Int {
+        return getIntUserPrefrence(key,0)
+    }
+
+    fun getIntUserPrefrence(key : String,value : Int) : Int {
+        return PreferencesUtils.getInt(this , key , value , PreferencesUtils.USER)
+    }
+
+    fun getLongUserPrefrence(key : String) : Long {
+        return getLongUserPrefrence(key,0)
+    }
+
+    fun getLongUserPrefrence(key : String,value : Long) : Long {
+        return PreferencesUtils.getLong(this , key , value , PreferencesUtils.USER)
+    }
+
+    fun getFloatUserPrefrence(key : String) : Float {
+        return getFloatUserPrefrence(key,0f)
+    }
+
+    fun getFloatUserPrefrence(key : String,value : Float) : Float {
+        return PreferencesUtils.getFloat(this , key , value , PreferencesUtils.USER)
+    }
+
+    fun getStringSetUserPrefrence(key : String) : Set<*> {
+        return getStringSetUserPrefrence(key,ArraySet<Any?>())
+    }
+
+    fun getStringSetUserPrefrence(key : String,value : Set<*>) : Set<*> {
+        return PreferencesUtils.getStringSet(this , key ,value, PreferencesUtils.USER)
+    }
+
+    fun putBooleanUserPrefrence(key : String , value : Boolean) {
         PreferencesUtils.putBoolean(this , key , value , PreferencesUtils.USER)
     }
 
-    fun putBooleanProjectPrefrence(key : String? , value : Boolean) {
+    fun putBooleanProjectPrefrence(key : String , value : Boolean) {
         PreferencesUtils.putBoolean(this , key , value , PreferencesUtils.PROJECT)
     }
 
-    fun putStringUserPrefrence(key : String? , value : String?) {
+    fun putStringUserPrefrence(key : String , value : String?) {
         PreferencesUtils.putString(this , key , value , PreferencesUtils.USER)
     }
 
-    fun putStringProjectPrefrence(key : String? , value : String?) {
+    fun putStringProjectPrefrence(key : String , value : String?) {
         PreferencesUtils.putString(this , key , value , PreferencesUtils.PROJECT)
     }
 
-    fun putIntProjectPrefrence(key : String? , value : Int) {
+    fun putIntProjectPrefrence(key : String , value : Int) {
         PreferencesUtils.putInt(this , key , value , PreferencesUtils.PROJECT)
     }
 
-    fun putLongProjectPrefrence(key : String? , value : Long) {
+    fun putLongProjectPrefrence(key : String , value : Long) {
         PreferencesUtils.putLong(this , key , value , PreferencesUtils.PROJECT)
     }
 
-    fun putFloatProjectPrefrence(key : String? , value : Float) {
+    fun putFloatProjectPrefrence(key : String , value : Float) {
         PreferencesUtils.putFloat(this , key , value , PreferencesUtils.PROJECT)
     }
 
-    fun putStringSetProjectPrefrence(key : String? , value : Set<*>?) {
+    fun putStringSetProjectPrefrence(key : String , value : Set<*>?) {
         PreferencesUtils.putStringSet(this , key , value , PreferencesUtils.PROJECT)
     }
 
-    fun putIntUserPrefrence(key : String? , value : Int) {
+    fun putIntUserPrefrence(key : String , value : Int) {
         PreferencesUtils.putInt(this , key , value , PreferencesUtils.USER)
     }
 
-    fun putLongUserPrefrence(key : String? , value : Long) {
+    fun putLongUserPrefrence(key : String , value : Long) {
         PreferencesUtils.putLong(this , key , value , PreferencesUtils.USER)
     }
 
-    fun putFloatUserPrefrence(key : String? , value : Float) {
+    fun putFloatUserPrefrence(key : String , value : Float) {
         PreferencesUtils.putFloat(this , key , value , PreferencesUtils.USER)
     }
 
-    fun putStringSetUserPrefrence(key : String? , value : Set<*>?) {
+    fun putStringSetUserPrefrence(key : String , value : Set<*>?) {
         PreferencesUtils.putStringSet(this , key , value , PreferencesUtils.USER)
     }
 
 
-    fun removeUserKey(key : String?) {
+    fun removeUserKey(key : String) {
         PreferencesUtils.removeKey(this , key , PreferencesUtils.USER)
     }
 
-    fun removeProjectKey(key : String?) {
+    fun removeProjectKey(key : String) {
         PreferencesUtils.removeKey(this , key , PreferencesUtils.PROJECT)
     }
 

--
Gitblit v1.9.1