【问题标题】:Xamarin iOS/Android: How to delete screenshot when app is runningXamarin iOS/Android:如何在应用程序运行时删除屏幕截图
【发布时间】:2017-03-13 22:27:23
【问题描述】:

我正在使用 Xamarin 表单开发适用于 iOS 和 Android 的移动应用程序。在应用程序中,如果用户在我的应用程序处于活动状态时尝试拍摄,我想删除屏幕截图。 Xamarin 只是在 iOS/Androis SDK 上使用了一个 c# 包装器,所以如果它可以使用 swift/objective-c/java,那么它可以使用 Xamarin。

谁能建议如何做到这一点?

谢谢。

【问题讨论】:

  • 截图存储在相机胶卷中。您可以使用 Photos SDK 删除它们,但它会提示用户许可。
  • 您能否提供示例代码来访问/删除屏幕截图?
  • 你也可以先试试preventing the screen

标签: android ios xamarin.ios xamarin.android xamarin.forms


【解决方案1】:

您可以阻止屏幕截图,而不是删除屏幕截图。 对于 Xamarin Android,您可以在 OnCreate 方法中设置安全标志。

 protected override void OnCreate(Bundle bundle)
 {
    base.OnCreate(bundle);
    this.Window.SetFlags(WindowManagerFlags.Secure, WindowManagerFlags.Secure);
 }

显示标志:表示显示器具有安全视频输出并支持合成安全表面。

安全表面用于防止应用程序渲染到这些表面的内容出现在屏幕截图中或在非安全显示器上查看。

https://developer.xamarin.com/api/field/Android.Views.Display.FlagSecure/

【讨论】:

    猜你喜欢
    • 2020-02-13
    • 2017-10-09
    • 2017-02-27
    • 2011-06-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-03-01
    • 2021-08-18
    相关资源
    最近更新 更多