返回顶部
首页 > 资讯 > 移动开发 >防止Android截屏
  • 602
分享到

防止Android截屏

androidandroidstudio 2023-09-08 11:09:03 602人浏览 八月长安
摘要

一、背景介绍 对于涉及用户个人隐私的应用,比如银行、支付、社交等应用,其界面中可能会涉及到用户的个人信息,比如手机号、身份证号码、交易记录等。如果这些信息被人截屏,就可能会造成用户个人隐私的泄露。 另

一、背景介绍

对于涉及用户个人隐私的应用,比如银行、支付、社交等应用,其界面中可能会涉及到用户的个人信息,比如手机号、身份证号码、交易记录等。如果这些信息被人截屏,就可能会造成用户个人隐私的泄露。
另外一方面,一些企业和开发者可能会开发一些自己的知识产权应用,比如游戏、新闻客户端、电商应用等,这些应用中可能会包含大量独有的内容和资料,如果被人截屏,就可能会遭受知识产权侵犯。

二、Android系统中禁止截屏的实现方式

1. 使用FLAG_SECURE属性

    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        //禁止当前页面截屏        getWindow().addFlags(WindowManager.LayoutParams.FLAG_SECURE);        setContentView(R.layout.activity_main2);    }

2. 使用SurfaceView

在Android系统中,SurfaceView是一种可以在应用中显示图像和视频的组件。而且,SurfaceView还拥有一个特性,即可以禁止截屏。具体操作是在创建SurfaceView时,使用setSecure()方法来设置:

SurfaceView.setSecure(true);

三、实现示例

以下示例为在Activity中使用FLAG_SECURE属性实现禁止截屏:

public class SampleActivity extends Activity {    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        getWindow().setFlags(WindowManager.LayoutParams.FLAG_SECURE, WindowManager.LayoutParams.FLAG_SECURE);        setContentView(R.layout.activity_main);    }}

以下示例为在SurfaceView中使用setSecure()方法实现禁止截屏:

