From fefe89781718c2bca0990a289928464d637a6b41 Mon Sep 17 00:00:00 2001
From: Runt <qingingrunt2010@qq.com>
Date: Fri, 25 Jul 2025 18:58:31 +0000
Subject: [PATCH] 复制文本,stringset 修复

---
 libmvi/src/main/java/com/runt/open/mvi/base/BaseActivity.kt        |   15 ++++++++++++---
 libmvi/src/main/java/com/runt/open/mvi/utils/PreferencesUtils.java |    1 +
 2 files changed, 13 insertions(+), 3 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 bf326ac..3d395dc 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
@@ -2,6 +2,8 @@
 
 import android.Manifest
 import android.app.ActivityManager
+import android.content.ClipData
+import android.content.ClipboardManager
 import android.content.ContentResolver
 import android.content.Context
 import android.content.Intent
@@ -29,7 +31,6 @@
 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
@@ -472,6 +473,14 @@
         showToast(getString(msg))
     }
 
+    fun copyStr(str:String){
+        // 获取系统剪贴板
+        val clipboard = getSystemService(Context.CLIPBOARD_SERVICE) as ClipboardManager
+        // 创建一个剪贴数据集,包含一个普通文本数据条目(需要复制的数据)
+        val clipData = ClipData.newPlainText(null ,str)
+        // 把数据集设置(复制)到剪贴板
+        clipboard.setPrimaryClip(clipData)
+    }
     /**
      * 获取文件保存路径 sdcard根目录/download/文件名称
      * @param fileUrl
@@ -546,7 +555,7 @@
     }
 
     fun getStringSetProjectPrefrence(key : String) : Set<*> {
-        return getStringSetProjectPrefrence(key, ArraySet<Any?>() )
+        return getStringSetProjectPrefrence(key, HashSet<Any?>() )
     }
 
     fun getStringSetProjectPrefrence(key : String,value : Set<*>?) : Set<*> {
@@ -578,7 +587,7 @@
     }
 
     fun getStringSetUserPrefrence(key : String) : Set<*> {
-        return getStringSetUserPrefrence(key,ArraySet<Any?>())
+        return getStringSetUserPrefrence(key,HashSet<Any?>())
     }
 
     fun getStringSetUserPrefrence(key : String,value : Set<*>) : Set<*> {
diff --git a/libmvi/src/main/java/com/runt/open/mvi/utils/PreferencesUtils.java b/libmvi/src/main/java/com/runt/open/mvi/utils/PreferencesUtils.java
index a1b5c5d..4396dff 100644
--- a/libmvi/src/main/java/com/runt/open/mvi/utils/PreferencesUtils.java
+++ b/libmvi/src/main/java/com/runt/open/mvi/utils/PreferencesUtils.java
@@ -320,6 +320,7 @@
     public static boolean putStringSet(Context context, String key, Set value, String keyShared) {
         SharedPreferences settings = context.getSharedPreferences(keyShared, Context.MODE_PRIVATE);
         SharedPreferences.Editor editor = settings.edit();
+        editor.putStringSet(key,null).commit();
         editor.putStringSet(key, value);
         return editor.commit();
     }

--
Gitblit v1.9.1