本文章是由機器翻譯。

移動的事項

利用 Microsoft Ad 控制項獲利

亞瑟 · 比雷爾伯里斯 · 費爾德曼

下載代碼示例

雖然一些開發人員創建移動應用程式作為一種業餘愛好或如何看待他們的名字在燈,別人是為了錢。您可能已經知道,Windows 手機市場提供了一種由賣給使用者的應用程式獲取賠償你的辛苦工作的簡單方法。然而,還有另一個、 互補的方式,為你賺到錢的應用程式的 Windows Phone 7: 廣告。微軟廣告 SDK 使得廣告納入您的應用程式容易的過程 — — 和你會支付時消費者使用您的應用程式,即使是免費下載的。

這篇文章將:

  • 向您展示如何在您的應用程式中開始使用微軟廣告。
  • 引導您通過創建廣告支援應用程式使用 XAML 或代碼中 — — 從檔 |新到生成並運行。
  • 超出基本知識,説明您改善您的最終使用者的廣告體驗,使更多的錢。

關於廣告

現實是詞的移動使用者,沒有更好,"節儉"。很多人都不會遲疑的第二次上雙的拿鐵咖啡花 4 元將苦於超過 99%的應用程式購買。廣告,可以從那些不准備或不願意花費他們辛苦賺來的硬幣購買您的應用程式的使用者仍賺的錢。免費應用程式,"簡裝"版本的付費軟體和所有的付費軟體試驗目前廣告盈利的機會。鑒於自由和審判程式的下載,大大超過那些在 Windows 手機市場上的付費軟體,您的應用程式中顯示廣告是只是良好的數學。

微軟廣告 SDK 是免費下載和服務是免費的。此外,當您使用 Microsoft 廣告控制項時顯示的廣告不只是從 Microsoft adCenter。相反,微軟已創建頂級手機廣告網路在申辦權在您的應用程式中顯示他們的廣告即時廣告交換。這可提高整體廣告率,並確保廣告廣告中移動應用程式對 Windows Phone 7 支付最高的價錢。你支付廣告的印象,在您的應用程式中生成每月的收入的 70%。

正如本文中稍後介紹所看到的使用 Microsoft 廣告控制是容易甚至兼職開發人員和學生進入建設廣告支援 Windows Phone 7 應用程式的行為。您的里程可能有所不同,當然 ; 如果您的應用程式進行最終使用者和他們經常使用它,賺錢潛力遠遠超過零花錢。許多開發人員有更多的廣告比他們有銷售應用程式,通過與微軟發表了一些突出顯示的這些經歷幾個的成功故事 (bit.ly/9RlMFW)。

入門

入門微軟廣告控制很容易,即使你還是新手 Windows Phone 7 開發人員,您可以啟動並運行在沒有時間。下麵是在您的應用程式中包括微軟廣告的步驟:

  1. 登錄微軟 pubCenter 門戶網站,與您的 Windows Live id。 在這裡,您將能夠註冊您的廣告支援的應用程式,這些應用程式中的位置的廣告將出現的位置。
  2. 獲取免費微軟廣告 SDK 的 Windows Phone 7。 今天,您可以從 pubCenter 門戶網站,下載此 SDK,但今年晚些時候你就會自動安裝的 Windows 手機開發人員工具即將發佈的版本時。
  3. 微軟廣告控制項添加到您的應用程式。 在確定您的應用程式和廣告位置的廣告控制項中設置幾個屬性和您準備提交廣告啟用應用程式的 Windows 手機市場。

一旦您的應用程式是活在 Windows 手機市場上開始習慣的最終使用者,它將自動啟動生成廣告的印象。你會得到報酬在 CPM 基礎 (每千意見 ; 成本上顯示這些廣告 "廣告 101"的成本故障的詳細資訊請參閱) 和已經達到 50 元的最小閾值後,您將自動獲得發出支票或直接存款 — — 您的選擇 — — 從微軟。

pubCenter 安裝程式

您在使用 microsoft 廣告的第一步是在微軟廣告 pubCenter 門戶在簽約pubcenter.microsoft.com 使用您的 Windows Live ID (請參見 圖 1)。

