Tag Archives: monetization

Monetizing your app: Use interstitial banner as fallback for interstitial video

Do you show ads while loading your app or between levels of your game (also known as interstitial ads)?

Microsoft Advertising now offers interstitial banners as an option for ads in your app. Interstitial ads have a higher monetization value, but have a lower fill rate in many markets. You can choose to use an interstitial banner when a video ad is not available.

Another option is to request both a video ad and an interstitial banner ad and show whichever ad is ready at the time of loading the app.

The code below is an example of how you can show either a video ad or a banner ad – whichever is ready first for you to load your app.

Add this to the cs file of the page that you want to load the interstitial ad:

//Add the Ads reference:
		using Microsoft.Advertising.WinRT.UI;
	//Initialize the ads:
		InterstitialAd MyVideoAd;
		InterstitialAd MyBannerAd;
	//Intiialize the Adunits:
		var MyAppID = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx";
             // video adunit
            var MyVideoAdUnitId = "xxxxxxxx";
            // Interstitial banner adunit
            var MyAdUnitId = "xxxxxxxxx";
            //Request the ads:
            // instantiate an InterstitialAd
            MyVideoAd = new InterstitialAd();
            MyBannerAd = new InterstitialAd();
           // wire up all 4 events, see below for function template
            MyVideoAd.AdReady += MyVideoAd_AdReady;
            MyVideoAd.ErrorOccurred += MyVideoAd_ErrorOccurred;
            MyVideoAd.Completed += MyVideoAd_Completed;
            MyVideoAd.Cancelled += MyVideoAd_Cancelled;
            MyBannerAd.AdReady += MyBannerAd_AdReady;
            // pre-fetch an ad 30-60 seconds before you need it
            MyVideoAd.RequestAd(AdType.Video, MyAppID, MyVideoAdUnitId);
            MyBannerAd.RequestAd(AdType.Display, MyAppID, MyAdUnitId);

	//write the code for the events
void MyVideoAd_AdReady(object sender, object e)
            // code
            if (!bannerready)
                videoready = true;
        void MyBannerAd_AdReady(object sender, object e)
            // code
            if (!videoready)
                bannerready = true;
        void MyVideoAd_ErrorOccurred(object sender, AdErrorEventArgs e)
            var A = MyVideoAd.State;

        void MyVideoAd_Completed(object sender, object e)
            var A = MyVideoAd.State;
        void MyVideoAd_Cancelled(object sender, object e)
            var A = MyVideoAd.State;

Stay tuned over the next few weeks for additional tips to increase ad monetization.

A New Monetization Opportunity: Application Extensions + Microsoft Affiliate Program

Looking for more ways to monetize your app? App developers can boost their revenue through the Microsoft Affiliate Program. As an affiliate you can earn revenue by promoting content in the Windows Store and Microsoft Store, such as apps, games, music and video.

Developers who place links and/or banners on their apps directing users to the Windows Store will receive a commission for each online sale driven by that in-app marketing. You may have participated in other affiliate programs where you get a commission when someone buys something that you link to – the Microsoft Affiliate Program works in much the same way, but is more expansive.

A New Opportunity

As an app developer, this is a golden opportunity to open a new revenue stream for Universal Windows Apps.

Not only do you earn commission on the link that you directly sent the user if he or she purchases an extension, but you also earn up to 10% commission on anything else the user buys online from Microsoft within a window of time lasting up to 14 days.

By using the Affiliate program tools for creating, promoting and tracking campaigns, you can maximize revenue. This includes commission on apps, in-app purchases, games, movies, music downloads, Groove Music Passes, Microsoft Office and even hardware.

App Services/App Extensions + Microsoft Affiliate Program

Now when you combine the Microsoft Affiliate Program with app extensibility, new monetization opportunities open up on the Windows platform that just aren’t available on other app platforms. Three different types of app developers could benefit from combining App Services and Extensions with the Microsoft Affiliate Program:

  1. App developers who host extensibility to their apps can now earn commission on sales of extensions and other store purchases triggered by the installation of those extensions.
  2. App developers who build extensions can now have a store to put their extension in and their extensions get discovered in the context of the app when they are needed.
  3. App developers can make it easy to use their app’s service with the Microsoft Affiliate Program.

To help you get set up to participate in this affiliate-marketing program, let’s talk about App Extensions and App Services.

The Challenge with App Extensibility

The basics are simple: An app defines a plug-in or extensibility protocol, publishes it and then finds ways of getting extension developers to build extensions using the protocol.

Applications have had extensibility mechanisms for years. Desktop apps such as Microsoft Word, Microsoft Outlook, Adobe Photoshop, Visual Studio and Google Chrome have enabled third-party developers to build extensions to enhance and extend the apps in interesting ways, and even in directions that the app developer hadn’t imagined.

But though they are quite often easy to build, there are several challenges with the business of building App Extensions:

  • Extension developers would have to run their own commerce engine or trialware mechanism.
  • Promotional ability is typically limited to being listed in a catalog of available extensions.
  • The best option is quite often to be bought by the app developer.
  • The extension is strictly tied to the protocol and deployment mechanism defined by the host app and making it work with another vendor’s app is an additional effort.

