HarmonyOS鸿蒙Next中PasteButton控件读取系统粘贴板数据是否需要声明“ohos.permission.READ_PASTEBOARD”权限?

HarmonyOS鸿蒙Next中PasteButton控件读取系统粘贴板数据是否需要声明“ohos.permission.READ_PASTEBOARD”权限? API12环境下,PasteButton能否不在app中声明申请“ohos.permission.READ_PASTEBOARD”时读取系统粘贴板的数据?

目前使用如下代码,提示" To use this API, you need to apply for the permissions: ohos.permission.READ_PASTEBOARD"需要申请权限

PasteButton()
  .onClick((event:PasteEvent, result:PasteButtonOnClickResult)=>{
    if (PasteButtonOnClickResult.SUCCESS === result) {
      pasteboard.getSystemPasteboard().getDataSync().getPrimaryText()
    }
  })

所以,使用PasteButton安全控件获取系统粘贴板数据是否依然需要在app工程中声明“ohos.permission.READ_PASTEBOARD”权限?


更多关于HarmonyOS鸿蒙Next中PasteButton控件读取系统粘贴板数据是否需要声明“ohos.permission.READ_PASTEBOARD”权限?的实战教程也可以访问 https://www.itying.com/category-93-b0.html

4 回复

PasteButton是系统提供的安全控件,核心设计目标就是免除显式权限申请。用户点击该控件时,系统会自动授予临时权限用于读取剪贴板数据

代码中使用的getDataSync()是同步接口,根据API 12的权限规则,该接口需要声明ohos.permission.READ_PASTEBOARD权限。而异步接口getData()在安全控件场景下无需权限声明。

更多关于HarmonyOS鸿蒙Next中PasteButton控件读取系统粘贴板数据是否需要声明“ohos.permission.READ_PASTEBOARD”权限?的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


不需要声明权限,安全控件都不需要声明权限

在HarmonyOS Next中,使用PasteButton控件读取系统粘贴板数据无需声明“ohos.permission.READ_PASTEBOARD”权限。该控件为系统级组件,已默认具备访问粘贴板的权限,开发者可直接调用其功能而无需额外授权。

在HarmonyOS Next中,使用PasteButton控件读取系统粘贴板数据需要声明ohos.permission.READ_PASTEBOARD权限。即使通过PasteButton这一安全控件访问,系统仍会进行权限校验,未声明权限会导致操作被拒绝。请确保在应用的module.json5文件中正确声明该权限,以避免运行时错误。

回到顶部