鸿蒙HarmonyOS剪切板的实现

感谢关注HarmonyOS,为了便于大家学习特将鸿蒙2.0基础教学内容整理如下:

1、HarmonyOS应用开发—视频播放
https://developer.huawei.com/consumer/cn/codelab/HarmonyOS-hap1/index.html#0

2、HarmonyOS应用开发—基本控件
https://developer.huawei.com/consumer/cn/codelab/HarmonyOS-hap2/index.html#0

3、HarmonyOS应用开发—UI开发与预览
https://developer.huawei.com/consumer/cn/codelab/HarmonyOS-ui/index.html#0

4、HarmonyOS应用开发—设备虚拟化特性开发
https://developer.huawei.com/consumer/cn/codelab/HarmonyOS-screenhardware/index.html#0

5、HarmonyOS应用开发—HelloWorld应用开发E2E体验
https://developer.huawei.com/consumer/cn/codelab/HarmonyOS-HelloWorld/index.html#0

6、HarmonyOS应用开发—有界面元程序交互
https://developer.huawei.com/consumer/cn/codelab/HarmonyOS-hap6/index.html#0

7、HarmonyOS应用开发-分布式任务调度
https://developer.huawei.com/consumer/cn/codelab/HarmonyOS-hap5/index.html#0

8、HarmonyOS应用开发—剪切板
https://developer.huawei.com/consumer/cn/codelab/HarmonyOS-hap4/index.html#0

9、HarmonyOS应用开发—应用偏好数据读写
https://developer.huawei.com/consumer/cn/codelab/HarmonyOS-hap3/index.html#0

以下为HarmonyOS应用开发-剪切板节选部分,如想进一步了解,请点击:HarmonyOS应用开发-剪切板

一、介绍

本篇将实现的内容
HarmonyOS是面向全场景多终端的分布式操作系统,使得应用程序的开发打破了智能终端互通的性能和数据壁垒,业务逻辑原子化开发,适配多端。通过一个简单应用开发,体验HarmonyOS的剪切板能力。

您将建立什么
 在这个Codelab中,你将创建Demo Project,并将Demo编译成Hap,此示例应用程序展示了如何使用HarmonyOS剪贴板复制文字。

您将会学到什么

1.如何创建一个HarmonyOS Demo Project

2.如何构建一个Hap并且将其部署到智慧屏远程模拟器上

3.通过此示例应用体验:

剪贴板复制文字。
监听剪贴板。

二、您需要什么

1. 硬件要求

1.操作系统:Windows10 64位
2.内存:8G及以上
3.硬盘:100G及以上
4.分辨率:1280*800及以上

2. 软件要求

1.DevEco Studio:需手动下载安装,详细步骤请参考《DevEco Studio使用指南》2.1.2
2.JDK:DevEco Studio自动安装。.
3.Node.js:请手动下载安装,详细步骤请参考《DevEco Studio使用指南》2.1.3 下载和安装Node.js
4.HarmonyOS SDK:待DevEco Studio安装完成后,利用DevEco Studio来加载HarmonyOS SDK。详细步骤请参考《DevEco Studio使用指南》2.1.6 加载HarmonyOS SDK。
5.Maven库依赖包:如需手动拷贝和配置,详细步骤请参考《DevEco Studio使用指南》2.3 离线方式配置Maven库。

3. 需要的知识点

Java基础开发能力。

三、能力接入准备

实现HarmonyOS应用开发,需要完成以下准备工作:
1.环境准备。
2.环境搭建。
3.创建项目
4.申请调试证书
5.应用开发

具体操作,请按照《DevEco Studio使用指南》中详细说明来完成。
提示:需要通过注册成开发者才能完成集成准备中的操作。

四、代码片段

1. 在Slice文件中写入以下代码::

代码布局:

/**
 * 功能描述:复制文本到剪切板
 */
private void copyText() {
  pasteboard = SystemPasteboard.getSystemPasteboard(this);
  PasteData pasteData = new PasteData();
  pasteData.addTextRecord("copyText");
  PacMap pacMap = new PacMap();
  pacMap.putString("ADDITION_KEY", "ADDITION_VALUE_OF_TEXT");
  pasteData.getProperty().setAdditions(pacMap);
  pasteData.getProperty().setTag("USER_TAG");
  pasteData.getProperty().setLocalOnly(true);
  pasteboard.setPasteData(pasteData);
  pasteData = null;
  showText.setText("copyText success");
}