public class SampleSurfaceView extends SurfaceView implements SurfaceHolder.Callback {        public SampleSurfaceView(Context context, AttributeSet attrs) {        super(context, attrs);        getHolder().addCallback(this);        setZOrderOnTop(true);        setSecure(true);    // 禁止截屏    }    @Override    public void surfaceCreated(SurfaceHolder holder) {        // todo something    }    @Override    public void surfaceChanged(SurfaceHolder holder, int fORMat, int width, int height) {        // todo something    }    @Override    public void surfaceDestroyed(SurfaceHolder holder) {        // todo something    }}

四 注意事项

(1)禁止截屏并不等于防抄袭,用户仍然可以通过从另一个手机或者相机拍照等方式来获取屏幕上的内容;

(2)禁止截屏可能会对应用性能产生一定的影响,使用时需斟酌权衡;

(3)禁止截屏只能阻止截屏,无法阻止用户通过拍照、录屏等其他方式获取屏幕上的信息,因此需要在业务场景中进行综合考虑,综合选用多种安全措施。
(4)在某些设备上使用WindowManager.LayoutParams.FLAG_SECURE时要小心(在Samsung Galaxy ACE上进行了验证,例如GT-S5830),这将使视图混乱。看起来像是三星特有的错误。建议以下内容:

if(android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSioN_CODES.HONEYCOMB) {    getWindow().setFlags(WindowManager.LayoutParams.FLAG_SECURE, WindowManager.LayoutParams.FLAG_SECURE);}

来源地址:https://blog.csdn.net/heishuai123/article/details/131058181

--结束END--

本文标题: 防止Android截屏

本文链接: https://lsjlt.com/news/399782.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • 防止Android截屏
    一、背景介绍 对于涉及用户个人隐私的应用,比如银行、支付、社交等应用,其界面中可能会涉及到用户的个人信息,比如手机号、身份证号码、交易记录等。如果这些信息被人截屏,就可能会造成用户个人隐私的泄露。 另...
    99+
    2023-09-08
    android android studio
  • 怎么防止域名被微信屏蔽拦截
    本篇内容主要讲解“怎么防止域名被微信屏蔽拦截”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么防止域名被微信屏蔽拦截”吧!第一步:你需要有一个微信域名检测接口,...
    99+
    2024-04-02
  • Android App保护用户隐私————禁止应用截屏或录屏
    引言        相信大家在使用某些平台应用的时候,都会有限制的规定。        通常情况下,录屏、截图软件都可以在手机的运行过程中进行录屏、截图,普通的平台也不会阻止录屏、截图软件运行。        但是在某些比较敏感的平台上面...
    99+
    2023-08-17
    android 程序人生 java android studio
  • Android 截屏实现、屏幕截图、MediaProjection、ImageReader
    1. 第一步:调起系统捕获屏幕的Intent MainActivity:public void goCaptureIntent() { //第一步.调起系统捕获屏幕的Intent mMediaProjectionManager ...
    99+
    2023-10-08
    android 图像处理 service_mash android-studio android studio
  • uniapp如何设置禁止截屏
    随着移动端应用的发展,越来越多的应用需要考虑安全问题,其中防止截屏成为一个越来越受关注的话题。而对于使用 uni-app 开发移动端应用的开发者来说,如何设置禁止截屏也成为了一项必备技能。首先,我们需要了解什么是截屏。截屏,顾名思义,就是将...
    99+
    2023-05-14
  • Android 屏幕截屏方法汇总
    1、直接使用getWindow().getDecorView().getRootView() 直接使用getWindow().getDecorView().getRootVie...
    99+
    2022-06-06
    方法 方法汇总 Android
  • 解析android截屏问题
    我是基于android2.3.3系统之上的,想必大家应该知道在android源码下面有个文件叫做screencap吧,位于frameworks\base\services\su...
    99+
    2022-06-06
    Android
  • Android实现截屏功能
    导言 目前截屏的方法很多,root不适用,要么其他方法就是有局限性,而其中官方给出的方案最好—MediaProjection 介绍 Android 5.0以后开放的录屏API,取视频...
    99+
    2024-04-02
  • Android 实现屏幕录制和截屏
    在移动开发中,实现屏幕录制和截屏是常见的需求。对于 Android 应用而言,实现屏幕录制和截屏可以帮助开发者更好地测试和调试自己的应用,同时还能够提供一些特定场景下的用户体验。 屏幕录制 Android 应用程序可以通过使用 MediaP...
    99+
    2023-08-18
    android 截屏 录屏
  • Android中关于屏幕的三个小众知识(宽屏适配、禁止截屏和保持屏幕常亮)
    前言宽屏适配、禁止截屏和保持屏幕常亮,这三个与屏幕有关的 Android 开发小众知识,说不定什么时候就派上用场。宽屏适配Android的屏幕适配一直以来都在折磨着我们Android开发者,越来越多的手机厂商趋向于全面屏设计,比如今年出厂的...
    99+
    2023-05-30
  • 如何防止域名被微信拦截
    这篇文章主要为大家展示了“如何防止域名被微信拦截”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“如何防止域名被微信拦截”这篇文章吧。技术讲解1、仿公众号软文系统想要宣传软文做到防封,就必须将软文脱...
    99+
    2023-06-02
  • Android截屏截图的几种方法总结
     Android截屏  Android截屏的原理:获取具体需要截屏的区域的Bitmap,然后绘制在画布上,保存为图片后进行分享或者其它用途一、Activity截屏截Activity界面(包含空白的状态栏) public static B...
    99+
    2023-05-31
    android 截屏 截图
  • Vue如何防止白屏添加首屏动画
    这篇文章将为大家详细讲解有关Vue如何防止白屏添加首屏动画,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。单页应用有个无法避免的问题就是首屏加载慢,虽然可以通过gzip、路...
    99+
    2024-04-02
  • android截屏功能实现方式汇总【包括后台截屏】
    前言 对于android实现截屏功能,简单讲述一下可行的方法和之间的利弊 使用canvas View v = getWindow().getDecorView();Bitmap bitmap = Bitmap.createBitmap(...
    99+
    2023-08-16
    android android studio ide
  • 浅谈Android截屏和指定View生成截图
    目录当前页面截图(截取整个屏幕)截取常用的View截取ScrollView截取ListView截取RecyclerView截取WebView当前页面截图(截取整个屏幕) 截取当前Ac...
    99+
    2024-04-02
  • 怎么用Vue防止白屏添加首屏动画
    今天小编给大家分享一下怎么用Vue防止白屏添加首屏动画的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。单页应用有个无法避免的问...
    99+
    2023-07-04
  • 详解Android截屏事件监听
    1. 前言 Android系统没有直接对截屏事件监听的接口,也没有广播,只能自己动手来丰衣足食,一般有三种方法。 利用FileObserver监听某个目录中资源变化情况 ...
    99+
    2022-06-06
    监听 事件 Android
  • android截屏功能实现代码
    android开发中通过View的getDrawingCache方法可以达到截屏的目的,只是缺少状态栏! 原始界面 截屏得到的图片 代码实现 1. 添加权限(Android...
    99+
    2022-06-06
    Android
  • Android滚动截屏如何实现
    要实现Android滚动截屏,可以使用以下步骤:1. 获取屏幕的宽度和高度。可以通过以下代码获取:```DisplayMetrics...
    99+
    2023-08-24
    Android
  • Android 截屏代码几种方法
    在Android中,可以使用以下几种方法来实现截屏: 使用MediaProjection API(需要API级别21及以上): private void takeScreenshot() { if (Build.VERSION.SDK...
    99+
    2023-10-26
    android
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作