【问题标题】:How to prevent iOS screenshot in react-native如何在 react-native 中防止 iOS 截图
【发布时间】:2020-02-06 20:33:21
【问题描述】:

在我的应用程序中,我想在 React-native 中禁用 IOS 的屏幕截图功能。

请建议我任何可以在 IOS 中禁用屏幕截图的工作包或任何本机代码。

【问题讨论】:

  • 您是否尝试过 FLAG_SECURE 选项

标签: ios react-native react-native-ios


【解决方案1】:

这是库反应原生阻止截图的解决方案之一:,查看链接rn-screenshot

通过在 appDelegate.m 中添加 2 两个来覆盖屏幕

- (void)applicationWillResignActive:(UIApplication *)application {

// fill screen with our own colour
UIView *colourView = [[UIView alloc]initWithFrame:self.window.frame];
colourView.backgroundColor = [UIColor whiteColor];
colourView.tag = 1234;
colourView.alpha = 0;
[self.window addSubview:colourView];
[self.window bringSubviewToFront:colourView];

// fade in the view
[UIView animateWithDuration:0.5 animations:^{
  colourView.alpha = 1;
}];
}

- (void)applicationDidBecomeActive:(UIApplication \*)application {
// grab a reference to our coloured view
UIView \*colourView = [self.window viewWithTag:1234];
// fade away colour view from main view
[UIView animateWithDuration:0.5 animations:^{
colourView.alpha = 0;
} completion:^(BOOL finished) {
// remove when finished fading
[colourView removeFromSuperview];
}];
}

【讨论】:

  • 此代码不适用于现代 react-native 版本。
  • 我还没有实施,但正如你所说,这不起作用,也许在 ios 中你无法阻止
猜你喜欢
  • 2021-10-05
  • 2021-05-12
  • 1970-01-01
  • 2018-04-16
  • 2023-01-17
  • 1970-01-01
  • 1970-01-01
  • 2011-09-27
相关资源
最近更新 更多