HarmonyOS 粘贴板如何使用的 Demo
我们有剪贴板的功能,麻烦帮忙提供一个使用的 Demo。我们找到了 api setData 没问题,getData 获取不到数据
案例如下:
private async aa(callbackContext: CallbackContext) {
// 构建一个自定义类型的剪贴板内容对象
let pasteData: pasteboard.PasteData = pasteboard.createData(pasteboard.MIMETYPE_TEXT_PLAIN, 'aaaaaaaa');
let prop: pasteboard.PasteDataProperty = pasteData.getProperty();
prop.shareOption = pasteboard.ShareOption.LOCALDEVICE;
pasteData.setProperty(prop);
// 获取系统剪贴板对象
let systemPasteBoard: pasteboard.SystemPasteboard = pasteboard.getSystemPasteboard();
// 将数据写入系统剪贴板
await systemPasteBoard.setData(pasteData).then(() => {
// 在这里执行成功时的回调操作
CordovaLog.i(Constants.TAG, "Data set successfully!" )
callbackContext.success()
}).catch((err: BusinessError) => {
// 执行失败
CordovaLog.e(Constants.TAG, `Failed to set pastedata. Code: ${err.code}, message: ${err.message}`)
callbackContext.errorByJson(err)
});
setTimeout(() => {
this.bb()
}, 5000)
}
bb () {
// 获取系统剪贴板对象
let systemPasteBoard: pasteboard.SystemPasteboard = pasteboard.getSystemPasteboard();
// 读取系统剪贴板内容
systemPasteBoard.getData((err: BusinessError, data: pasteboard.PasteData) => {
if (err) {
console.error(`Failed to get pastedata. Code: ${err.code}, message: ${err.message}`);
return;
}
// 对pastedata进行处理,获取类型,个数等
let recordCount: number = data.getRecordCount(); // 获取剪贴板内record的个数
let types: string = data.getPrimaryMimeType(); // 获取剪贴板内数据的类型
let primaryText: string = data.getPrimaryText(); // 获取剪贴板内数据的内容
console.log('----粘贴 pasteboard', data)
console.log('---typeof', typeof data)
console.log('-----粘贴recordCount',recordCount)
console.log('-----粘贴types',types)
console.log('-----粘贴primaryText',primaryText)
});
}
- 1.
- 2.
- 3.
- 4.
- 5.
- 6.
- 7.
- 8.
- 9.
- 10.
- 11.
- 12.
- 13.
- 14.
- 15.
- 16.
- 17.
- 18.
- 19.
- 20.
- 21.
- 22.
- 23.
- 24.
- 25.
- 26.
- 27.
- 28.
- 29.
- 30.
- 31.
- 32.
- 33.
- 34.
- 35.
- 36.
- 37.
- 38.
- 39.
- 40.
- 41.
- 42.
- 43.
- 44.
- 45.
- 46.
- 47.
- 48.
- 49.
这样获取到的结果是 undefined
HarmonyOS
赞
收藏 0
回答 1
相关问题
HarmonyOS如何实现粘贴板功能
848浏览 • 1回复 待解决
HarmonyOS 如何访问粘贴板呢?
448浏览 • 1回复 待解决
HarmonyOS 如何获取和设置粘贴板
769浏览 • 1回复 待解决
HarmonyOS 粘贴板权限无法申请时,粘贴板能力如何与跨端容器如H5、Flutter之间进行共享?
524浏览 • 1回复 待解决
HarmonyOS 怎样将文本复制到粘贴板
602浏览 • 1回复 待解决
HarmonyOS 如果不获取剪切板权限,是否可以获取粘贴板的内容
300浏览 • 1回复 待解决
HarmonyOS 在读取剪系统粘贴板的时候是否需要申请、声明 ACL权限?
1017浏览 • 1回复 待解决
HarmonyOS 系统剪贴板的复制粘贴方法
750浏览 • 1回复 待解决
HarmonyOS 粘贴板权限申请弹窗每次打开应用都会弹出来,不能在申请时直接申请到‘总是’吗?
552浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何使用鸿蒙剪贴板实现跨设备复制粘贴?
747浏览 • 1回复 待解决
粘贴图片的两种方式,本模块主要提供管理系统剪贴板的能力,为系统复制、粘贴功能提供支持。
1499浏览 • 1回复 待解决
HarmonyOS 全局粘贴的功能
420浏览 • 1回复 待解决
HarmonyOS TextInput组件如何实现禁止粘贴的功能
380浏览 • 1回复 待解决
HarmonyOS 如何实现自定义按钮的粘贴功能?
830浏览 • 1回复 待解决
HarmonyOS flutter的TextField无法正常粘贴
292浏览 • 1回复 待解决
HarmonyOS 是否有全局粘贴的功能
550浏览 • 1回复 待解决
HarmonyOS 使用pasteboard获取剪贴板数据首次无效
532浏览 • 1回复 待解决
HarmonyOS 剪贴板
521浏览 • 1回复 待解决
HarmonyOS socketio使用demo
504浏览 • 1回复 待解决
HarmonyOS iconfont使用demo
516浏览 • 1回复 待解决
HarmonyOS 复制粘贴功能
617浏览 • 1回复 待解决
HarmonyOS TextInput支持禁止粘贴
417浏览 • 1回复 待解决
HarmonyOS RichEditor如何实现图文复制粘贴功能
524浏览 • 1回复 待解决
requestPermissionsFromUser使用Demo
1879浏览 • 1回复 待解决
HarmonyOS 剪贴板问题
668浏览 • 1回复 待解决
可参考如下代码:
从api11开始,对读取剪贴板接口增加读权限校验ohos.permission.READ_PASTEBOARD