文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>Windows phone 7 31天学习笔记 23:提供程序适用版本

Windows phone 7 31天学习笔记 23:提供程序适用版本

时间:2011-01-05  来源:MagicShui

今天我将会说关于试用版的问题。例如,我们希望程序创建一个50级的程序,但是只想用户免费玩前5级,他们需要付费才能玩。本文将会告诉你怎么做。

使用LicenseInformaton类

通过添加Microsoft.Phone.Marketplace引用到自己的页面中,我们能够触及到liscenseInformation类。他将会与“付费”状态相关联。

using Microsoft.Phone.Marketplace;
下一步是真实的使用这个类:
LicenseInformation li = new LicenseInformation();
最后,它具有一个boolean值被称为IsTrail(),不需要惊讶,他允许我们检查是否为Trail状态。你可以这样使用它们:
if (!li.IsTrial())
{
        //Do something that only paid users can do.
}
else
{
        //Do something that all users, trial or paid, can do.
}

测试使用模式

不行的是没有内建的机制来测试使用或是已付款,我解决的方法很简单。我使用同样的IF语句来进行测试,他将会检查你是否在测试模式,然后设置IsolatedStorageSetting,

下面是整个App()函数,包含默认的代码,我就爱那个trailMode设置为“TRUE”。如下:

IsolatedStorageSettings settings = IsolatedStorageSettings.ApplicationSettings;

public App()
{
        // Global handler for uncaught exceptions. 
        UnhandledException += Application_UnhandledException;

        settings["trialMode"] = false;

        // Show graphics profiling information while debugging.
        if (System.Diagnostics.Debugger.IsAttached)
        {
                settings["trialMode"] = true;
                                
                // Display the current frame rate counters.
                Application.Current.Host.Settings.EnableFrameRateCounter = true;

                // Show the areas of the app that are being redrawn in each frame.
                //Application.Current.Host.Settings.EnableRedrawRegions = true;

                // Enable non-production analysis visualization mode, 
                // which shows areas of a page that are being GPU accelerated with a colored overlay.
                //Application.Current.Host.Settings.EnableCacheVisualization = true;
        }

        // Standard Silverlight initialization
        InitializeComponent();

        // Phone-specific initialization
        InitializePhoneApplication();
}

使用我以前的代码,我需要调整一些语句,我将它们做了如下的改变:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Animation;
using System.Windows.Shapes;
using Microsoft.Phone.Controls;
using Microsoft.Phone.Marketplace;
using System.IO.IsolatedStorage;

namespace Day23_UsingTrial
{
        public partial class MainPage : PhoneApplicationPage
        {
                LicenseInformation li = new LicenseInformation();
                IsolatedStorageSettings settings = IsolatedStorageSettings.ApplicationSettings;
                
                // Constructor
                public MainPage()
                {
                        InitializeComponent();

                        if (!li.IsTrial()||(bool)settings["trialMode"] == false)
                        {
                                //Do something that only paid users can do.
                        }
                        else if (li.IsTrial() || (bool)settings["trialMode"] == true)
                        {
                                //Do something that all users, trial or paid, can do.
                        }
                }
        }
}
这也许是最好的一种测试方式吧。
相关阅读 更多 +
排行榜 更多 +
打螺丝高手

打螺丝高手

模拟经营 下载
解救火柴人计划安卓版

解救火柴人计划安卓版

体育竞技 下载
鸡生化精英安卓版

鸡生化精英安卓版

飞行射击 下载