圖 1微軟廣告 pubCenter 門戶

將要求您輸入有關您或您的公司的一些資訊,那麼您可以跳轉的權利並註冊您的第一個應用程式和"廣告單位"。

要在 pubCenter 中定義新的應用程式,您要做是給它一個友好名稱。後來如果您有多個廣告支援的應用程式,您將能夠爆發的統計數字,請參閱如何在您的應用程式的每個廣告正在執行。

在同一個螢幕上,您還可以定義您的第一個廣告單元。每個廣告單元都有一個名稱,並表示您的應用程式中的位置,其中會顯示廣告。廣告單位可與最佳描述它們周圍的內容的最多三個類別相關聯 (請參見圖 2)。

圖 2註冊您的應用程式和創建廣告單元

您選擇的類別將確定什麼樣的廣告將顯示在您的應用程式中的許多因素之一。

一旦您按一下保存,您將看到新的 pubCenter 帳戶的資訊的摘要和還應用和廣告單元的 Id 您剛創建。當你準備去活時,就會以確定您的應用程式到微軟廣告伺服器與廣告控制使用這些值。

說到這裡,你完了暫時的 pubCenter,並準備好潛入 Visual Studio。您可以定義多個應用程式或廣告單位、 看到深入廣告報告和配置高級的設置,例如,競爭排除任何時候返回到 pubCenter。

添加使用 Visual Studio 的廣告

如果您沒有使用最新的 Windows 手機開發人員工具,不過,您可以從 pubCenter 下載最新版本的微軟廣告 SDK。此 SDK 包括微軟廣告控制,以及文檔和代碼示例,來説明您入門。2011 年 6 月版的廣告控制提供的富媒體支援和改進的 API 集。請確保您已安裝,使您可以遵循下麵的步驟。讓我們看看如何使用 Visual Studio 設計器中。

通過使用檔創建一個新的 Windows 電話 7 Silverlight 專案啟動 |新的和開放要顯示廣告的 XAML 表面。選擇合適的現場廣告可以經常顯示,而不會煩擾使用者 ; 通常,底部或頂部是螢幕的最好的。拖動 AdControl (注:"廣告控制"指的是 Microsoft 產品,而"AdControl"指的是類或物件) 直接從工具箱窗格中將其添加到網格控制項直接 (請參閱圖 3)。

圖 3放置 AdControl

AdControl 後在頁面上,您需要設置一些屬性,以在您的應用程式中正常工作。首先,你要仔細檢查的寬度和高度的 AdControl。它建議保持 480 x 80 圖元的手機廣告的標準尺寸的控制。設置較小的尺寸將會阻止標準尺寸的廣告能顯示在您的頁面上。設置一個較大的大小將意味著一些之間的空白區域,廣告呈現有意願和 AdControl 的邊框。

接下來,您需要聯繫 pubCenter 門戶網站中創建的應用程式 ID 和廣告單元 id AdControl。它可以説明有門戶 Web 頁面打開,這樣您可以複製並粘貼到 Visual Studio 視窗的這些值。

最後,還有你要以滿足您的應用程式需要設置兩個屬性。如果設置為 true,IsAutoRefreshEnabled 屬性將自動顯示一個新的廣告每 60 秒。這使您可以增加廣告使用者看到,這應有助於更好地為您的應用程式 (請參見"廣告 101"更多的廣告收入) 的收入。設置為 true,如果您希望自動隱藏自身從視圖之前下載廣告 AdControl 的 IsAutoCollapseEnabled 屬性。

由 Visual Studio 設計器生成的 XAML 應類似于:

<Grid x:Name="ContentPanel" Grid.Row="1">

  <my:AdControl

    Height="80"

    Name="adControl1"

    Width="480"

    IsAutoCollapseEnabled="True"

    IsAutoRefreshEnabled="True"

    AdUnitId="test_client"

    ApplicationId="Image480_80" 

  />

</Grid>

現在打運行以查看您的第一個廣告。

API AdControl