Universal Windows Platform extends App Services

Windows 10 makes this process easier: Apps can now expose App Services to other apps, extending their capabilities.

Apps can even expose multiple services, each with a different protocol, depending on the usage model. The communication between apps via App Services is through an async protocol sending value sets of simple values – you can even share files via tokens with the SharedStorageAccessManager class.

To use an app’s service, you need to know the name of the app, the name of the service and the protocol that it’s expecting. Once you know that, the calling app can send and receive message to and from the app that is running the app service.

App Extensions enhance App Services

A new feature in the Windows Anniversary Edition that works great with App Services is App Extensions.

With App Extensions, an extensible app declares in its manifest that it hosts extensions with a specific named extension mechanism. App extension developers then declare in their apps’ manifests that their extension implements that named extension mechanism.

A new feature in the Microsoft Edge browser is this extension mechanism so that third-party developers can extend Microsoft Edge to add new capabilities. Apps that host extensions can also use the AppExtensionCatalog API to list all of the extensions that are installed and available on the system for the extension protocols declared in the app’s manifest.

As an example, here’s the manifest of my Journalist app, which hosts two different types of extensions:

<uap3:Extension Category="windows.appExtensionHost">

The catalog exposes metadata for each extension, including its display name, package family name, and it could even expose the service name – everything necessary to call its app service. My Animated GIF Creator app then declares this in its manifest:

<uap3:Extension Category="windows.appExtension">
    <uap3:AppExtension Name="Journalist.Export.1" 
        Id="AnimatedGifTranscoder" PublicFolder="Public" 

The only thing missing for an app that hosts extensions is a catalog of available extensions that are not installed on the system but available in the store.

Continuing the example with my Journalist app, I show a list of extensions available to install.

This could be a hardcoded list or a list retrieved from an app service, but the point is that as an app developer, I can detect if a specific app extension is available; if it isn’t, I can provide the UI to install it.

The Install button for each extension will take the user to the page for the app in the Windows Store so he or she can purchase (if it’s not free) and install the app – and this is where the new monetization opportunity is – the Microsoft Affiliate Program. Once the user gets into the store with that affiliate link, the developer can earn commission revenue on ANYTHING the user purchases within the time window mentioned above.

If the user clicks on install, the app will launch a web URL for the Microsoft Affiliate Program and then take the user to a product page for extension in the Windows Store (one extra hop). In another place in my Journalist app, I show related journaling supplies and I used the affiliate program’s link-builder tools to build links to the products circled below:

More Details

As you can see, as an app developer, I’m super excited about app extension and this new opportunity.  Here are some additional details that will help you on your new UWP monetization opportunity:

Monetize your game app with Playtem ads

Here’s something any would-be game developer who wants to find a good monetization strategy needs to know. The psychology of gaming is weird. I have a friend who hates to pay for games. Her favorite kind of games are the freemium ones that make their money off of in-app purchases. Basically, you can play the whole game without ever paying a dime, but you can advance much more quickly if you are willing to spend money for better in-app gear or extra lives.

My friend makes a special point of persevering past really difficult boss levels with low-end gear or putting in extra hours to gain experience points when she could have bought an experience multiplier for just a few dollars. In her mind, she’s beating not only the game itself but also, at a meta-level, the economic rules underpinning how games are distributed.

Like I said, the psychology of gaming is weird. Game and app developers learned long ago that people don’t like to spend money on digital content, even when it’s only a couple of bucks. A price tag can even be a drag on download numbers. So instead of charging for games, developers discovered they could make more money by monetizing games through ads or in-app purchases. Someone who doesn’t want to pay $2 for a game might all-the-same be willing to pay $20 or more for in-app content once they have invested several hours in gameplay. But for people like my friend, that model doesn’t work.

Which is why Playtem’s monetization strategy is really interesting. The platform, currently available for Unity games deployed to UWP, iOS and Android, combines both ads and in-app purchases.

In-app purchases are successful because they provide a low barrier to entry for the user, and typically generate additional revenue when the player is enjoying the game the most. Native Ads are successful because they underwrite a player’s fun and generate click-throughs for the advertiser. Playtem combines the two models at key satisfaction moments in a game, like the completion of a level, by allowing an advertiser to reward players with free in-app content.

The visual style of the ad-funded in-app content is integrated into the natural style of the game to provide a continuous experience and also a sense that the ads are an organic outgrowth of the game. Because the ads only appear at intermittent gameplay moments when the player is most attentive, advertisers get the maximum benefit from these ads. Game developers, in turn, avoid negative comments about overly intrusive ads.

To make the ad experience even smoother, the player is not required to do anything to receive the free content. There will be an advertiser link in the ad itself, but the player gets the reward whether he clicks on it or not.

Configuration and code for Playtem ads

To set up your Unity game to use Playtem ads, you just need to do the following steps…

  • Add the Unity package to your game.
  • Contact Playtem to get an API key and provide samples of your game’s visual style.
  • Configure your app to support the Playtem platform.
  • Add the appropriate code.

