一、介绍
实现复制口令进入app显示对应活动,主要是围绕剪贴板ClipboardManager来实现,通过复制分享的信息(分享的信息可能需要加密,这里不做讨论)到剪贴板,然后就可以进行粘贴进行分享。当用户复制此段口令打开app,app就可以读取剪贴板的内容(剪贴板的内容如果加密了需要解密)然后根据内容显示显示相应活动信息(弹窗)。
二、ClipboardManager 的使用
读取剪贴板内容:
ClipboardManager clipboard = (ClipboardManager) getSystemService(Context.CLIPBOARD_SERVICE);
// 创建一个剪贴数据集,包含一个普通文本数据条目(需要复制的数据),其他的还有
// newHtmlText、
// newIntent、
// newUri、
// newRawUri
ClipData cd = clipboard.getPrimaryClip();
if (cd != null && cd.getItemCount() != 0) {
ClipData.Item item = cd.getItemAt(0);
String code = item.getText().toString();
if (!TextUtils.isEmpty(code)) {
//剪贴板内容
//进行相关业务
}
}
写入剪贴板内容:
// 获取系统剪贴板
ClipboardManager clipboard = (ClipboardManager) context.getSystemService(Context.CLIPBOARD_SERVICE);
// 创建一个剪贴数据集,包含一个普通文本数据条目(需要复制的数据),其他的还有
// newHtmlText、
// newIntent、
// newUri、
// newRawUri
ClipData clipData = ClipData.newPlainText(null, data);
// 把数据集设置(复制)到剪贴板
clipboard.setPrimaryClip(clipData);
获取剪贴板有时候获取为null,可以延迟1秒钟