/**
 * 功能描述:监听剪贴板
 */
private void processMonitor() {
  IPasteDataChangedListener listener = new IPasteDataChangedListener() {
    @Override
    public void onChanged() {
      showText.setText("in onChanged ");
      PasteData pasteData = pasteboard.getPasteData();
      if (pasteData == null) {
        return;
      }
      showPasteText ();
      // Operations to handle data change on the system pasteboard
    }
  };
  pasteboard.addPasteDataChangedListener(listener);
}

/**
 * 功能描述:从剪切板中粘贴文字
 */
private void showPasteText() {
  pasteboard = SystemPasteboard.getSystemPasteboard(this);
  pasteData = pasteboard.getPasteData();
  record = pasteData.getRecordAt(0);
  showText.append(record.getPlainText().toString());
  showText.append(record.getMimeType());
  showText.append(pasteData.getProperty().getTag().toString());
  PacMap pacMap = pasteData.getProperty().getAdditions();
  String extraInfo = pacMap.getString("ADDITION_KEY");
  if (extraInfo == null || extraInfo.isEmpty()) {
    LogUtil.error(TAG, "extra info is null or is empty");
  } else {
    showText.append(pacMap.getString("ADDITION_KEY"));
  }
}

2. 编译运行该应用

通过hdc连接大屏设备

先查看智慧屏IP:

大屏设置->"网络与连接"->"网络"->"有线网络"

在cmd或者IDE的Terminal输入命令:

hdc tconn 192.168.3.9:5555

运行hap