You want to make sure that your app is configured to use the .NET scripting backend and not IL2CPP (.NET is the default).

You also need to configure your app capabilities, in the Publishing Settings tab in Unity, to include InternetClient, InternetClientServer and PrivateNetworkClientServer.

The Playtem API has only four events that need to be handled. At appropriate moments in your game, you will create an instance of the PlaytemNetwork class, set up your event handlers, and then call the TryToLoadAd method.

// initialize object
PlaytemNetwork playtemNetwork = new PlaytemNetwork(_apiKeyString, _userIdString);

// set up event handlers
            playtemNetwork.OnAdLoaded = delegate ()
	         // if we successfully downloaded an ad, show it		
            playtemNetwork.OnAdLoadingFailed = delegate (string message)
                // handle failure to load
            playtemNetwork.OnRewarded = delegate (string message)
                // additional code for in-app purchase reward
            playtemNetwork.OnAdClosed = delegate ()
                // continue game after ad closed

// start grabbing an ad from the Playtem network

Casual gaming on devices is constantly changing, and developers are always trying to find the best model for making a good income off of their games. Playtem’s model offers a unique way to do this that improves the app experience for the gamer as well as the game developer. Learn more by checking out Playtem’s demo and their documentation for developers.

AdDuplex – your one stop shop for Windows app and game marketing and monetization

From the early days of the Windows Phone 7 Marketplace to the modern days of Windows Store, AdDuplex was and is committed to providing top-notch advertising solutions for app and game developers, publishers and advertisers.

Premier cross-promotion network

Back in 2011, AdDuplex launched the first cross-promotion network for Windows Phone 7 apps and empowered thousands of independent developers to advertise their apps for free by helping fellow app and game creators. Apps that got initial attention in the early days of the ecosystem received an overall boost and enjoyed the early exposure for years to come. AdDuplex helped such apps by utilizing their ad space before they had reached a level of popularity that made monetization efforts worthwhile.

AdDuplex cross-promotion network works as an enabler of advertising exchange between participating apps and games. Developers place a line of code into their apps and start promoting other apps on the network. Those other apps return the favor. The exchange ratio is 10:8, meaning that for every 10 ad impressions your app shows, you are advertised eight times in other apps. The remaining two impressions are used by AdDuplex to help commercial advertisers reach their potential users and support future development of the platform.

Since 2011, more than 10,000 apps joined AdDuplex and use it to accelerate and amend their growth efforts.

User acquisition on Windows

Free cross-promotion is great, but it limits the velocity of your growth to a pretty linear scale. What if you want to grow faster and have a budget for that? AdDuplex provides an opportunity for app and game publishers to reach more users faster via paid advertising campaigns.

Publishers from all over the world use AdDuplex to both jumpstart their new apps and games, and acquire new users for their other apps and games.

Windows 10 era

The day after the initial public Windows 10 launch, AdDuplex was ready with an SDK for UWP apps. It lets developers use the same SDK and even the same ad units across desktop and mobile, and is now ready for your apps on Xbox One.

App developers and advertisers can target various versions of Windows Phone and Windows across all main device families and reach exactly the users they are looking for through either banner or full-screen ads.

Make money with your Windows apps and AdDuplex

The most recent development was a launch of ad monetization part of AdDuplex. While still in invite-only mode, every app and game developer is welcome to apply for and participate in a revenue-sharing scheme in which developers get 70 percent of the money that advertisers pay AdDuplex. And even when there are no paid campaigns to show, your ad space is not wasted – AdDuplex cross-promotion network kicks in and generates free advertising for your app or game.

Getting started with AdDuplex

Whether you are an independent app developer or an advertiser in search of scale, benefitting from AdDuplex services is really easy. Here are the basics you’ll need to get started (plus some nice extras):

GameAnalytics SDK for Microsoft UWP Released

We’re excited to announce our partnership with GameAnalytics, a powerful tool that helps developers understand player behavior so they can improve engagement, reduce churn and increase monetization.

The tool gives game developers a central platform that consolidates player data from various channels to help visualize their core gaming KPIs in one convenient view. It also enables team members to collaborate with reporting and benchmark their game to see how it compares with more than 10,000 similar titles.

You can set up GameAnalytics in a few minutes and it’s totally free of charge, without any caps on usage or premium subscription tiers. If you’d rather see the platform in action before making any technical changes, just sign up to view the demo game and data.

GameAnalytics is used by more than 30,000 game developers worldwide and handles over five billion unique events every day across 1.7 billion devices.

“I believe the single most valuable asset for any game developer in today’s market is knowledge,” said GameAnalytics Founder and Chairman, Morten E Wulff. “Since I started GameAnalytics back in 2012, I’ve met with hundreds of game studios from all over the world, and every single one is struggling with increasing user acquisition costs and falling retention rates.”

“When they do strike gold, they don’t always know why. GameAnalytics is here to change that. To be successful, game studios will have to combine creative excellence with a data-driven approach to development and monetization. We are here to bridge this gap and make it available to everyone for free,” he added.

