【发布时间】:2018-07-17 13:02:53
【问题描述】:
我使用 react-native 制作了一个移动应用程序(目前只有 android,它不是 expo 应用程序),我想禁止用户在应用程序打开时截取屏幕截图。我知道完全禁用它是不可能的,但我想让截屏至少变得更加困难。我找到了一些示例,但我不知道如何实现它们,例如:
How to prevent Screen Capture in Android
我试着说:
getWindow().setFlags(WindowManager.LayoutParams.FLAG_SECURE,
WindowManager.LayoutParams.FLAG_SECURE);
在我的app_name/android/app/src/main/java/com/app_name/MainApplication.java 文件中,在onCreate() 方法中,然后我无法编译应用程序以查看它是否有效。当我尝试创建这样的类时也是如此:
How do I prevent Android taking a screenshot when my app goes to the background?
有一些 npm-s 可以解决这个问题,但我在安装/使用它们时也没有成功。
有谁知道如何设置一个标志,以便我的 react-native (android) 应用程序的用户在使用该应用程序时无法截取屏幕截图?
我在android-studio中添加:getWindow().setFlags然后按Build时得到的错误是:
错误:WindowManager 包不存在
我也试过这个包:
yarn add react-native-anti-screenshot
yarn add v1.7.0
[1/4] Resolving packages...
error An unexpected error occurred: "https://registry.yarnpkg.com/react-native-anti-screenshot: Not found".
info If you think this is a bug, please open a bug report with the information provided in "/home/mislav/workspace2/umye/yarn-error.log".
info Visit https://yarnpkg.com/en/docs/cli/add for documentation about this command.
似乎没有简单的解决方案来禁用屏幕截图,还是我错过了什么?
我是开发移动应用程序的新手,所以如果您能帮助我尽可能简单地解释一下,请告诉我。
谢谢!
【问题讨论】:
-
设置在
MainActivity.java而不是MainApplication.java -
请详细说明这些句子
I can't compile the app.. 为什么编译不出来?错误是什么?I had also no success in installing/using them...您遇到了什么具体问题?
标签: android android-studio react-native react-native-android