zoukankan      html  css  js  c++  java
  • 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  。

  • 相关阅读:
    JS进阶篇2---函数防抖(debounce)
    vue 的"响应式"是什么意思/ Object.freeze( ) 阻止数据响应
    try{...}catch(){...}语句的使用
    总结一下ES6的promise
    《ES6标准入门》(六)之Promise对象2——then()和catch()方法
    大白话讲解Promise(一)
    解决VSCode单击文件会替换已经打开文件的问题
    通俗理解“回调函数”
    vue中的时间格式处理
    vue之项目踩坑笔记
  • 原文地址:https://www.cnblogs.com/shiyix/p/3656195.html
Copyright © 2011-2022 走看看