GameAnalytics provides SDKs for every major game engine. The following guide will outline how to install the SDK and setup GameAnalytics to start tracking player behavior in four steps.

1.  Create a free GameAnalytics account

To get started, sign up for a free GameAnalytics account and add your first game. When you’ve created your game, you’ll find the integration keys in the settings menu (the gear icon), under “Game information.” You’ll need to copy your Game Key and Secret Key for the following steps.

2.  Download the standalone SDK for Microsoft UWP

Next, download the GameAnalytics SDK for Microsoft UWP. Once downloaded, you can begin the installation process.

3.  Install the native UWP SDK

To install the GameAnalytics SDK for Microsoft UWP, simply install using the Nuget by adding the GameAnalytics.UWP.SDK package from Nuget package manager. For Manual installation, use the following instructions:

Manual installation

  • Open GA-SDK-UWP.sln and compile the GA_SDK_UWP project
  • Create a Nuget package: nuget pack GA_SDK_UWP/GA_SDK_UWP.nuspec
  • Copy the resulting GameAnalytics.UWP.SDK.[VERSION].nupkg (where [VERSION] is the version specified in the .nuspec file) into for example C:Nuget.Local (the name and location of the folder is up to you)
  • Add C:Nuget.Local (or whatever you called the folder) to the Nuget package sources (and disable Official Nuget source)
  • Add GameAnalytics.UWP.SDK package from Nuget packet manager

4.  Initialize the integration

Call this method to initialize using the Game Key and Secret Key for your game (copied in step 1):

// Initialize
GameAnalytics.Initialize("[game key]", "[secret key]");

Below is a practical example of code that is called at the beginning of the game to initialize GameAnalytics:

using GameAnalyticsSDK.Net;

namespace MyGame
    public class MyGameClass
        // ... other code from your project ...
        void OnStart()

            GameAnalytics.ConfigureAvailableResourceCurrencies("gems", "gold");
            GameAnalytics.ConfigureAvailableResourceItemTypes("boost", "lives");
            GameAnalytics.ConfigureAvailableCustomDimensions01("ninja", "samurai");
            GameAnalytics.ConfigureAvailableCustomDimensions02("whale", "dolpin");
            GameAnalytics.ConfigureAvailableCustomDimensions03("horde", "alliance");
            GameAnalytics.Initialize("[game key]", "[secret key]");

5.  Build to your game engine

GameAnalytics has provided full documentation for each game engine and platform. You can view and download all files via their Github page, or follow the steps below. They currently support building to the following game engines with Microsoft UWP:

You can also connect to the service using their Rest API.

Viewing your game data

Once implemented, GameAnalytics provides insight into more than 50 of the top gaming KPIs, straight out of the box. Many of these metrics are viewable on a real-time dashboard to get a quick overview into the health of your game throughout the day.

The real-time dashboard gives you visual insight into your number of concurrent users, incoming events, new users, returning users, transactions, total revenue, first time revenue and error logs.

Creating custom events

You can create your own custom events with unique IDs, which allow you to track actions specific to your game experience and measure these findings within the GameAnalytics interface. Event IDs are fully customizable and should fall within one of the following event types:

Event Description
Business In-App Purchases supporting receipt validation on GA servers.
Resource Managing the flow of virtual currencies – like gems or lives.
Progression Level attempts with Start, Fail & Complete event.
Error Submit exception stack traces or custom error messages.
Design Submit custom event IDs. Useful for tracking metrics specifically needed for your game.

For more information about planning and implementing each of these event types to suit your game, visit the game analytics data and events page.

GameAnalytics Dashboards

Developers using GameAnalytics can track their events in a selection of dashboards tailored specifically to games. The dashboards are powerful, yet totally flexible to suit any use case.

Overview Dashboard

With this dashboard you will see a quick snapshot of your core game KPIs.

Acquisition Dashboard

This dashboard provides insight into your player acquisition costs and best marketing sources.


This dashboard helps to measure how engaged your players are over time.


This dashboard visualizes all of the monetization metrics relating to your game.


This dashboard helps you understand where players grind or drop off in your game.


This dashboard helps you balance the flow of “sink” and “gain” resources in your game economy.

You can find a more detailed overview for each dashboard on the GameAnalytics documentation portal.

Helpshift releases Windows SDK

In-app customer service provider Helpshift just announced a Windows version of their SDK. Helpshift has reinvented the customer service industry by deflecting customer service requests away from traditional phone and email channels towards in-app self-service channels. Helpshift’s SDK functionality includes searchable FAQs, in-app chat, CRM ticketing and in-app surveys.

Helpshift customers see a boost in app ratings and higher customer satisfaction, app retention and monetization. The Windows 10 release is one of the first versions of the Helpshift SDK that will operate across both mobile and desktop landscapes.

Helpshift’s Key Features Include:

  • Searchable FAQsIMAGE1
    • Powerful FAQ search algorithms gives faster access to FAQs
    • FAQs are cached on devices so they are fully searchable offline
    • Native FAQs work in over 30 languages
  • Intelligent ticket routing
  • Real time data on device, operating system, browser type
  • Ticket analysis and reporting
  • Users connect with support via web, email, and mobile app


