Windows Phone 7 - 開發免費版程式,就來加個廣告吧!- 2

Windows Phone 7 - 開發免費版程式,就來加個廣告吧!– 2

前陣子使用了Admob與Smaato之後,因為它們廣告率在台灣網路出現的機率,老實說真的蠻低的(聽說已有逐漸改善),

再加上使用Admob一直會有出現讓App有Unknow Exception(0x80020006)或是WebBrowser失效的問題,讓開發過程覺得怕怕的。

另外,之前詢問過台灣目前針對行動廣告的部分,目前也只有支援Android與iOS平台使用,對WP7開發人員而言,真的很可憐阿,

因此,退而求其次來找一下其他的方式。

 

Microsoft Advertising

這是由微軟官方提供的廣告機制,不過很可惜的是在台灣的開發者目前仍沒有辦法取得匯款,因此,讓我自己使用起來的願意也不高。

但是不可否認的,它是我目前測試下來最常出現廣告,也不會造成App當掉的一個了。Microsoft pubCenter允許WP7開發者去建立多個

AdUnits來顯示廣告內容在自己的App中,讓用戶可以點擊廣告從Adv Creator/Advertiser中取得費用在匯給Publisher。

 

在開始直接操作之間,我覺得有二個很讓我搞不太清楚的名稱,要先跟好好介紹一下:

(A) Application ID

     在使用Ad unit在自己的App之前,要先為自己的App註冊於pubCenter之中,取得Application ID才有辦法取得廣告內容;

(B) Ad Unit ID

     除了為自己的App註冊一個專屬的Application ID之外,還需要去建立Ad Unit ID,此時pubCenter會分配一組唯一的unique ad unit identifier

     給Ad Unit ID,然而Ad Unit ID裡定義的廣告識別機制,而是由自己設定廣告的內容分類而來。

了解二個專有名詞之後,即可以心中有個底知道自己的App要加入「AdControl」物件時,一定需要上述二個屬性值來批配才可以運作。

如果是開發XNA的開發者,要使用「AdGameComponent」模組來進行。

 

[使用步驟]

(1) 註冊pubCenter帳號,註冊一組pubCenter再加指定的Windows Live ID加入Users,先不用填寫Payment Method(因為也收不到錢);

     1-1. 註冊pubCenter

     001

     1-2. 註冊Users

     002

 

(2) 把自己的Site & Apps註冊,取得Applictation ID;

     003

     000

 

(3) 定義Ad units;

     004

     005

     007

     [補充]
     a. 在建立Ad Unit ID時,可以看到有Channel的部分,如果在選擇categories時,覺得不夠項目或想要自訂,

         都可以透過自訂Channel的方式來增加分類內容;

 

(4) 以Silverlight開發WP7為例,將AdControl加入WP7 App中;

4-1. 先安裝WPAdSDK-ENU,接著到安裝目錄(C:\Program Files (x86)\Microsoft SDKs\Advertising for Phone)中取得二個重要檔案:

       Microsoft.Advertising.Mobile.dll、Microsoft.Advertising.Mobile.UI.dll;(如果開發XNA要記得引入:Microsoft.Advertising.Mobile.Xna.dll)

4-2. 建立一個固定的Page,透過工具列將AdControl加入畫面中;

       008

4-3. 設定AdControl的重要屬性:AdUnitID與ApplicationId;

       如果是要使用測試帳號,請設定「AdUnitID:Image480_80」與「ApplicationID:test_client」;

   1: //測試帳號 
   2: <my:AdControl Height="80" HorizontalAlignment="Left" 
   3:                           Name="adControl1" 
   4:                           VerticalAlignment="Top" Width="480" 
   5:                           AdUnitId="Image480_80" 
   6:                           ApplicationId="test_client" />

4-4. 執行結果,左邊為測試版;右邊為正式使用AdUnitID與ApplicationID的結果;

       010 009

以上是針對Microsoft提供的Advertising for WP7的介紹,其實AdControl使用起來非常方便,而且馬上就可以看到效果,

比較可惜的是我們處在台灣的開發人員,沒有辦法從這當中取得獲利的機會。

 

Millennial Media(簡稱:mmDev):

該廣告公司在國外使用率也蠻高的,而且它提供的SDK支援也跟Smaato一樣多元化,包括了:iPhone、Android、iPad、

