Windows Phone 7 - 開發免費版程式,就來加個廣告吧!– 2
前陣子使用了Admob與Smaato之後,因為它們廣告率在台灣網路出現的機率,老實說真的蠻低的(聽說已有逐漸改善),
再加上使用Admob一直會有出現讓App有Unknow Exception(0x80020006)或是WebBrowser失效的問題,讓開發過程覺得怕怕的。
另外,之前詢問過台灣目前針對行動廣告的部分,目前也只有支援Android與iOS平台使用,對WP7開發人員而言,真的很可憐阿,
因此,退而求其次來找一下其他的方式。
這是由微軟官方提供的廣告機制,不過很可惜的是在台灣的開發者目前仍沒有辦法取得匯款,因此,讓我自己使用起來的願意也不高。
但是不可否認的,它是我目前測試下來最常出現廣告,也不會造成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
1-2. 註冊Users
(2) 把自己的Site & Apps註冊,取得Applictation ID;
(3) 定義Ad units;
[補充]
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加入畫面中;
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的結果;
以上是針對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的帳號來接收用戶點擊廣告取得的收益;
(2). 設定My App取得ApID屬性;
設定App之後就可以取得APID的關鍵值了。它的內容會依照在上圖設定的Ad Placements Types來呈現於App上。
(3). 下載mmDev for Windows Phone 7 SDK,將會取得WP7SDK.dll,並將它放入專案參考;
(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). 執行結果
(6). mmDev除了可以設定自己mmDev提供的廣告內容之外,也提供合併外部廣告內容;
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