The Helpshift Dashboard

Helpshift has a powerful analytics dashboard for a high level view of ticketing and resolving issues.


Helpshift’s agent scoring functionality measures numerous KPIs – displayed on an easy-to-read report. The report allows a high level view of agent performance and shows the rate at which tickets are resolved.


The individual ticket view allows the agent to use valuable user data to resolve a ticket quickly. It is also a valuable tool to determine the overall satisfaction and performance of an app.


Building a list of searchable FAQs is both simple and able to support multiple languages.


Installing Helpshift

  • Download the SDK for Windows 10
  • Install references and add the SDK reference
  • Add localization reference
  • Add theming references

Initializing Helpshift in Your App

Helpshift identifies each unique registered app utilizing a combination of 3 tokens.

  • API Key: Your unique developer API Key
  • Domain Key: Your Helpshift domain name without the “http” prefix or slashes
  • App ID: App’s unique ID

To initialize Helpshift, simply call Helpshift.Windows10.SDK. Helpshift’s install function.

For example:

using hs = Helpshift.Windows10.SDK.Helpshift ;
hs.Install(<apikey>,  <domain>,  <appId>);


By supporting Windows, Helpshift is able to assist CS teams across the spectrum of both mobile and desktop – allowing users a better experience and CS teams huge savings in time and efficiency. Abinash Tripathy and Baishampayan Ghose started Helpshift in 2012 – not only reinventing the customer service industry, but also collecting user feedback for app enhancements.

How to leverage PubMatic’s Windows SDK to scale monetization across devices and formats

When developers and publishers work with Software Development Kits (SDKs), they typically think of mobile-specific applications. However, since the Windows 10 app is device-agnostic, PubMatic built a Windows SDK that can incorporate ads into Windows apps across devices, not just on mobile, helping developers and publishers scale monetization of their app inventory.

Who would find it useful?

PubMatic SDK is useful to Windows 10 app developers looking to monetize their apps. A key benefit is that you don’t need to swap or change the SDKs based on the targeted device. PubMatic’s Windows SDK is built for the Universal Windows Platform (UWP) app, so apps developed with the SDK can be deployed on any Windows 10 device (desktop, tablet, mobile, etc.) without any changes.

What is PubMatic’s Windows SDK?

The SDK is completely modular, providing multiple unique benefits. For example, you can integrate with either single or multiple ad formats at the same time.

PubMatic Windows SDK supports the following ad formats:

  • Banner
  • Interstitial
  • Native
  • Video

Additional features include:

  • Rich Media MRAID 2.0– compliant Banner ads
  • VAST 3.0– supported Video Ads

Why PubMatic?

PubMatic helps publishers choose the right ad format for their inventory through its dynamic ad format. The SDK is designed for use by both novice and advanced developers. The simple SDK integration can be done by including XAML control in the application with initialization, start, and stop functions.

The PubMatic XAML control fills the digital real estate with the appropriate ad format (banner, rich media, video, audio, native) by taking dimensions, network bandwidth, default targeting parameters (device id, application, advertising id, location, and user cookie), brand/category control, and eCPM requirements configured on the server. The advanced integration has an option to override the default parameters to take control of ad formats; dynamic brand/category control and enhanced targeting parameters (age range, gender, interests…). You also have an option to use the SDK with no user interface to take complete control over the rendering capabilities.

The PubMatic SDK is modular, based on ad format. For example, if you only want to activate banner ads in your app, and aren’t interested in native, video, or other formats, PubMatic’s Windows SDK allows you to download the code just for banner ads. If at any point you want to support other ad types, you can download that ad format type and add it to your app.

For example, a flashlight app that is barely two MBs won’t want or need an  5 MB SDK. By breaking the SDK out into modular pieces, the app’s publisher can include just what is needed, without burdening the application with unnecessary code.

By leveraging PubMatic’s Windows SDK, you can maximize revenue using PubMatic’s RTB auction to select the highest paying demand sources, with detailed reporting data on a range of metrics, including CPM, impressions and revenue. The SDK empowers you to make the most of your digital assets through enriched data parameters, sensitivity towards privacy, and integrations with dozens of mobile ad networks and hundreds of demand sources.

How can I use the SDK?

To add the SDK to an app project, follow these steps:

  1. Unzip the SDK zip file in your source code working area.
  2. Open PubMatic’s sample app; use one of the following methods:
    • Select the app’s solution file.
    • Create a new Universal Windows app project in the Visual Studio IDE.
  3. To include a reference to the SDK in your app, do one of the following:
    • Add the SDK as a .dll to your app (see below for instructions).
    • Add the source code of the SDK to your app (see below for instructions).

To add the SDK as a .dll:

  1. In Solution Explorer, right-click References.
  2. Click Add Reference.


  1. Locate the SDK .dll in your workspace.
  2. Click Add.


 After you add the SDK .dll, you’ll see it in the References section of Solution Explorer.


