As part of the Telerik “Q1.2012 Beta” package for Windows Phone we are releasing a new set of "Application Building Blocks" components. You can find more info on the idea of Application Building Blocks here.
Part of the application building blocks are the RadTrialApplicationReminder and RadTrialFeatureReminder components. With these 2 components developers can implement and adjust the trial functionality of their applications. You can implement application-wide trial notifications, or feature-specific trial notifications, with a lot of configurable options. Both components support time-based and usage-based trial restrictions. Here is the list of the implemented features:
The timeline below summarizes the logic of reminder messages display:
Here is how a sample trial ended notification looks like:
Using the trial reminder is quite simple and is only a matter of configuration plus one line of code for notification.
1. Define and configure the application trial reminder in your App class:
private
static
RadTrialApplicationReminder trialReminder;
public
static
RadTrialApplicationReminder TrialReminder
{
get
{
if
(trialReminder !=
null
)
{
return
trialReminder;
}
return
new
RadTrialApplicationReminder()
{
AllowedTrialUsageCount = 5,
// maximum number of app runs until trial is expired
FreeUsageCount = 2,
// number of app runs when no reminder will be displayed
OccurrenceUsageCount = 1
// reminder will be displayed on every run after the free usage is over
};
}
}
2. Notify end users for trial when needed:
App.TrialReminder.Notify();
This code is best to be placed in the first page of your application.
3. Disabling application functionality when trial is expired:
PaidButton.IsEnabled = !App.TrialReminder.IsTrialExpired;
You can use the IsTrialExpired property to disable specific functionality in your applications.
There are many real world scenarios when you will want to have trial for a specific paid feature(s) and to leave the usage for the rest of application completely free. In this case you can use the RadTrialFeatureReminder. This component has the same logic for displaying the reminder messages as the ApplicationReminder, with two additional properties – UsageCount and FeatureId.
Here is how to use the trial feature reminder:
1. Define and configure the reminder:
paidFeatureReminder =
new
RadTrialFeatureReminder()
{
FreeUsageCount = 1,
OccurrenceUsageCount = 2,
AllowedTrialUsageCount = 7,
FeatureId = 1
};
2. When feature will be executed:
private
void
Button_Click(
object
sender, RoutedEventArgs e)
{
paidFeatureReminder.UsageCount++;
paidFeatureReminder.Notify();
if
(paidFeatureReminder.IsTrialExpired)
{
return
;
}
// perform the feature actions
}
As you can see with these two components you can implement very easy and in a flexible manner the trial experience of your application.
I hope that this component will be very useful for you - please give it a try during the beta period and let us know if you have suggestions for enhancements.
You can also find me on twitter @valiostoychev – I’ll be happy to discuss any feedback you have!
Valentin Stoychev (@ValioStoychev) for long has been part of Telerik and worked on almost every UI suite that came out of Telerik. Valio now works as a Product Manager and strives to make every customer a successful customer.