创建WP8试用应用

参考资料:

创建 Windows Phone 的试用应用

如何在 Windows Phone 应用中实现试用体验

Windows Phone 7 开发 31 日谈——第23日:提供试用版应用程序

对资料总结下:

如何检查应用中的试用许可证:

在App.xaml.cs中添加下面两行

using Microsoft.Phone.Marketplace;

private static LicenseInformation _licenseInfo = new LicenseInformation();

使用_licenseInfo.IsTrial()方法,即读取LicenseInformation对象上的IsTrial属性,返回True时为试用版,否则为付费版

但是实际上在调试时,应用的真实许可信息只有在发布到商店后才能使用,所以再在App.xaml.cs里使用以下两段代码。使用后,在调试时将执行#if Debug与#else之间的代码,进行手动设置是否为试用版;在释放模式下时,将执行#else与#endif之间的代码,即读取LicenseInformation对象上的IsTrial属性来设置是否试用版。

        private static bool _isTrial = true;
        public bool IsTrial
        {
            get
            {
                return _isTrial;
            }
        }
        /// <summary>
        /// Check the current license information for this application
        /// </summary>
        private void CheckLicense()
        {
            // When debugging, we want to simulate a trial mode experience. The following conditional allows us to set the _isTrial
            // property to simulate trial mode being on or off.
#if DEBUG
            string message = "This sample demonstrates the implementation of a trial mode in an application." +
                               "Press ‘OK‘ to simulate trial mode. Press ‘Cancel‘ to run the application in normal mode.";
            if (MessageBox.Show(message, "Debug Trial",
                 MessageBoxButton.OKCancel) == MessageBoxResult.OK)
            {
                _isTrial = true;
            }
            else
            {
                _isTrial = false;
            }
#else
            _isTrial = _licenseInfo.IsTrial();
#endif
        }

在应用开始或恢复时都需要检查应用的许可证:

即在App.xaml.cs中的Application_Launching和Application_Activated事件中添加试用版的判断方法CheckLicense()

使用当前应用的许可证信息:

由于在App.xaml.cs里设置了IsTrial属性来读取许可证属性,因此我们可以通过使用(Application.Current as App).IsTrial属性来直接获取应用的许可证信息,避免重复使用IsTrial()方法,该方法一次典型调用耗时60毫秒或更多。

时间: 2024-11-13 13:25:50

创建WP8试用应用的相关文章

WP7/WP8/WP8.1设置存储的区别

最近做的一个软件,由于最初是针对WP7的,现在在只能创建WP8.1的visual studio 2013上转换为了WP8的. 由于要保存字体大小.背景颜色.JSON三个数据,一直使用的是WP7下的存储方式: IsolatedStorageSettings FontSizeSaved = IsolatedStorageSettings.ApplicationSettings; //定义 FontSizeSaved["FontSizeSaved"] = sliderText.Value;

在 Web 应用中创建 Node.js 应用程序

本分步指南将通过 Azure Web 应用帮助您启动并运行示例 Node.JS 应用程序.除 Node.JS 外,Azure Web 应用还支持其他语言,如 PHP..NET.Node.JS.Python.Ruby 等,本教程重点介绍了 Java(其他语言将遵循同样的流程).在本教程中完成的所有操作均符合 1元试用条件. 开始之前 运行本示例之前,请在本地安装以下必备组件: 下载并安装 git 下载并安装 Node.js 和 NPM 下载并安装 Azure CLI 2.0 如果没有 Azure

在 Azure Web 应用中创建 PHP 应用程序

本分步指南将通过 Azure Web 应用帮助您启动并运行示例 PHP 应用程序.除 PHP 外,Azure Web 应用还支持其他语言,如 Java..NET.Node.JS.Python.Ruby 等,本教程重点介绍了 PHP(其他语言将遵循同样的流程).在本教程中完成的所有操作均符合 1 元试用条件. 开始之前 运行本示例之前,请在本地安装以下必备组件: 下载并安装 git 下载并安装 PHP 如果没有 Azure 订阅,可在开始前创建一个试用帐户. 步骤1:下载示例 1. 首先在计算机中

在 Azure Web 应用中创建 .NET 应用程序

本快速入门帮助你在数分钟内将你的第一个 ASP.NET Web 应用部署到 Azure 应用服务.完成本教程后,你将能够在云中启动并运行一个简单的 Web 应用.在本教程中完成的所有操作均符合1 元试用条件. 开始之前 本教程演示如何使用 Visual Studio 2017 构建 ASP.NET Web 应用并将其部署到 Azure. 如果尚未安装 Visual Studio 2017,可以下载并使用免费的 Visual Studio 2017 Community Edition. 在安装 V

在 Azure Web 应用中创建 Java 应用程序

本分步指南将通过 Azure Web 应用帮助您启动并运行示例 Java 应用程序.除 Java 外,Azure Web 应用还支持其他语言,如 PHP..NET.Node.JS.Python.Ruby 等,本教程重点介绍了 Java(其他语言将遵循同样的流程).在本教程中完成的所有操作均符合 1元试用条件. 开始之前 运行本示例之前,请在本地安装以下必备组件: 下载并安装 git Azure CLI 2.0 如果没有 Azure 订阅,可在开始前创建一个试用帐户. 步骤1:下载示例 1. 首先

Spring入门案例 idea创建Spring项目

spring入门案例 idea创建spring项目 Spring介绍 Spring概述 Spring是一个开源框架,Spring是2003年兴起的轻量级java开发框架,由Rod Johnson 在其著作 Expert One-On-One J2EE Development and Design 中阐述的部分理念和原形衍生而来.它是为了解决企业级开发的复杂性而创建的.Spring使用基本的javaBaen来完成以前只可能由EJB完成的事情,然而Spring的用途不仅限于服务器端的开发,从简单性.

利用 Spring Initializr 快速创建SpringBoot应用

利用 Spring Initializr 快速创建SpringBoot应用 Spring Initializr是Spring 官方的引用构建工具,Idea Ultimate版本默认对其支持 本节咱们学习Spring Boot应用的快速创建 学习视频: http://www.itlaoqi.com/chapter/1683.html 源码地址: QQ群 814077650 , 群共享中自助下载 老齐的官网: itlaoqi.com (更多干货就在其中) 操作流程 Create new projec

通过java连接mysql总结

简介:通过java连接mysql需要用到JDBC驱动.JDBC驱动安装在mysql-client客户端,mysql-server服务端不需要安装. 数据库安装初始化略.测试用到的命令: 1.创建测试用库,表,字段: create database score; use score; create table score(id nvarchar(10),stu_id nvarchar(10),c_name nvarchar(10),grade nvarchar(10)); insert into

从表中随机返回n条记录

创建测试用表: CREATE OR REPLACE VIEW V AS SELECT 'a' AS c FROM dual UNION ALL SELECT 'b' AS c FROM dual UNION ALL SELECT 'c' AS c FROM dual UNION ALL SELECT 'd' AS c FROM dual UNION ALL SELECT 'e' AS c FROM dual; SELECT * FROM v; 查询语句如下: SELECT c FROM (SEL