To add the SDK source code:

  1. Select the Solution explorer and add the existing SDK source project into the IDE.
  2. Locate the SDK project from your workspace and select the .csproj file of the SDK.
    The SDK project and application project are added in IDE.


Adding the SDK project:

  1. Add the reference of the SDK project to the application.
  2. Go to Application -> References -> Add New Reference.
  3. Browse to the .csproj file of the SDK.
  4. Click OK.

Note: The .csproj file is visible only after you change the file filter to All Type.


For more information on how to get started with PubMatic’s SDK for Windows 10, including integrating ad formats, SDK components, and ad request parameters, see the PubMatic Windows SDK Developer Guide.

Announcing New Dev Center Capabilities to Increase App Revenue and Streamline Management

In the Build opening keynote, Satya Nadella and Terry Myerson talked about our ambition to make Windows the home for all developers. In the last year we’ve moved from discussing what would be possible on Windows 10 to celebrating Windows 10 on more than 270 million devices – the fastest growth of any version of Windows – representing immense opportunity for the developer community.

We know that we need to invest to create a strong ecosystem and we are clear on your asks for increased reach and monetization opportunities, as well as increased productivity – with streamlined app management as a high priority. Last year we laid out a multi-year vision to make Dev Center an efficient place to submit, manage and monetize your Windows Store apps, and have been working to evolve it to simplify and consolidate the various Microsoft developer portals into one.

This week we are announcing another step in that direction, releasing new capabilities to increase promotion and monetization opportunities, while simplifying app submission and management including:

  1. New monetization options with Facebook Install Ads and payout enhancements
  2. Streamlined app submission and new ways to distribute apps and run betas
  3. More ways to engage and promote your apps
  4. New capabilities for getting customer feedback, analyzing app performance, and experimenting to improve your apps
  5. Ability to Preview Dev Center features through the Dev Center Insider Program
  6. Extend Universal Windows Platform (UWP) to Microsoft HoloLens
  7. And a new landing page for the dashboard: developer.microsoft.com/windows, setting the foundation for integration of additional Microsoft developer programs

As you begin to use these new capabilities, please let us know your feedback and experience through the “Feedback” button in Dev Center (found in the bottom right of each page) or vote for new features in the Windows Platform UserVoice for Dev Center. Your feedback influences the areas of future focus.

1. New Monetization Opportunities

Coming later this year Facebook ads: More than 1.59 billion people use Facebook to connect with what matters to them. With Facebook App Install Ads, you choose the type of people you want to reach enabling Facebook to deliver more relevant ads to acquire and engage your customers. With the Facebook Audience Network (FAN) SDK, you can monetize through Facebook ads in your Windows Store apps. Facebook is bringing both App Install Ads and FAN SDK to Windows developers later this year and we will share further details in a future blog post.

New Microsoft Store Engagement and Monetization SDK (Store SDK): The Store SDK integrates the capabilities of the Microsoft Advertising SDK with new store services to create a single unified SDK available to Universal Windows Platform (UWP) apps. Store services include app feedback and A/B testing, evolving to include additional features in future releases. The SDK is automatically updated in customer devices, ensuring customers always have the most up-to-date version. To take advantage of the new engagement features, just download and install the new Store SDK and update references in your code. If you’re using a previous version of the Microsoft Ad SDK, your current ad settings will automatically update – no need to make changes when you upgrade. Learn more. Build session: Monetize your app using Windows Store Monetization Platform.

Update Microsoft advertising: Ads can now be included in apps built on C#, C++, and VB, expanding your reach. If your app is using Windows ad mediation, you can select the ad ranking order in addition to percentages, enabling more control over which ads are shown in your apps in each market. Learn more. Build session: Monetize your app using Windows Store Monetization Platform.

New Microsoft Affiliate Program tools: If you promote Store apps, games, music or TV shows you can earn a commission on digital purchases from customers you refer into the Store — up to 7% for digital content and up to 10% on hardware. There are now four new tools to help you rapidly generate affiliate links including a link builder to manually create individual text, image, or badge links; an enterprise data feed; a top content data feed to automatically generate a list of the most popular content in the Store; and a group of pre-generated banners to promote top content and specific campaigns. Learn more or check out this Channel 9 video.

New affiliate ads: You can now earn revenue with affiliate ads. Once you opt-in, your app will automatically show affiliate ads when a paid app is not available. You will receive a commission when a customer clicks an affiliate ad in your app, then purchases any product in the Store. There’s no need to republish your app. Learn more. Build session: Monetize your app using Windows Store monetization platform.


Update Windows Store for Business: Launched in mid-November last year, this storefront is designed to enable organizations to find, acquire, manage and distribute Windows Store and private line-of-business apps, in volume, across Windows 10 devices. The market coverage has doubled since release, and is now available to organizations in over 45 markets today (free apps only in this release). Learn more. Build session: Windows Store for Business and TeamViewer.

New payout preferences and summary options:  Beginning early April, Dev Center will allow you to place a hold on your payout with an On/Off toggle in Account Settings → Financial details. Financial reports will soon include additional filters, columns, and exporting capabilities for the payout summary. Learn more.

