`
龙儿筝
  • 浏览: 1007 次
最近访客 更多访客>>
社区版块
存档分类
最新评论

鸿蒙安全控件之粘贴控件简介

阅读更多

粘贴控件是一种特殊的系统安全控件,它允许应用在用户的授权下无提示地读取剪贴板数据。

在应用集成粘贴控件后,用户点击该控件,应用读取剪贴板数据时不会弹窗提示。可以用于任何应用需要读取剪贴板的场景,避免弹窗提示对用户造成干扰。

例如,用户在应用外(如短信)复制了验证码,要在应用内粘贴验证码。用户原来在进入应用后,还需要长按输入框、在弹出的选项中点击粘贴,才能完成输入。而使用粘贴控件,用户只需进入应用后直接点击粘贴按钮,即可一步到位。

粘贴控件效果如图所示。
img

约束与限制

  • 临时授权会持续到灭屏、应用切后台、应用退出情况发生。
  • 应用在授权期间没有调用次数限制。
  • 为了保障用户的隐私不被恶意应用获取,应用需确保安全控件是可见的且用户能够识别的。开发者需要合理的配置控件的尺寸、颜色等属性,避免视觉混淆的情况,如果发生因控件的样式不合法导致授权失败的情况,请检查设备错误日志。

开发步骤

以简化用户填写验证码为例,参考以下步骤,实现效果:点击控件获取临时授权,粘贴内容到文本框,效果图请见上文。

  1. 导入剪贴板依赖。
import { pasteboard } from '@kit.BasicServicesKit';
 
  1. 添加输入框和粘贴控件。

    粘贴控件是由图标、文本、背景组成的类似Button的按钮,其中图标、文本两者至少有其一,背景必选。图标和文本不支持自定义,仅支持在已有的选项中选择。

    应用申明安全控件的接口时,分为传参和不传参两种,不传参默认创建图标+文字+背景的按钮,传参根据传入的参数创建,不包含没有配置的元素。

    当前示例使用默认参数。具体请参见PasteButton控件。此外,所有安全控件都继承安全控件通用属性,可用于定制样式。

import { pasteboard, BusinessError } from '@kit.BasicServicesKit';

@Entry
@Component
struct Index {
  @State message: string = '';

  build() {
    Row() {
      Column({ space: 10 }) {
        TextInput({ placeholder: '请输入验证码', text: this.message })
        PasteButton()
          .padding({top: 12, bottom: 12, left: 24, right: 24})
          .onClick((event: ClickEvent, result: PasteButtonOnClickResult) => {
            if (PasteButtonOnClickResult.SUCCESS === result) {
              pasteboard.getSystemPasteboard().getData((err: BusinessError, pasteData: pasteboard.PasteData) => {
                if (err) {
                  console.error(`Failed to get paste data. Code is ${err.code}, message is ${err.message}`);
                  return;
                }
                // 剪贴板内容为 '123456'
                this.message = pasteData.getPrimaryText();
              });
            }
          })
      }
      .width('100%')
    }
    .height('100%')
  }
}
0
0
分享到:
评论

相关推荐

    工行网银安全控件

    工行网银securityasistant.工行网银安全控件 网络安全控件

    安全控件 安全登录控件 浏览器插件 activex

    2.通常的安全控件分为两种,一种是指支持IE内核的浏览器,一种支持所有内核的浏览器,支付宝采用的是支持所有内核的浏览器,但是为了使用IE内核浏览器的一些特性支付宝继续保留IE内核版本 3安全控件密码输入有两种...

    齐鲁银行网银安全控件v2.0.56.3中文安装免费版

    齐鲁银行网银安全控件是一款专为齐鲁网上银行推出的网银安全控件工具,齐鲁银行网银安全控件是登陆齐鲁网上银行时需要要安全的工具之一,齐鲁网银控件这是齐鲁银行用户们再网上登录齐鲁银行必备的一款银行安全控件,...

    中国移动手机支付IE安全控件

    什么是安全控件?为什么要安装安全控件?手机支付密码安全控件,在SSL加密传输基础上对用户的关键信息进行再次的复杂加密,可以有效防止账号密码被木马程序或病毒窃取。高效规避了支付过程中的操作风险,为您保驾...

    支付宝安全控件MAC版v3.24.0.0官方版

    支付宝安全控件Mac版,本控件支持苹果Mac系统/safari 5.0 。安装后,安全控件会时时保护您的密码及账号不被窃取,从而有效的保障您的账户资金安全。当您在电脑上进行交易时,安全控件会及时的发现风险并提醒您,有效...

    博客的《从零开始看鸿蒙布局文件与鸿蒙基础控件》文章的配套代码

    在鸿蒙操作系统(HarmonyOS)的开发过程中,布局文件是构建用户界面(UI)的基础。这个名为"HarmonyXml.rar"的压缩包文件包含了与《从零开始看鸿蒙布局文件与鸿蒙基础控件》这篇文章配套的代码示例,帮助读者深入...

    广发银行网上银行安全控件v2.5.8.0官方安装版

    现在网民购物或者转账都喜欢在网上操作,而网上操作总会有一定的风险,不过目前的各大银行和支付平台都推出了自家的安全控件工具,安全之后多多少少会有些保障。这款安全控件是广发银行的官方安全控件,保护你的网购...

    支付宝财付通安全控件输入源码

    支付宝财付通安全控件输入 用于支付宝和财付通安全控件输入内容

    Mac怎么下载安装中国银行安全控件?.docx

    Mac下安装中国银行安全控件的步骤指南 Mac用户在访问中国银行个人网银时,如果未安装密码安全控件或密码安全控件版本太低,密码输入框栏位将出现提示信息,提醒用户下载最新的密码控件并安装。本文将指导用户如何...

    qmlGUI控件合集 qmlGUI控件合集

    qmlGUI控件合集qmlGUI控件合集qmlGUI控件合集qmlGUI控件合集qmlGUI控件合集qmlGUI控件合集qmlGUI控件合集qmlGUI控件合集qmlGUI控件合集qmlGUI控件合集qmlGUI控件合集qmlGUI控件合集qmlGUI控件合集qmlGUI控件合集...

    安全控件

    安全控件

    工商银行安全控件

    工商银行安全控件,防钓鱼网站入侵,保障网上交易的安全进行,保障财产安全。

    百付宝安全控件

    百付宝安全控件

    DataGridView中实现与EXCEL相互复制粘贴控件

    在.NET框架中,`DataGridView`控件是一种常用的数据展示组件,它可以方便地显示表格数据,并提供了丰富的交互功能。本文将详细讲解如何在`DataGridView`中实现与Excel的双向复制粘贴功能,使得用户能轻松地在两者...

    浅谈C#跨线程调用窗体控件(比如TextBox)引发的线程安全问题

    浅谈C#跨线程调用窗体控件引发的线程安全问题 C#跨线程调用窗体控件时可能会引发线程安全问题,例如当多个线程操作同一个控件时,该控件可能会进入不一致的状态,出现争用情况和死锁等问题。因此,确保以线程安全...

    百度安全控件

    百度安全控件

    平台安全控件

    平台安全控件

    晋商银行网银安全控件2.4.20.0官方安装版

    那么网上银行的使用就会越来越多,是不是就会出现问题,比如:没有usbkey驱动啊,安装不了密码控件啊,晋商银行网银安全控件就是帮助我们解决晋商银行网银使用时遇到的控件问题。 安装方法1、首先关闭正在运行的...

    应用安全支撑平台安全客户端控件.exe

    解决网络报税系统:当前浏览器加载安全控件:不成功 的安全控件。

    C#自定义控件库

    "C#自定义控件库"是指使用C#语言编写的、由开发者自定义的控件集合,这些控件可以扩展.NET Framework的标准控件集,为用户提供更丰富的界面元素和功能。自定义控件是软件开发中的一个重要环节,特别是在UI设计和用户...

Global site tag (gtag.js) - Google Analytics