添加拷贝时间戳到剪贴板功能
This commit is contained in:
parent
551b424960
commit
9c4c1320aa
@ -1,8 +1,8 @@
|
|||||||
#Created by .winboll/winboll_app_build.gradle
|
#Created by .winboll/winboll_app_build.gradle
|
||||||
#Tue May 06 02:45:43 GMT 2025
|
#Tue May 06 03:04:55 GMT 2025
|
||||||
stageCount=0
|
stageCount=0
|
||||||
libraryProject=
|
libraryProject=
|
||||||
baseVersion=15.0
|
baseVersion=15.0
|
||||||
publishVersion=15.0.0
|
publishVersion=15.0.0
|
||||||
buildCount=108
|
buildCount=117
|
||||||
baseBetaVersion=15.0.1
|
baseBetaVersion=15.0.1
|
||||||
|
@ -5,6 +5,8 @@
|
|||||||
|
|
||||||
<!-- 运行前台服务 -->
|
<!-- 运行前台服务 -->
|
||||||
<uses-permission android:name="android.permission.FOREGROUND_SERVICE"/>
|
<uses-permission android:name="android.permission.FOREGROUND_SERVICE"/>
|
||||||
|
<uses-permission android:name="android.permission.READ_CLIPBOARD" />
|
||||||
|
<uses-permission android:name="android.permission.WRITE_CLIPBOARD" />
|
||||||
|
|
||||||
<application
|
<application
|
||||||
android:allowBackup="true"
|
android:allowBackup="true"
|
||||||
|
@ -10,6 +10,12 @@ import android.content.Context;
|
|||||||
import android.content.Intent;
|
import android.content.Intent;
|
||||||
import android.widget.Toast;
|
import android.widget.Toast;
|
||||||
import cc.winboll.studio.libappbase.LogUtils;
|
import cc.winboll.studio.libappbase.LogUtils;
|
||||||
|
import cc.winboll.studio.timestamp.utils.AppConfigsUtil;
|
||||||
|
import cc.winboll.studio.timestamp.utils.ClipboardUtil;
|
||||||
|
import java.time.Instant;
|
||||||
|
import java.time.LocalDateTime;
|
||||||
|
import java.time.ZoneId;
|
||||||
|
import java.time.format.DateTimeFormatter;
|
||||||
|
|
||||||
public class ButtonClickReceiver extends BroadcastReceiver {
|
public class ButtonClickReceiver extends BroadcastReceiver {
|
||||||
|
|
||||||
@ -20,11 +26,20 @@ public class ButtonClickReceiver extends BroadcastReceiver {
|
|||||||
@Override
|
@Override
|
||||||
public void onReceive(Context context, Intent intent) {
|
public void onReceive(Context context, Intent intent) {
|
||||||
LogUtils.d(TAG, "onReceive");
|
LogUtils.d(TAG, "onReceive");
|
||||||
//if (intent.getAction().equals(BUTTON_COPYTIMESTAMP_ACTION)) {
|
if (intent.getAction().equals(BUTTON_COPYTIMESTAMP_ACTION)) {
|
||||||
// 在这里编写按钮点击后要执行的代码
|
// 在这里编写按钮点击后要执行的代码
|
||||||
|
long currentMillis = System.currentTimeMillis();
|
||||||
|
Instant instant = Instant.ofEpochMilli(currentMillis);
|
||||||
|
LocalDateTime ldt = LocalDateTime.ofInstant(instant, ZoneId.systemDefault());
|
||||||
|
String szTimeStampFormatString = AppConfigsUtil.getInstance(context).getAppConfigsModel().getTimeStampCopyFormatString();
|
||||||
|
DateTimeFormatter formatter = DateTimeFormatter.ofPattern(szTimeStampFormatString);
|
||||||
|
String formattedDateTime = ldt.format(formatter);
|
||||||
|
|
||||||
|
ClipboardUtil.copyTextToClipboard(context, formattedDateTime);
|
||||||
|
|
||||||
// 比如显示一个Toast
|
// 比如显示一个Toast
|
||||||
Toast.makeText(context, "按钮被点击了", Toast.LENGTH_SHORT).show();
|
Toast.makeText(context, formattedDateTime + " 已复制", Toast.LENGTH_SHORT).show();
|
||||||
//}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -0,0 +1,37 @@
|
|||||||
|
package cc.winboll.studio.timestamp.utils;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @Author ZhanGSKen
|
||||||
|
* @Date 2025/05/06 10:53
|
||||||
|
* @Describe 剪贴板工具集
|
||||||
|
*/
|
||||||
|
import android.content.ClipData;
|
||||||
|
import android.content.ClipboardManager;
|
||||||
|
import android.content.Context;
|
||||||
|
import android.os.Handler;
|
||||||
|
|
||||||
|
public class ClipboardUtil {
|
||||||
|
public static final String TAG = "ClipboardUtil";
|
||||||
|
|
||||||
|
private static final long COPY_DELAY = 500; // 延迟 500 毫秒
|
||||||
|
private static Handler handler = new Handler();
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 拷贝文本到剪贴板
|
||||||
|
* @param context 上下文
|
||||||
|
* @param text 要拷贝的文本
|
||||||
|
*/
|
||||||
|
public static void copyTextToClipboard(final Context context, final String text) {
|
||||||
|
handler.postDelayed(new Runnable() {
|
||||||
|
@Override
|
||||||
|
public void run() {
|
||||||
|
ClipboardManager clipboardManager = (ClipboardManager) context.getSystemService(Context.CLIPBOARD_SERVICE);
|
||||||
|
if (clipboardManager != null) {
|
||||||
|
ClipData clipData = ClipData.newPlainText("label", text);
|
||||||
|
clipboardManager.setPrimaryClip(clipData);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}, COPY_DELAY);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
Loading…
x
Reference in New Issue
Block a user