From 819a88ba62fc38b91a4c0dfd3653fa92bb1655ba Mon Sep 17 00:00:00 2001 From: HuanCheng65 <22636177+HuanCheng65@users.noreply.github.com> Date: Wed, 31 Aug 2022 09:42:00 +0800 Subject: [PATCH] =?UTF-8?q?pref:=20=E9=80=82=E9=85=8D=20Android=2013=20?= =?UTF-8?q?=E5=89=AA=E8=B4=B4=E6=9D=BF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../tieba/post/utils/TiebaUtil.kt | 23 +++++++++++++------ 1 file changed, 16 insertions(+), 7 deletions(-) diff --git a/app/src/main/java/com/huanchengfly/tieba/post/utils/TiebaUtil.kt b/app/src/main/java/com/huanchengfly/tieba/post/utils/TiebaUtil.kt index 343606f7..c95c2fc7 100644 --- a/app/src/main/java/com/huanchengfly/tieba/post/utils/TiebaUtil.kt +++ b/app/src/main/java/com/huanchengfly/tieba/post/utils/TiebaUtil.kt @@ -2,10 +2,9 @@ package com.huanchengfly.tieba.post.utils import android.app.AlarmManager import android.app.PendingIntent -import android.content.ClipData -import android.content.ClipboardManager -import android.content.Context -import android.content.Intent +import android.content.* +import android.os.Build +import android.os.PersistableBundle import androidx.work.ExistingWorkPolicy import androidx.work.OneTimeWorkRequestBuilder import androidx.work.OutOfQuotaPolicy @@ -25,17 +24,27 @@ import retrofit2.Response import java.util.* object TiebaUtil { + private fun ClipData.setIsSensitive(isSensitive: Boolean): ClipData { + description.extras = PersistableBundle().apply { + putBoolean(ClipDescription.EXTRA_IS_SENSITIVE, isSensitive) + } + return this + } + @JvmStatic @JvmOverloads fun copyText( context: Context, text: String?, - toast: String = context.getString(R.string.toast_copy_success) + toast: String = context.getString(R.string.toast_copy_success), + isSensitive: Boolean = false ) { val cm = context.getSystemService(Context.CLIPBOARD_SERVICE) as ClipboardManager - val clipData = ClipData.newPlainText("Tieba Lite", text) + val clipData = ClipData.newPlainText("Tieba Lite", text).setIsSensitive(isSensitive) cm.setPrimaryClip(clipData) - context.toastShort(toast) + if (Build.VERSION.SDK_INT <= Build.VERSION_CODES.S_V2) { + context.toastShort(toast) + } } fun initAutoSign(context: Context) {