Uniapp 截屏监听

975 阅读2分钟

ScreenshotPlugin

简介

一个简单又实用的截屏监听插件,返回截屏图片路径,还可动态开启禁止屏幕截屏

预览

image.png

引用

// 引用插件
const screenshotModule = uni.requireNativePlugin("Chen-Screenshot")

onStartListenScreenshot(CACLLBACK)

开启监听截屏事件

CACLLBACK参数说明
参数类型说明
successBoolean操作状态
codeInt状态码(200:操作成功,400:用户操作异常,500:插件内部操作异常)
msgString返回信息
示例
onStartListenScreenshot() {
  screenshotModule.onStartListenScreenshot((result) => {
    uni.showToast({
      title: '开启监听截屏事件:' + JSON.stringify(result),
      icon: "none"
    })
  })
},

onStartListenScreenshot(CACLLBACK)

停止监听截屏事件

CACLLBACK参数说明
参数类型说明
successBoolean操作状态
codeInt状态码(200:操作成功,400:用户操作异常,500:插件内部操作异常)
msgString返回信息
示例
onStopListenScreenshot() {
  screenshotModule.onStopListenScreenshot((result) => {
    uni.showToast({
      title: '停止监听截屏事件:' + JSON.stringify(result),
      icon: "none"
    })
  })
},

globalEvent(CACLLBACK)

截屏全局事件

CACLLBACK参数说明
参数类型说明
successBoolean操作状态
dataString图片路径
codeInt状态码(200:操作成功,400:用户操作异常,500:插件内部操作异常)
msgString返回信息
示例
plus.globalEvent.addEventListener('onScreenshot', (result) => {
  if (result.success) {
    this.imgPath = result.data
    this.show = true
  }
  uni.showToast({
    title: "截屏全局事件:" + JSON.stringify(result),
    icon: "none"
  })
})

onDisableScreenshot(CACLLBACK)

禁止截屏事件(仅安卓)

CACLLBACK参数说明
参数类型说明
successBoolean操作状态
codeInt状态码(200:操作成功,400:用户操作异常,500:插件内部操作异常)
msgString返回信息
示例
onDisableScreenshot() {
  screenshotModule.onDisableScreenshot((result) => {
    uni.showToast({
      title: '禁止屏幕截图事件:' + JSON.stringify(result),
      icon: "none"
    })
  })
},

onEnableScreenshot(CACLLBACK)

允许屏幕截图事件(仅安卓)

CACLLBACK参数说明
参数类型说明
successBoolean操作状态
codeInt状态码(200:操作成功,400:用户操作异常,500:插件内部操作异常)
msgString返回信息
示例
onEnableScreenshot() {
  screenshotModule.onEnableScreenshot((result) => {
    uni.showToast({
      title: '允许屏幕截图事件:' + JSON.stringify(result),
      icon: "none"
    })
  })
},

插件地址