• Windows Phone APP中禁用截图


    Windows Phone 8 有系统自带的截图功能,快捷键:电源键+Win键,可以随意截图。

    Windows Phone 更新GDR2后新增了一个隐藏功能,允许APP禁用截图功能。

    PhoneApplicationPage.IsScreenCaptureEnabled
    

     这个隐藏的属性需要通过反射来访问和修改状态。

     public static  class PhoneApplicationPageExtensionMethods
        {

        public
    static bool CanSetScreenCaptureEnabled(this PhoneApplicationPage page) { return Environment.OSVersion.Version >= new Version(8, 0, 10322); } public static void SetScreenCaptureEnabled(this PhoneApplicationPage page, bool enabled) { var propertyInfo = typeof(PhoneApplicationPage).GetProperty("IsScreenCaptureEnabled"); if (propertyInfo == null) { throw new NotSupportedException("Not supported in this Windows Phone version!"); } propertyInfo.SetValue(page, enabled); } public static bool GetScreenCaptureEnabled(this PhoneApplicationPage page) { var propertyInfo = typeof(PhoneApplicationPage).GetProperty("IsScreenCaptureEnabled"); if (propertyInfo == null) { throw new NotSupportedException("Not supported in this Windows Phone version!"); } return (bool)propertyInfo.GetValue(page); } }
    }

    调用CanSetScreenCaptureEnabled()方法检测Windows Phone版本是否符合要求(version 8.0.10322以上)。符合条件,然后就通过扩展方法GetScreenCaptureEnabled()和SetScreenCaptureEnabled()来修改PhoneApplicationPage.IsScreenCaptureEnabled属性。
    使用:

          // 构造函数
            public MainPage()
            {
                InitializeComponent();
    
                if (this.CanSetScreenCaptureEnabled())
                {
                    this.SetScreenCaptureEnabled(false);
                }
            }

    目前在真机(系统为WP8,WP8.1上效果如何不懂)上测试有效,没弄懂模拟器如何像真机一样截图,所以模拟器上没成。

    效果如下图

    以后就有些东西不能截图了( ╯□╰ )

     对了,需要看原文的戳:Disabling screenshot functionality in a Windows Phone app  。

  • 相关阅读:
    Balanced Binary Tree
    Minimum Depth of Binary Tree
    Path Sum
    Flatten Binary Tree to Linked List
    Distinct Subsequences
    Chp3: Stacks and Queue
    Chp2: Linked List
    Populating Next Right Pointers in Each Node
    Valid Palindrome
    Binary Tree Maximum Path Sum
  • 原文地址:https://www.cnblogs.com/shiyix/p/3656195.html
Copyright © 2020-2023  润新知