Here are a few common expiration scenarios and your options for handling them. For a trial version of a utility, you might consider setting an expiration date, or limiting the features that a potential buyer can use.įor most non-gaming apps, setting an expiration date works well, because users can develop a good understanding of the complete app. For a trial version of a game, a good strategy is to limit the amount of game content that a user can play. Think about the type of app you're making and what a good trial or expiration strategy is for it. Or, your trial app can disable certain features, or display regular messages asking the user to buy it.
Your trial app can be full-featured, but have in-app ad banners where the paid-for version doesn't.
When considering these features, make sure you can implement them in a way that will work in all license states.Īlso, decide how you want to handle changes to the app's license while the app is running. Typically, you put the functions that depend on the license state in a conditional block, as we describe in the next step. The current license state of your app is stored as properties of the LicenseInformation class. Step 1: Pick the features you want to enable or disable during the trial period PrerequisitesĪ Windows app in which to add features for customers to buy. For more information about implementing trial functionality using the namespace, see this article. The namespace was introduced in Windows 10, version 1607, and it can only be used in projects that target Windows 10 Anniversary Edition (10.0 Build 14393) or a later release in Visual Studio. The namespace supports the latest add-on types, such as Store-managed consumable add-ons and subscriptions, and is designed to be compatible with future types of products and features supported by Partner Center and the Store. This namespace is no longer being updated with new features, and we recommend that you use the namespace instead.
This article demonstrates how to use members of the namespace to implement trial functionality.