集成廣告平臺能夠根據各個廣告平臺的文檔進行,爲了迅速快捷 的進行集成測試,咱們選擇KeyMob廣告管理庫。KeyMob有個特色就是能夠直接配置 json格式文件來設置各個廣告平臺的信息,很是快速便捷,也能夠配合KeyMob網站來管理配置信息。廣告聚合管理庫能夠在git上下載到。
獲取Android廣告管理庫
要在手機應用裏面展現廣告須要在應用裏面添加廣告管理庫,KeyMob廣告管理庫目前的版本是20150801 下載解壓後能夠看到android工程的目錄結構,大部分常規的android工程文件和目錄,下面資源是KeyMob管理庫相關的。
README.md keymob 英文快速集成文檔
README_zh.md keymob 中文快速集成文檔
libs
okeymobad.jar keymob 廣告管理核心庫
assets
ocom_keymob_sdks keymob 備用平臺
obiduad_plugin keymob 百度平臺須要的資源
ogdt_plugin keymob 廣點通平臺須要的資源
注 意:assets目錄下的三個文件夾以及文件夾下面的文件都不能修更名稱com_keymob_sdks 目錄下面有個 AdmobAdapter.jar 表示KeyMob使用admob做爲沒法鏈接KeyMob時的備用廣告平臺 若是想改用別的平臺 能夠下載更多的備用平臺。除上面下載的資源外,使用KeyMob支持的平臺,無需再單獨添加各個平臺的代碼。
添加管理庫到eclipse工程項目
1.複製下載到的 KeyMobad.jar 到本身android工程的libs下
2.複製下載到的 com_KeyMob_sdks 到本身android工程的assets下
3.若是要使用百度廣告平臺,複製下載到的 biduad_plugin 到本身android工程的assets下
4.若是要使用廣點通平臺,複製下載到的 gdt_plugin 到本身android工程的assets下
添加廣告相關java代碼
1.首先import keymob相關的類
import com.keymob.networks.AdManager;
import com.keymob.networks.core.*;
import com.keymob.sdk.core.AdTypes;java
2.初始化KeyMob
初始化KeyMob管理庫是調用其餘廣告功能函數的前提,必須先初始化才能作別的調用,下面初始化 KeyMob,jsonString是各個廣告平臺的配置信息 AdManager.getInstance().initFromJSON(active,jsonString,new AdEventListener());
參數說明
this 第一個參數active是廣告上下文,非null
jsonString 第二個參數是上面的json配置字符串,包含各個廣告平臺的配置信息
AdEventListener 廣告事件處理類,實現接口IAdEventListener,若是不計劃處理廣告事件能夠爲nullandroid
3.展現廣告
下面把顯示橫幅廣告在絕對位置(0,200)示例
AdManager.getInstance().showBannerABS(BannerSizes.BANNER, 0, 200);git
參數說明
BannerSizes.BANNER 第一個參數廣告尺寸,全部默認支持的廣告橫幅尺寸都在BannerSizes類中
"0" 第二個參數是廣告的位置x
"200" 第二個參數是廣告的位置y
4.添加廣告權限
編輯AndroidManifest.xml 給應用添加須要的權限,例如網絡請求,下面是大部分廣告平臺須要的權限
<!-- base permission -->
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
<uses-permission android:name="android.permission.READ_PHONE_STATE"/>
<!-- base permission for location-->
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<!-- base permission required by chartboost and Baidu-->
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<!-- permission required by mmedia -->
<uses-permission android:name="android.permission.RECORD_AUDIO" />
<uses-feature android:name="android.hardware.microphone" android:required="false" />json
5.添加廣告Activity等配置信息
編輯AndroidManifest.xml 給應用添加廣告平臺的Activity,未添加平臺的activity將沒法展現平臺廣告
<meta-data android:name="com.google.android.gms.version" android:value="7327000" />
<activity android:name="com.google.android.gms.ads.AdActivity" android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize" android:theme="@android :style/Theme.Translucent"/>
<!-- Amazon Mobile Ads -->
<activity android:name="com.amazon.device.ads.AdActivity"android:configChanges="keyboardHidden|orientation|screenSize"/>
<!-- InMobi -->
<activity android:name="com.inmobi.androidsdk.IMBrowserActivity" android:configChanges="keyboardHidden|orientation|keyboard|smallestScreenSize|screenSize" android:theme="@android :style/Theme.Translucent.NoTitleBar" android:hardwareAccelerated="true" />
<!-- Millennial Media -->
<activity android:name="com.millennialmedia.android.MMActivity" android:theme="@android :style/Theme.Translucent.NoTitleBar" android:configChanges="keyboardHidden|orientation|keyboard|screenSize" >網絡
</activity>
<!-- KeyMob -->
<activity android:name="com.keymob.sdk.core.KeymobActivity" android:theme="@android :style/Theme.Dialog" android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize"
/>
<!-- Baidu -->
<activity android:name="com.baidu.mobads.AppActivity" android:configChanges="keyboard|keyboardHidden|orientation"/>
<!-- adcolony -->
<activity android:name="com.jirbo.adcolony.AdColonyOverlay" android:configChanges="keyboardHidden|orientation|screenSize"
android:theme="@android :style/Theme.Translucent.NoTitleBar.Fullscreen" />
<activity android:name="com.jirbo.adcolony.AdColonyFullscreen" android:configChanges="keyboardHidden|orientation|screenSize" android:theme="@android:style/Theme.Black.NoTitleBar.Fullscreen" />
<activity android:name="com.jirbo.adcolony.AdColonyBrowser" android:configChanges="keyboardHidden|orientation|screenSize"
android:theme="@android:style/Theme.Black.NoTitleBar.Fullscreen" />
<!-- guang dian tong -->
<service android:name="com.qq.e.comm.DownloadService" android:exported="false"/>
<activity android:name="com.qq.e.ads.ADActivity" android:configChanges="keyboard|keyboardHidden|orientation|screenSize"/>eclipse