为了安卓APP的安全,特殊需求时设置当前页面禁止系统截屏、录制,例如开发漫画APP。
代码:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
getWindow().setFlags(WindowManager.LayoutParams.FLAG_SECURE, WindowManager.LayoutParams.FLAG_SECURE);
initView();
}
只需要增加一行:
getWindow().setFlags(WindowManager.LayoutParams.FLAG_SECURE, WindowManager.LayoutParams.FLAG_SECURE);
其中属性FLAG_SECURE:
该属性能防止屏幕被截图和录制。这个属性就是可以防止当前Activity不会被录制。
通过反编译程序在Smali文件中找到这段代码:
其中0x2000就是WindowManager.LayoutParams.FLAG_SECURE。
有人说,在Smali文件中找到这段代码删除掉,就可以任意进行手机截屏,我没试过。