Один из лучших способов заработать деньги в Windows 8 — это показ рекламы в приложении Магазина Windows с помощью Microsoft Advertising SDK. Вот как вы можете начать.
Предварительные условия: Вам понадобится Windows 8 RTM и Visual Studio 2012. Доступна бесплатная 90-дневная ознакомительная версия Windows 8 Enterprise, а VS2012 Express Edition полностью бесплатна .
Начните с загрузки и установки Microsoft Advertising SDK . На момент написания этой статьи Windows 8 RTM была выпущена, но Microsoft Ad SDK все еще находится на стадии бета-версии 6.1.0813.1. Он работает с Windows 8 RTM, но пока не все функции поддерживаются. RTM-версия Microsoft Ad SDK ожидается в середине сентября. Я буду обновлять этот пост по мере необходимости.
SDK, который вы только что установили, поддерживает как JavaScript, так и .NET. Этот пост посвящен использованию Ad SDK в приложении JavaScript.
Откройте Visual Studio и создайте пустое приложение Магазина Windows для JavaScript:
В обозревателе решений щелкните правой кнопкой мыши ссылку и выберите «Добавить ссылку». Затем выберите Microsoft Advertising SDK и нажмите «ОК»:
Вернитесь в обозреватель решений, разверните Ссылки и перейдите в SDK, чтобы найти ad.js
Это SDK. Откройте его, если хотите. Это просто большой файл JavaScript.
Откройте файл default.html и вставьте элемент <script>, чтобы включить SDK. Сделайте это в <head> вашего документа и обязательно добавьте его после тега <script>, который вызывает default.js. Вы можете легко добавить этот <script>, перетащив ad.js из Solution Explorer в точку внизу вашего раздела <head>. Или просто введите его вручную:
<script src="http://blogs.msdn.com/MSAdvertisingJS/ads/ad.js"></script>
В <body> файла default.html вставьте рекламный элемент управления:
<div id="myAd" style='position: absolute; top: 53px; left: 0px; width: 728px; height: 90px; z-index: 1' data-win-control="MicrosoftNSJS.Advertising.AdControl" data-win-options="{applicationId: 'test_client', adUnitId: 'Image_728x90'}"> </div>
Это просто <div> с атрибутом «data-win-control», как и другие элементы управления Windows 8. В «data-win-options» вы можете ввести свой applicationId из pubCenter (зарегистрируйтесь, чтобы получить его), а также изменить тип отображаемой рекламы, изменив adUnitId. Много вариантов для adUnitId перечислены в документации Ad SDK . Рекламные блоки различаются по размеру, типу (текст или изображение) и по действию, которое вызывает нажатие на него. Подберите ширину и высоту <div> по размеру рекламного блока. В вышеприведенном примере возвращаемое <div> и рекламное объявление имеют ширину 728 пикселей и высоту 90 пикселей. Нажмите F5, чтобы запустить ваше приложение:
Если вы немного повозитесь с CSS, что мне нравится делать в Blend, вы получите что-то сносное, например, это объявление, показанное в игре EaselJS Space Rocks:
Теперь, когда у нас есть основы, давайте копнем немного глубже. Вот все параметры, доступные для AdControl:
data-win-control="MicrosoftNSJS.Advertising.AdControl" data-win-options="{applicationId: 'test_client', adUnitId: 'Image_300x250', countryOrRegion: 'us', isAutoRefreshEnabled: false, keywords: 'windows8,awesome', latitude: 40.47, longitude: 73.58, postalCode: '10021', onAdRefreshed: myAdRefreshed, onErrorOccurred: myAdError, onEngagedChanged: myAdEngagedChanged, onPointerDown: myPointerDown, onPointerUp: myPointerUp }"
- applicationId: ваш ключ от pubCenter
- adUnitId: тип объявления
- countryOrRegion: где вы находитесь
- isAutoRefreshEnabled: установите в false, если вы хотите контролировать частоту показа нового объявления. Сделайте свой собственный вызов refresh (), чтобы показать новое объявление. Похоже, что это не работает в бета-версии SDK.
- ключевые слова, широта, долгота и postalCode могут использоваться для запроса релевантных объявлений на основе ключевых слов и местоположения. Если вы получите слишком конкретную информацию, возможно, не будет доступных объявлений и ничего не будет показано.
- onAdRefreshed указывает на функцию, которая будет вызываться при обновлении рекламы.
- onErrorOccured указывает на обратный вызов для ошибок.
- onEngagedChanged указывает на функцию, которая будет вызываться, когда пользователь нажимает на объявление. В зависимости от adUnitId, это может показать полноэкранное объявление или даже открыть браузер. Используйте этот обратный вызов, чтобы приостановить игру. См. Документацию SDK для примера .
- onPointerDown и onPointerUp указывают на функции, которые вызываются, когда пользователь щелкает, указывает или касается внутри рекламного объявления.
Вышеуказанные параметры показаны в HTML5, но они также могут быть установлены в JavaScript. Например:
var adDiv = document.getElementById("myAd"); var myAdControl = new MicrosoftNSJS.Advertising.AdControl(adDiv, { applicationId: 'test_client', adUnitId: 'Image_250x250' }); myAdControl.isAutoRefreshEnabled = false; myAdControl.countryOrRegion = "us"; myAdControl.keywords = "windows8, rocks"; myAdControl.latitude = 40.47; myAdControl.longitude = 73.58; myAdControl.postalCode = "10021"; myAdControl.onErrorOccurred = myAdError; myAdControl.onAdRefreshed = myAdRefreshed; myAdControl.onEngagedChanged = myAdEngagedChanged;
Посетите страницу « Дополнительная справка» в документации по SDK для получения дополнительных ресурсов, включая ссылку на форум онлайн-поддержки.