Windows Phone 7、BlackBerry、Java、WebOS、PSP、Brew、Symbian,並且在設定上,針對我們開發人員也提供很多

易懂的屬性,個人使用起來我覺得還蠻方便的。不過使用的也是需要配合Paypal的帳款才有辦法進行匯款。

另外,mmDev也提供合併其他行動廣告的內容往下會提供設定的方式。

 

使用mmDev其實跟其他家行動廣告相同,一樣會需要一個關鍵屬性:Apid;取得這個ID,就可以讓自己App中加入的mmAdView

有辦法取得廣告的內容。另外,由於mmAdView它為了讓開發者可以限定取得廣告的內容範圍,提供了一下Meta的的設定,例如:

   1: mmAdView.Age = "10";
   2: mmAdView.Gender = "Male";
   3: mmAdView.Zip = "92109";
   4: mmAdView.Education = "PhD";
   5: mmAdView.Ethnicity = "Hispanic";
   6: mmAdView.Politics = "Moderate";
   7: mmAdView.Orientation = "Straight";
   8: mmAdView.Children = "0";
   9: mmAdView.Income = "65000";
  10: mmAdView.Keywords = "Reading,Yogurt,Karate";
  11: mmAdView.Marital = "Single";

這些參數的設計,其實對在台灣的開發者影響不大,因此,還可以配合Location的使用,不過我測試的結果一樣沒有差別。

 

另外,在mmDev的使用說明中,它也針對App需要在Manifest檔定義它使用到的服務,(雖然WP7內鍵全包了),如下:

   1: <Capability Name="ID_CAP_IDENTITY_DEVICE"/>
   2: <Capability Name="ID_CAP_MEDIALIB"/>
   3: <Capability Name="ID_CAP_NETWORKING"/>
   4: <Capability Name="ID_CAP_SENSORS"/>
   5: <Capability Name="ID_CAP_WEBBROWSERCOMPONENT"/>

 

[使用步驟]

(1). 註冊mmDev,並且設定paypal的帳號來接收用戶點擊廣告取得的收益;

    011

 

(2). 設定My App取得ApID屬性;

      013

      014

      設定App之後就可以取得APID的關鍵值了。它的內容會依照在上圖設定的Ad Placements Types來呈現於App上。

 

(3). 下載mmDev for Windows Phone 7 SDK,將會取得WP7SDK.dll,並將它放入專案參考;

    012

 

(4). 設定mmAdView控件於Page畫面中,並且設定AdPid的關鍵值,配合AdType設定Adv擺放的位置;

   1: //Apid:28911為測試代號;
   2: <mmi:MMAdView x:Name="mmAdView" Background="Transparent" 
   3:      Height="60" Width="480" VerticalAlignment="Top"
   4:      Apid="28911" 
   5:      RefreshTimer="30" AdType="MMBannerAdTop" />

 

(5). 執行結果

      016

(6). mmDev除了可以設定自己mmDev提供的廣告內容之外,也提供合併外部廣告內容;

      015

      mmDev提供整合:Admob、Amobee、JumpTap、Mojiva四間行動廣告內容的呈現,並且可以按照自己設定的分佈比例,

      讓廣告呈現的機率按照合併其他廣告內容來提供更豐富的廣告。

 

======

以上介紹是目前自己找到的一些支援WP7的行動廣告商,它們提供的API都蠻方便的。

但其實說穿了,這些廣告的API只是做了一個內嵌Web Browser的外殼,裡面在提供各自廣告元件需要的參數與設定,

就可以讓開發人員直接嵌入在App之中。但其實廣告的出現率才是開發人員真正關心的吧。

所以一些設定與相關的參數調整,大家都可以再試看看。不過目前我使用出來的結果,效果都很弱。

哈,可能是我的問題。如果有找到相關比較詳細的設定介紹,我會在補上來。

 

References:

Windows Phone 7 will be an ‘ad-serving machine’

WP7 Advertising Resources for 3rd Party Developers

WP7 Advertising Resources for 3rd Party Developers

一起学WindowsPhone7开发-26-(Advertising)

Welcome to the adCenter API Community

Monetize your Windows Phone 7 Apps

millennial media - Server-Side

針對Silverlight開發人員使用的Wiki

針對XNA開發人員使用的Wiki