微信小程序防止截屏录屏

news/2024/7/20 2:46:18 标签: 微信小程序, 小程序

一、使用css添加水印

使用小程序>微信小程序原生的view和css给屏幕添加水印这样可以防止用户将小程序内的隐私数据进行截图或者录屏分享导致信息泄露,给小程序添加一个水印浮层。这样即使被截图或者拍照,也能轻松地确定泄露的源头。效果图如下:

代码片段 https://developers.weixin.qq.com/s/V9dcdgmc7mOy

wxml文件:

注意回车符“\n”只能被text标签识别view标签无法识别

  <navigation-bar title="Weixin" back="{{false}}" color="black" background="#ccc"></navigation-bar>
<view class="water_top" style="pointer-events: none;">
    <text class="water-text" wx:for="{{50}}">{{"小程序水印\n12345678910"}}</text>
</view>

css文件:

.water_top{
  position: fixed;
  top:0;
  bottom: 0;
  left: 0;
  right: 0;
  /* background: #999; */
  transform:rotate(-10deg);
  /* opacity: 0.9; */
  z-index: -999;
}
.water-text{
  float: left;
  width:375rpx;
  color: rgba(169,169,169,.2);
  text-align: center;
  font-size: 40rpx;
  margin: 100rpx 0;
}
.watermark {
  position: fixed;
  top: 0;
  width: 100%;
  height: 100%;
  background: #eeeeee11;
  pointer-events: none;
  background-repeat: repeat;
  background-size: 50% auto;
}
.canvas {
  width: 200px;
  height: 200px;
  position: fixed;
  left: -200%;
}

二、使用小程序>微信小程序的api阻止用户截屏

使用wx.setVisualEffectOnCapture手机截屏或者录屏时,禁止调用,并提示无法截屏。

参数

属性类型默认值必填说明
visualEffectstringnone截屏/录屏时的表现,仅支持 none / hidden,传入 hidden 则表示在截屏/录屏时隐藏屏幕
successfunction接口调用成功的回调函数
failfunction接口调用失败的回调函数
completefunction接口调用结束的回调函数(调用成功、失败都会执行

注意:iOS 要求基础库版本为 3.3.0 以上,且系统版本为 iOS 16 以上

  onLoad() {
    wx.setVisualEffectOnCapture({
      visualEffect: 'hidden',
      success:(res) => {
        console.log(res)
      },
      fail:(err) => {
        console.log(err)
      },
      complete:(res) => {
        console.log(res)
      }
    })
    wx.onUserCaptureScreen(function (res) {
      console.log('用户截屏了')
    })
  },
})

微信开发者文档wx.setVisualEffectOnCapture


http://www.niftyadmin.cn/n/5331078.html

相关文章

emacs 源码分析(五)

emacs源码分析&#xff08;五&#xff09; 因为emacs的C源码中有大量的宏&#xff0c;在gdb中调试是非常痛苦的&#xff0c;所以有下面的内容&#xff1a; 一个更方便的调试emacs源码的方式 就像在“emacs源码分析&#xff08;四&#xff09;”中提到的那样&#xff0c;要么…

【汇编】实验11 编写子程序

综合一下学过的指令就行了&#xff0c;比较简单。 assume cs:code data segmentdb "Beginners All-purpose Symbolic Instruction Code.",0 data ends code segment begin:mov ax,datamov ds,axmov si,0call lettercmov ax,4c00hint 21h letterc:mov cl,[si]mov ch,…

【cuda】Visual Studio中进行CUDA程序的性能评估

在Visual Studio中使用Nsight进行CUDA应用程序的性能评估可以按照以下步骤进行&#xff1a; 步骤 1: 准备工作 确保已经安装了以下组件&#xff1a; 最新版本的NVIDIA驱动。NVIDIA Nsight Visual Studio Edition&#xff08;通常与CUDA Toolkit一起安装&#xff09;。Micros…

轻松识别Midjourney等AI生成图片,开源GenImage

AIGC时代&#xff0c;人人都可以使用Midjourney、Stable Diffusion等AI产品生成高质量图片&#xff0c;其逼真程度肉眼难以区分真假。这种虚假照片有时会对社会产生不良影响&#xff0c;例如&#xff0c;生成公众人物不雅图片用于散播谣言&#xff1b;合成虚假图片用于金融欺诈…

软件工程复习自用---第三章

需求分析 考题重点 需求分析的任务 需求分析是软件定义时期的最后一个阶段&#xff0c;它的基本任务是准确地回答“系统必须做什么”这个问题 确定对系统的综合要求 分析系统的数据要求 任何一个软件系统本质上都是信息处理系统 数据结构表示数据元素之间的逻辑关系。利用…

Angular系列教程之DOM操作

文章目录 引言1. ElementRef2. Renderer23. ViewChild结论 引言 在Angular中&#xff0c;DOM操作是开发Web应用程序的一个重要方面。通过对DOM进行操作&#xff0c;我们可以动态地修改页面内容、样式和元素行为。本文将详细介绍如何在Angular中进行DOM操作&#xff0c;并提供相…

MS2660:L1 频段卫星导航射频前端低噪声放大器芯片

MS2660 是一款具有高增益、低噪声系数的低噪声放 大器&#xff08;LNA&#xff09;芯片&#xff0c;支持 L1 频段多模式全球卫星定位&#xff0c;可 以应用于 GPS、北斗二代、伽利略、Glonass 等 GNSS 导航 接收机中。芯片采用先进工艺制造&#xff0c;封装采用 2 mm 2 mm …

MATLAB二维与三维绘图实验

本文MATLAB源码&#xff0c;下载后直接打开运行即可[点击跳转下载]-附实验报告https://download.csdn.net/download/Coin_Collecter/88740747 一、实验目的 掌握图形对象属性的基本操作。掌握利用图形对象进行绘图操作的方法。 二、实验内容 利用图形对象绘制曲线&#xff…