如果您找到您想做一些更複雜的事情,如控制隱藏或顯示的廣告,或要有更多的控制廣告顯示在您的應用程式時,您可以選擇直接在您的代碼中 AdControl 產生實體。

但我們到那裡之前,讓我們開始的夾層 AdControl 的工作原理 (請參閱圖 4)。在幕後,當您的應用程式啟動時,AdControl 獲取初始化,它從微軟廣告伺服器請求的廣告。請求被形成與您在您的代碼中指定的應用程式 ID 和廣告單元 ID。

圖 4AdControl 的工作原理

至關重要的是此資訊匹配您從 pubCenter 門戶的複製或測試文檔中提供的 Id。請求還包含有關您的應用程式,如廣告將匹配該地區一些其他有用的資訊。

如果它接收回的廣告使用圖像或基於 HTML 的富媒體,AdControl 將與下載廣告內容 (如 JPEG、 GIF、 HTML 或 PNG 檔) 的 Web 伺服器重新連接。一旦使用者已看到廣告,AdControl 可能會再次連接的伺服器,以記錄廣告印象。這整個週期重複廣告獲取刷新和一個新的廣告獲取下載時。

大部分火箭科學沒有使用 AdControl 所需的代碼的時候。您需要為您的專案中的引用添加 Microsoft.Advertising.Mobile.UI 大會開始。你也要添加使用Microsoft.Advertising.Mobile.UI 命名空間聲明。並在您的頁面的構造函數中,會將代碼來創建 AdControl。然後,你要添加到頁的視覺化樹 AdControl 實例。在這種情況下,我們將其添加到網格中,我們在我們的佈局 (請參見圖 5)。中的代碼與圖 5到位情況下,您的應用程式應該準備好生成和顯示廣告使用您已經編寫的代碼。

圖 5添加到視覺化樹 AdControl

using Microsoft.Advertising.Mobile.UI;



// Constructor

public MainPage()

{

  InitializeComponent();



  AdControl adControl = new AdControl();



  // Add the control to a grid control

  Grid grid = (Grid)this.LayoutRoot.Children[1];

  grid.Children.Add(adControl);



  // Insert real values from pubCenter before

  // submitting your app to Windows Phone Marketplace!
#ifdef SHOW_TEST_ADS

  adControl.ApplicationId = "test_client";

  adControl.AdUnitId = "Image480_80";  

#else

  // Use your real Application ID and Ad Unit ID here

  adControl.ApplicationId = "12ab456c-de7f-89ab-0123-4567890c1d23";

  adControl.AdUnitId = "12345";

#endif



  // Make the AdControl fit the standard 480 x 80 dimension

  adControl.Width = 480;

  adControl.Height = 80;



  // Let the AdControl collapse and refresh automatically

  adControl.IsAutoRefreshEnabled = true;

  adControl.IsAutoCollapseEnabled = true;

}

秘訣和訣竅

這裡有一些重要的事情,要在您的應用程式,並有幾種方法 AdControl 使用時,請牢記 — — 例如,針對 — — 這將説明您在您的應用程式中的廣告價值最大化。

第一,始終確保您可以看到"測試"和"真實"的廣告在您的應用程式中運行。 要查看測試廣告,請將 ApplicationID 設置為標準測試值,如"Image480_80""test_client"和廣告單元 ID精心佈置的 # ifdef 可以來方便。 您應使用測試廣告同時開發和測試您的應用程式,但一旦你準備釋放,這是關鍵您設置這回你 pubCenter 發出應用程式 ID 和廣告單元 id。 但是,測試您自己的應用程式 Id 是重要因為它可以確保您的應用程式使用"真正的"活廣告。

下一步,要獲得最好的廣告,是重要的是提供盡可能多的資訊,廣告系統。 AdControl 經常獲取此資訊自動,所以您的應用程式清單必須具有以下功能:

  • ID_CAP_PHONEDIALER
  • ID_CAP_NETWORKING
  • ID_CAP_WEBBROWSERCOMPONENT
  • ID_CAP_IDENTITY_USER
  • ID_CAP_MEDIALIB