到此这篇关于鸿蒙HarmonyOS剪切板的实现的文章就介绍到这了,更多相关HarmonyOS 剪切板内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • HarmonyOS实现HelloWorld应用开发E2E体验

    感谢关注HarmonyOS,为了便于大家学习特将鸿蒙2.0基础教学内容整理如下: 1.HarmonyOS应用开发-视频播放 https://developer.huawei.com/consumer/cn/codelab/HarmonyOS-hap1/index.html 2.HarmonyOS应用开发-基本控件 https://developer.huawei.com/consumer/cn/codelab/HarmonyOS-hap2/index.html 3.HarmonyOS应用开发-U

  • 鸿蒙HarmonyOS视频播放的实现

    一.介绍 本篇Codelab将实现的内容 HarmonyOS是面向全场景多终端的分布式操作系统,使得应用程序的开发打破了智能终端互通的性能和数据壁垒,业务逻辑原子化开发,适配多端.通过一个简单应用开发,体验HarmonyOS的视频播放能力 您将建立什么 在这个Codelab中,你将创建Demo Project,并将Demo编译成Hap,此示例应用程序展示了如何播放视频. 您将会学到什么 如何创建一个HarmonyOS Demo Project如何构建一个Hap并且将其部署到智慧屏真机通过此示例应

  • HarmonyOS 基本控件的实现

    感谢关注HarmonyOS,为了便于大家学习特将鸿蒙2.0基础教学内容整理如下: 1.HarmonyOS应用开发-视频播放 https://developer.huawei.com/consumer/cn/codelab/HarmonyOS-hap1/index.html#0 2.HarmonyOS应用开发-基本控件 https://developer.huawei.com/consumer/cn/codelab/HarmonyOS-hap2/index.html#0 3.HarmonyOS应用

  • 鸿蒙HarmonyOS剪切板的实现

    感谢关注HarmonyOS,为了便于大家学习特将鸿蒙2.0基础教学内容整理如下: 1.HarmonyOS应用开发-视频播放 https://developer.huawei.com/consumer/cn/codelab/HarmonyOS-hap1/index.html#0 2.HarmonyOS应用开发-基本控件 https://developer.huawei.com/consumer/cn/codelab/HarmonyOS-hap2/index.html#0 3.HarmonyOS应用

  • 鸿蒙HarmonyOS 分布式任务调度的实现

    感谢关注HarmonyOS,为了便于大家学习特将鸿蒙2.0基础教学内容整理如下: 1.HarmonyOS应用开发-视频播放 https://developer.huawei.com/consumer/cn/codelab/HarmonyOS-hap1/index.html#0 2.HarmonyOS应用开发-基本控件 https://developer.huawei.com/consumer/cn/codelab/HarmonyOS-hap2/index.html#0 3.HarmonyOS应用

  • js 剪切板的用法(clipboardData.setData)与js match函数介绍

    经常看到这样一种效果:就是单击一个按钮,就将某个区域内的内容,复制到了剪切板中.其实这个功能实现起来也不难,核心就是用到了window子对象clipboardData的一个方法:setData()语法:    clipboardData.setData(sDataFormat, sData) 参数:sDataFormat:要复制的内容的格式:sData:要复制的内容. 返回值:复制成功返回true:失败返回false. 复制代码 代码如下: <script language="JavaSc

  • jquery 一键复制到剪切板的实例

    今天做项目有一个功能,通过点击事件复制一段文本到剪切板,在网上找了一些,整理了一下,方便需要的朋友使用. <a id="copy" data-text="123456">复制文本</a> $(function(){ var clipboard = new Clipboard('#copy',{ text: function(trigger) { alert("复制成功!"); return trigger.getAttri

  • Js+Flash实现访问剪切板操作

    最近需要遇到了这个问题点击按钮复制链接的功能果断度娘谷哥.最后找到得解决方案ZeroClipBoard一款开源得js+Flash实现得剪切板操作 但是搜寻了众多例子之后发现大多都是介绍一个页面只有一个固定的复制操作 而我得需求是这样 一个动态Repeater动态加载出各个地址和复制按钮. 这个解决方案得原理是: 拿js动态加载一个透明flash.然后遮盖到你要点击得按钮上面,之后在给这个flash得承载元素上绑定事件动态把要复制得值传递到flash中,用flash访问剪切板. 这时候就出现这么一

  • iOS中管理剪切板的UIPasteboard粘贴板类用法详解

    一.自带剪切板操作的原生UI控件 在iOS的UI系统中,有3个控件自带剪切板操作,分别是UITextField.UITextView与UIWebView.在这些控件的文字交互处进行长按手势可以在屏幕视图上唤出系统的剪切板控件,用户可以进行复制.粘贴,剪切等操作,其效果分别如下图所示. UITextField的文字操作 UITextView的文字操作 二.系统的剪切板管理类UIPasteboard 实际上,当用户通过上面的空间进行复制.剪切等操作时,被选中的内容会被存放到系统的剪切板中,并且这个剪

  • Swift3.0剪切板代码拷贝及跨应用粘贴实现代码

    有个需求,点击某个按钮,实现一段内容的拷贝,然后到其他应用内,直接长按粘贴. 实现如下: override func viewDidLoad() { super.viewDidLoad() // Do any additional setup after loading the view. view.backgroundColor = UIColor.white //应用内实现粘贴,这个txt用来测试的 let txt = UITextField(frame: CGRect(x: 100, y:

  • 支持ie与FireFox的剪切板操作代码

    复制代码 代码如下: <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>支持ie与FireFox的剪切板代码</title> <script type="text/javascript"> function setCopy(_sTxt){ try{ if(window.clipboardData){ window.clipboardData.

  • 支持多浏览器(IE、Firefox、Opera)剪切板复制函数_脚本之家修正版

    需要注意的是,firefox下必须要设置下 signed.applets.codebase_principal_support 在 firefox浏览器地址栏输入about:config 过滤器中输入signed.applets.codebase_principal_support双击设置为true即可支持.因为firefox默认情况下是不支持脚本操作剪切板的. 因为只是什么都不支持的浏览器才是最安全的浏览器. function copyToClipboard(txt) { if(window.

  • Python使用剪切板的方法

    此段代码可以利用剪切板,完成自动复制粘贴等功能.(Windows) import sys import os.path import win32clipboard as w import win32con import win32api def getText():#读取剪切板 w.OpenClipboard() d = w.GetClipboardData(win32con.CF_TEXT) w.CloseClipboard() return d def setText(aString):#写

随机推荐