美文网首页Android程序员
Android10中获取剪切板内容

Android10中获取剪切板内容

作者: 浮名虚誉架构师 | 来源:发表于2020-06-09 10:14 被阅读0次

android10中规定, 只有默认输入法(IME)或者是目前处于焦点的应用, 才能访问到剪贴板数据。

onCreate()或onResume()时,View可能还处于申请获取焦点状态,导致获取不到剪切板数据,所以当所有View都绘制完毕后,就可以获取到剪切板的数据。可以使用如下代码获取:
在Activity的onResume()中调用以下方法:

private void getClipboardData() {
    this.getWindow().getDecorView().post(new Runnable() {
        @Override
        public void run() {
            //把获取到的内容打印出来
            Log.i("YoungerHu", ClipBoardUtil.paste());
        }
    });
}

工具类:

public class ClipBoardUtil {
    /**
     * 获取剪切板内容
     * @return
     */
    public static String paste(){
        ClipboardManager manager = (ClipboardManager) CourserApplication.getContext().getSystemService(Context.CLIPBOARD_SERVICE);
        if (manager != null) {
            if (manager.hasPrimaryClip() && manager.getPrimaryClip().getItemCount() > 0) {
                CharSequence addedText = manager.getPrimaryClip().getItemAt(0).getText();
                String addedTextString = String.valueOf(addedText);
                if (!TextUtils.isEmpty(addedTextString)) {
                    return addedTextString;
                }
            }
        }
        return "";
    }

    /**
     * 清空剪切板
     */
    public static void clear(){
        ClipboardManager manager = (ClipboardManager) CourserApplication.getContext().getSystemService(Context.CLIPBOARD_SERVICE);
        if (manager != null) {
            try {
                manager.setPrimaryClip(manager.getPrimaryClip());
                manager.setPrimaryClip(ClipData.newPlainText("",""));
            } catch (Exception e) {
                e.printStackTrace();
            }
        }
    }
}

相关文章

  • Android10中获取剪切板内容

    android10中规定, 只有默认输入法(IME)或者是目前处于焦点的应用, 才能访问到剪贴板数据。 onCre...

  • python 操作剪切板

    有时候写脚本的时候会有操作系统剪切板的需求,就是 获取剪切板中的字符串 清空剪切板 向剪切板中写入字符串 方法包括...

  • weex-23-clipboard模块

    本节学习目标 复制内容到剪切板 获取剪切板内容 一般在手机上都是手动复制或者粘贴,如下 本节我们就使用代码进行复制...

  • android 获取剪切板内容

    val cm = activity!!.getSystemService(Context.CLIPBOARD_SE...

  • 获取剪切板的内容

    如果没有成功,点击url右侧的图标,如图

  • JS获取剪切板内容

    本文代码参考了禅道开源代码内容 需求 使用wangEditor粘贴excel数据时,如果数据中没有图片,一切正常。...

  • ubuntu修改hosts翻墙

    1. hosts获取通过网站:laod.cn获取 然后选取全部获取,复制里面的内容到剪切板。 2.进入终端,然后输...

  • 剪切板的使用

    获取全局的剪切板内容并作出提示 在这个方法中去拦截剪贴版的内容并做判读 对获取到内容的处理 这个哥们的swift版...

  • 读取剪切板数据

    调用时机 详情见AndroidQ(10)获取剪切板内容适配 - 简书 (jianshu.com)[https://...

  • 3.5 UiPath剪贴板操作的介绍和使用

    剪切板操作的介绍模拟用户使用剪切板操作的一种行为:例如使用设置剪切板(SettoClipboard),从剪切板获取...

网友评论

    本文标题:Android10中获取剪切板内容

    本文链接:https://www.haomeiwen.com/subject/lbwdtktx.html