The configuration XML – What you need to know

The configuration XML is the heart of Ad Provider, it places the control for how you want to see and display ads in your hands instead of the Ad Providers.

It allows you to:

    • Swap ad providers on the fly – specify a single provider for the whole app and swap it to another when the eCPM goes down. E.g. have the app use PubCenter ads and if the eCPM goes down, change the remote XML and have the app switch to AdMob
    • Configure ad providers based on culture – show different ad providers for different phone region settings (which usually map to physical location as well). E.g. show PubCenter ads to US users, AdMob to German users and AdDuplex to everyone else
    • Configure probabilites of ad providers based on culture. This is the most complex (and most useful) scenario. Implement for example the following use case:
      • US: 70% PubCenter, 15% AdMob, 10% MobFox, 5% AdDuplex ads
      • Germany: 80% AdMob, 10% PubCenter, 10% AdDuplex
      • France: 100% AdMob
      • Other: 25% PubCenter, 50% AdMob, 25% AdDuplex
    • Have ads sliding in and out. Ads can be configured to slide in, stay for a give number of seconds, then slide out and stay hidden for another given number of seconds before sliding back in again. This behavior is useful both not to have apps present all the time, as well as to draw more attention to them.

The configuration file can be as complex or simple as you like, you control it all.

The configuration file

The configuration file is just an XML file which looks like this out of the box:

<!--?<span class="hiddenSpellError" pre=""-->xml version="1.0" encoding="utf-8"?&gt;
&lt;AdSettings xmlns:xsi="" xmlns:xsd=""&gt;
	&lt;CultureDescriptors CultureName=""&gt;
		&lt;AdDuplex AppId="1379" Probability="0"/&gt;
		&lt;Smaato AppId="0" SecondaryId="0" Probability="0"/&gt;
		&lt;PubCenter AppId="test_client" SecondaryId="Image480_80" Probability="0"/&gt;
		&lt;Inmobi AppId="ec9ea8fdfcc3436e94df0f5bcac3a227" Probability="0"/&gt;
		&lt;MobFox AppId="474b65a3575dcbc261090efb2b996301=" IsTest="false" Probability="0"/&gt;
		&lt;AdMob AppId="a14e5b8669ef367" Probability="0"/&gt;
		&lt;InnerActive AppId="ZenithMoon_Studios_StarterSeriesGames_WP"  Probability="100"/&gt;
		&lt;AdGroup Probability="0"&gt;
			&lt;AdDuplex AppId="1379" Probability="100"/&gt;			
	<!--<span class="hiddenSpellError" pre=""-->CultureDescriptors&gt;
<!--<span class="hiddenSpellError" pre=""-->AdSettings&gt;


you can also specify different settings based on the culture of the users phone, this enables you to swap to more lucrative ad providers for any given market, for example:

<!--?<span class="hiddenSpellError" pre=""-->xml version="1.0" encoding="utf-8"?&gt;
xmlns:xsi="" xmlns:xsd=""&gt;
    &lt;CultureDescriptors CultureName="en-US"&gt;
		&lt;Inmobi AppId="ec9ea8fdfcc3436e94df0f5bcac3a227" Probability="20"/&gt;
		&lt;PubCenter AppId="test_client" SecondaryId="Image480_80" Probability="70"/&gt;
		&lt;AdDuplex AppId="1379" Probability="10"/&gt;
	<!--<span class="hiddenSpellError" pre=""-->CultureDescriptors&gt;
    &lt;CultureDescriptors CultureName="en-GB"&gt;
		&lt;InnerActive AppId="ZenithMoon_Studios_StarterSeriesGames_WP"  Probability="45"/&gt;
		&lt;Smaato AppId="0" SecondaryId="0" Probability="45"/&gt;
		&lt;AdDuplex AppId="1379" Probability="10"/&gt;
	&lt;CultureDescriptors CultureName="de-DE"&gt;
		&lt;InnerActive AppId="ZenithMoon_Studios_StarterSeriesGames_WP"  Probability="33"/&gt;
		&lt;Smaato AppId="0" SecondaryId="0" Probability="33"/&gt;
		&lt;AdDuplex AppId="1379" Probability="33"/&gt;
	&lt;CultureDescriptors CultureName=""&gt;
		&lt;AdDuplex AppId="1379" Probability="40"/&gt;
		&lt;Smaato AppId="0" SecondaryId="0" Probability="15"/&gt;
		&lt;Inmobi AppId="ec9ea8fdfcc3436e94df0f5bcac3a227" Probability="15"/&gt;
		&lt;MobFox AppId="474b65a3575dcbc261090efb2b996301=" IsTest="false" Probability="15"/&gt;
		&lt;AdMob AppId="a14e5b8669ef367" Probability="15"/&gt;


The control is completely in your hands

Controlling your configuration remotely

In addition to delivering your default configuration with your application, AdRotator also support hosting your configuration remotely on your site which will be downloaded and checked with each run of your application.  This allows you to change the control of your ads remotely to maximise on your advertising potential.

In future versions we’ll add some analytics so you can get absolute figures on how your ads are performing in your apps to compare to the states being reported by the AdProviders.  *subject to user approval of course.

To enable this just host your configuration XML on your own site or choose from one the many free hosting solutions out there, for example:

For more, check out this excellent resource of free hosting sites

Then in your App XAML, configure the following option with your existing AdRotator configuration:



New for V2

For V2 we have re-engineered the configuration XML to be both more flexible and less limiting, it now has the following capabilities:

    • Multiple instances of Ad Providers – if you have two ad units for an ad provider, AdRotator now supports this
    • Ad Groups – if you want to bulk a group of Ads together you now can, most likely use case is when you use multiple House ads and want to control how they are rotated and how they are displayed
    • Settings available at almost every level – go wild it’s all now up to you
4 Responses to The configuration XML – What you need to know
  1. […] Aquí tenéis más información sobre cómo configurar el AdRotator. […]...
  2. […] The configuration XML – What you need to know […]...
  3. […] Aquí tenéis más información sobre cómo configurar el AdRotator. […]...
  4. […] Finally we need to setup the defaultAdSettings.xml file for our Windows Phone App. You’ll need...