如果您的應用程式的意義,它還建議使用 ID_CAP_LOCATION 功能。 啟用基於位置的廣告提高的品質和相關性的您的使用者將看到的廣告。

AdControl.PostalCode 和 AdControl.Country 屬性允許應用程式來更新使用者的位置。在下麵的示例中,貝芙麗山莊電影明星 app 將一般都知道它的使用者在該位置:

 

using Microsoft.Advertising;

// Make sure the AdControl is created
adControl.Country = "US";
adControl.PostalCode = "90210";

同樣,它也可能有助於處理有關廣告經驗在您的代碼的幾件事。 如果已將 IsAutoRefreshEnabled 屬性設置為 false,然後您將能夠手動刷新廣告。 調用 adControl.Refresh 方法來進行查看,帶來一個新的廣告,但確保不叫它超過每 30 秒,為使用者提供足夠的時間去點擊他們可能感興趣的廣告。

如果已將 IsAutoCollapseEnabled 屬性設置為 false,你可以偵聽 ErrorOccurred 事件。 未能下載或顯示的廣告時,將觸發此事件。 折疊 AdControl 和回收空間以供使用的應用程式中的其他使用者介面元素,您可以使用此事件。 當 AdRefreshed 事件觸發時,你會知道一個新的廣告是願意看到與您可以還原其可見性 (請參見圖 6)。

圖 6AdRefreshed 事件

public void AdControl_AdRefreshed(object sender, EventArgs args)

{

  AdControl ad = (AdControl)sender;



  Dispatcher.BeginInvoke(() =>

  {

    ad.Visibility = System.Windows.Visibility.Visible;

    Debug.WriteLine(

      "ad control '" + ad.Name + "' got ad, visibility = " + ad.Visibility);

  });

}



public void AdControl_ErrorOccurred(object sender, AdErrorEventArgs args)

{

  try

  {

    AdControl ad = (AdControl)sender;



    Dispatcher.BeginInvoke(() =>

    {

      ad.Visibility = System.Windows.Visibility.Collapsed;

      Debug.WriteLine(

        "error in ad control '" + ad.Name + "': " + args.Error.Message);

      Debug.WriteLine("ad control '" + ad.Name + "' visibility = " + ad.Visibility);

    });

  }

  catch (Exception e)

  {

    Debug.WriteLine("oh no! "
+ e.Message);

  }

}

如您所見,在您的應用程式中使用的 AdControl 是容易的。如果您遇到了麻煩,一般都只有幾件事可以走錯了,導致不能顯示的廣告:

  • 沒有網路連接
  • 在應用程式 ID 或廣告單元 ID 錯字
  • 使用者是從微軟廣告廣告不可的位置
  • AdControl 設置為太小的維度
  • 缺失的功能

最後,如果正在編寫遊戲,想要使用 XNA 看微軟廣告新華社廣告遊戲元件,也是微軟廣告 SDK 的一部分。不幸的是,沒有足夠的空間來做更深入的新華社在這篇文章,但有可用的文檔線上在bit.ly/jhGOVV

現在去添加一些廣告,開始拿錢放入您的應用程式,那麼辛苦的工作 !

Arthur Bierer  是微軟在紐約的通用廣告用戶端小組的高級專案經理。微軟廣告 SDK 的 Windows Phone 7 上工作之前, 他 17 年的動態導航,經驗。NET 框架、 互聯網資源管理器和 Windows 產品。你可以跟隨他在 Twitter 上twitter.com/ArthurBiererDev 或電子郵件與他在 arthurbi@microsoft.com

Boris Feldman 是一組產品規劃在移動顯示廣告業務經理。 微軟在他八年來,他也曾對開發商的產品,包括一些。NET 框架和表達 Web。你可以通過電子郵件在到達他borisf@microsoft.com

多虧了以下技術專家審查這篇文章:Anzor Balkar, Richard Carr, Sloan Ginn, Ali Heron, Darryl Hudgin, Marty Kauhanen, Mark Masterson, Tim McClelland, Valeriy Ovechkin, Chris Quon, Matt SullivanJason White