2. Streamlined app submission

New package flighting: This capability enables you to distribute different app package updates to specific groups of customers. Package flighting is particularly useful to test an alpha or beta version of an app with a limited number of customers, or to test an app update with a subset of customers prior to rolling it out to all. I recommend getting customer feedback using the new in-app feedback feature described below. Learn more. Build session: App flighting and beta testing in the Windows Store.

New simplified language submission: One of the top developer requests has been to separate the languages included in a package from the Store listing languages (screenshots and description). You are now only need to submit a Store listing and screenshot for one language in Dev Center, regardless of the number of languages in your app package. You can also add descriptions for languages that aren’t in any of your app’s packages. This lets you choose which languages make the most sense for your descriptions, and also allows you to start working on your description before you’ve uploaded packages. Learn more.

New view publishing status: Many of you have also asked to know when a new app or update is live in the Store. Starting today, Dev Center shows the status of the app package and status of app metadata updates (product description, screenshots and prices) so you know when customers are seeing your latest submission. Learn more.


Preview submission API:  The new Windows Store submission API will be made available in preview, beginning today and rolling out in waves. This new API offers a subset of functionality provided by Dev Center as a REST API and supports these actions for published apps: submitting updates, modifying metadata, and adding/removing in-app products. You can request access to the preview through the “Feedback” tab in Dev Center by selecting “Submission API” in the “Suggestions” tab. Access will be granted in waves, beginning with a small group of developers. Build session: Windows Store: Publishing Apps and Games to Xbox, Desktop and Mobile.

Preview dashboard design:  Dev Center is being redesigned to make app submission faster and enable richer analytics. Starting this week the first wave of new dashboard pages are being made available to developers that opt-in to the Dev Center Insider Program (more about this new program below). Build session: Windows Store & Dev Center Overview: New capabilities to help developers succeed.

3. Engagement and promotion

New community ads: Developers can now share unused ads-in-app space to promote each other’s apps at no cost. If your app is using the Microsoft Advertising SDK or the new Store SDK, sign up for community ads to earn credits by showing ads from other developers in your in-app ad space and then use those credits to promote your apps. Learn more. Build session: Promote your app: New tools to grow audience for your app.

Enhanced promotional codes:  Dev Center allows you to create promotional codes for every app or in-app product (IAP). Code creation is now significantly faster, in a matter of seconds in most cases. Starting in May, Dev Center will add capabilities to manage promotional codes including: specify an expiration date for a batch of codes upon creation, cancel a batch of codes you no longer need, and check the redemption status of an individual code. Learn more.

New promote-your-app receipts:  Starting this week, Dev Center provides a receipt for all promote-your-app purchases, in the analytics left navigation bar → App Install Ads → Download (below account billing history).

Preview Store lists: Windows Store is releasing the Most Popular list to provide more ways for customers to find your apps. Most Popular will show the apps that are most downloaded and used and can be found in the Windows Store app.

Preview retargeting and reengagement notifications: Send notifications and Live Tile updates to segments of your apps’ customers directly from Dev Center. This is useful for announcing offers, new features, updates and news to your customers. You define which customer segments get the notification, send the notice, and then measure if the notification drove reengagement. This feature will be rolled out in waves beginning today. Review the policies before using this feature. Build session: User segmentation and targeted push notifications for UWP apps.

4. Enhanced analytics and app management

New A/B testing: Test customer behavior by enabling different experiences for your installed user base, and track conversions attributed to each experience using the A/B testing API. This enables you to run experiments without modifying or republishing your app, then use Dev Center to measure and compare the effectiveness of each experience to maximize monetization and customer engagement. For example, you can test whether rewarding active customers in your game with a special bonus encourages additional game play. Learn more. Build session: A/B Testing for UWP apps: Experiment for success.

New app feedback API: Customers frequently provide feedback for an app directly in their reviews, which does not provide all the detail you need to troubleshoot. Starting this week, you can leverage the Store SDK to add a link to your app that launches the Feedback Hub, where customers can submit and vote on other users’ feedback about your app. You can use the control to solicit feedback about an app flight or version, prompt a customer for their opinion on a specific feature or level, or offer support. Feedback is displayed in the new Dev Center Feedback report and can be exported for further analysis. Learn more. Build session: App Feedback: Connect with your customers.

Enhanced crash reports:  Crash reports are critical to improving the reliability and performance of an app. The Dev Center Health report now includes the complete stack trace, which is much more helpful to debug issues, particularly with UWP apps.

New analytics API and Power BI content pack: Two new analytics reporting options are now available to analyze your app data without logging into Dev Center. Windows Store analytics API provides analytics via a REST API to query information about your app from any date range, through the lifetime of your app. The Power BI Dev Center content pack provides a Power BI dashboard with a rich set of visuals and filters that can be customized.

New lifetime downloads and export all reviews:  Dev Center now supports exporting ratings and reviews for all of your apps in a single file (previously limited to one app at a time). Beginning in April, you will be able to view lifetime app and IAP acquisition data, allowing you to view how many downloads your app or IAP has had since it was first published.

New Dev Center UWP app: A new UWP app is now available in Windows Store, giving you easy access to key information from all your Windows Store apps (Windows 10, Windows 8.x, Windows Phone 8.x and earlier). Download now.

5. Announcing the Dev Center Insider Program

Preview Dev Center Insider Program: Today we’re launching the Dev Center Insider Program, enabling you to view and test new Dev Center features before they are released to all developers and provide feedback to help improve these features. The program will be rolled out in stages. To participate, accept the invitation notification in Dev Center, and then send your feedback through the Dev Center feedback link. You can opt in or opt out of the program at any time from the Account settings page on Dev Center. See the terms in the Insider Program exhibit.

New Dev Center messaging:  Dev Center recently launched a messaging system displaying alerts, notifications, actions and suggestions that are relevant to you on the dashboard. The Dev Center Benefits program is now integrated into these messages to show you relevant actions to improve your apps to attract more users.

Update App Developer Agreement (ADA) and policies: This week Dev Center will show an updated App Developer Agreement that includes minor changes to support the new features (e.g. Dev Center Insider Program terms, community ads, affiliate ads, analytics). The Windows Store Policies have also been updated and reflect the new IARC age rating process as well as new info on App Discoverability Criteria that gives more insight on how qualitative elements of your apps may affect their ability to be more discoverable in Store search results.

6. Universal Windows Platform (UWP) apps extend to Microsoft HoloLens

The vision of UWP is to be able to build one app and run it on multiple devices. This opportunity continues to grow by extending UWP apps to target Microsoft HoloLens. Learn how to optimize existing apps for HoloLens, and how to build 2D apps and Holographic apps.

Dev Center now offers the option to publish your app to HoloLens devices. Select this option to make your app available for HoloLens.


In a future release, we’ll add an option to make your app available to Xbox. UWP games that participate in ID@Xbox may be published to Xbox later this year. For more information, check out the Build keynote session.

We are pleased to bring these new capabilities to the Windows developer community. Please let us know your feedback and experience through the “Feedback” button in Dev Center. We have more planned – keep checking back for updates. And, enjoy Build!

Vungle SDK for Windows 10 Released

Microsoft is proud to announce our partnership with Vungle, the leading in-app video ad platform at Connect (); //2015. Vungle has released the Vungle SDK for Windows 10 apps, which powers monetization for apps across Windows 10 desktops, tablets, and phones.

About 35% of game developers currently use mobile video ads, and many find it a great source of revenue that can actually enhance UX. With this partnership, Microsoft now offers easy integration with one of the leading global monetization platforms for Windows developers.

If you’re ready to give in-app video ads a try, this guide will show you how to quickly integrate the Vungle SDK into your app so you can start earning revenue – in five easy steps. The code samples in this guide are in C#, but we provide sample app files in C#, C++, Visual Basic, and DirectX+XAML.

A few notes before you get started…

  • The integration requires a Vungle account, so create a Vungle account if you don’t have one handy.
  • If you haven’t already done so, head over to our dashboard and add your app to your account. You need to do this so that you can get your App ID, which you’ll be adding to your app with our SDK. It’s in red on your app’s page.
  1. Download the SDK
    Download the Vungle Windows SDK from the Vungle Dashboard. Extract the archive once it’s finished downloading.
  2. Add VungleSDK to your project
    1. In Visual Studio 2015, create a new project using the template appropriate for your application and programming language.
    2. Add a reference for your project to the Vungle Windows SDK file you downloaded.
    3. Make sure that your project has the “internetClient” capability in the package.appxmanifest file, as shown:
          &lt;Capability Name=&quot;internetClient&quot; /&gt;
    4. Import the VungleSDK namespace. For example:
      using VungleSDK;
  3. Obtain a VungleAd instance
    For example:

    VungleAd sdkInstance;
    // additional code if you need
    sdkInstance = AdFactory.GetInstance(&quot;yourAppId&quot;);

    In the above example, replace yourAppId with your app id that you got when you added your app to your account.

  4. Create and register an event handler
    Create event handler for OnAdPlayableChanged event. For example:

    //Event handler for OnAdPlayableChanged event
    private async void SdkInstance_OnAdPlayableChanged(object sender, AdPlayableEventArgs e)
      //Run asynchronously on the UI thread
      await CoreApplication.MainView.Dispatcher.RunAsync(
        new DispatchedHandler(() =&gt; myRadMethod()));

    Register this event handler for OnAdPlayableChanged event. For example:

    sdkInstance.OnAdPlayableChanged += SdkInstance_OnAdPlayableChanged;

    Check out our Advanced Settings Guide to subscribe to play events. These can be used to unpause audio, resume gameplay, etc.

  5. Play an ad with your desired options selected (learn how to set options in the Advanced Settings Guide); for example:
    private async void IncentivizedConfigButton_Click(object sender, RoutedEventArgs e)
      await sdkInstance.PlayAdAsync(
        new AdConfig { Incentivized = true , SoundEnabled = false});

See below for an example of an in-app video ad. For more information, visit vungle.com or [help page link for windows SDK).