로딩중입니다
adPOPcorn DA : Unity iOS
10/26/2015 4:53:57 PM

adPOPcorn DA

adPOPcorn DA (图片广告,展示广告) 是为开发者带来收益的工具。广告形式包括广告条弹窗全屏广告结束画面广告原生广告

Mediation 功能无中间手续费,为开发者提供最大的收益。

请通过以下链接了解服务详情。

[adPOPcorn DA 服务指南]

 

注意事项
  1. 集成 adPOPcorn add-on 之前,必须先完成 IGAW 共同集成。[IGAW 共同集成 : Unity iOS]
  2. 为了集成 adPOPcorn,须将 IgaworksUnityPlugin_iOS~*.unitypackage 文件包含在 Xcode Project 内。[SDK 安装 : Unity]



广告条

广告条是 DA 广告最基本的广告形式,在应用的下端或上端显示条形的广告。


Instance 生成

为了曝光广告条需调用 DAInitWithBannerViewSize API,生成 Instance。各个 Parameter 说明和示例如下。

  • size : 广告条视图尺寸
  • origin : 广告条视图位置
  • appKey : 发放的 IGAW AppKey
  • spotKey : adPOPcorn DA 管理页面中生成的广告条 SpotKey
public class IgawDASampleScene : MonoBehaviour{

	private string BANNER_SPOTKEY = "bannerspotkey";

	void Start(){   
		AdPopcornDAPluginIOS.DAInitWithBannerViewSize(AdPopcornDAPluginIOS.DABannerViewSize320x50, 0.0f, 568.0f - 50.0f, “发放的 AppKey”, "BANNER_SPOTKEY");
	}
}


广告条尺寸

adPOPcorn DA 广告条只提供 iPhone, iPod Touch 的尺寸 (W:320, H:50),使用 DABannerViewSize320x50 定义的常数即可。


控制广告

控制广告条时点上,调用 API,可以控制广告。

// 终止广告条
AdPopcornDAPluginIOS.DACloseBannerView();


Mediation 转换周期

通过 DABannerViewSetAdRefreshRate API,使用 Mediation 功能时,请设置从各个 Network 接收广告的转换周期。设置在 30秒~120秒之间。

如未设置时,维持基本值 (30秒)。

AdPopcornDAPluginIOS.DABannerViewSetAdRefreshRate(37);


Delegate

对广告条中发送的 Event 提供 Delegate。提供的 Delegate 实现和示例如下。

  • daBannerViewDidLoadAd : 广告条下载成功
  • daBannerViewdidFailToReceiveAdWithError : 广告条下载失败 (传达的错误代码请参考文件最后部分)
  • daBannerViewWillLeaveApplication : 点击广告条
public class MySampleScene : MonoBehaviour {

	// Use this for initialization
	void Start () {
		AdPopcornDAPluginIOS.AdPopcornDASetCallbackHandler("MySampleScene");

		// 登录 Delegate Handler
		AdPopcornDAPluginIOS.DABannerViewSetDelegate();

		// 登录 Delegate
		AdPopcornDAPluginIOS.daBannerViewDidLoadAd += HandleDABannerViewDidLoadAd;
		AdPopcornDAPluginIOS.daBannerViewDidFailToReceiveAdWithError += HandleDABannerViewDidFailToReceiveAdWithError;
		AdPopcornDAPluginIOS.daBannerViewWillLeaveApplication += HandleDABannerViewWillLeaveApplication;
	}

        // 实现 Delegate
	public void HandleDABannerViewDidLoadAd()
	{
		Debug.Log ("IgaworksADSample HandleDABannerViewDidLoadAd");
	}
	public void HandleDABannerViewDidFailToReceiveAdWithError(string error)
	{
		Debug.Log ("IgaworksADSample HandleDABannerViewDidFailToReceiveAdWithError : " + error);
	}
	public void HandleDABannerViewWillLeaveApplication()
	{
		Debug.Log ("IgaworksADSample HandleDABannerViewWillLeaveApplication");
	}
}



全屏广告

全屏广告是显示在整个画面的广告形式。请参考以下内容集成全屏广告。


Instance 生成

为了曝光全屏广告,生成 Instance。

public class IgawDASampleScene : MonoBehaviour{

	private string INTERSTITIAL_SPOTKEY = "interstitialspotkey";

	void Start(){   
		AdPopcornDAPluginIOS.DAInterstitialAdInitWithKey(“发放的 AppKey”, "INTERSTITIAL_SPOTKEY");
	}
}

+ 全屏广告 SpotKey : adPOPcorn DA 管理页面中生成的全屏广告 SpotKey


显示广告

调用 DAInterstitialAdPresentFromViewController API,曝光全屏广告。

AdPopcornDAPluginIOS.DAInterstitialAdPresentFromViewController();


Delegate

对全屏广告中发生的 Event 提供 Delegate。提供的 Delegate 实现及示例如下。

  • daInterstitialAdDidLoad : 全屏广告加载成功
  • daInterstitialAdDidFailToReceiveAdWithError : 全屏广告加载失败 (传达的错误代码请参考文件最后部分)
  • daInterstitialAdWillLeaveApplication : 点击全屏广告
  • daInterstitialAdWillOpen : 在打开全屏广告之前调用
  • daInterstitialAdDidOpen : 在打开全屏广告之后调用
  • daInterstitialAdWillClose : 在关闭全屏广告之前调用
  • daInterstitialAdDidClose :  在关闭全屏广告之后调用
public class MySampleScene : MonoBehaviour {

	// Use this for initialization
	void Start () {
		AdPopcornDAPluginIOS.AdPopcornDASetCallbackHandler("MySampleScene");

		// 登录 Delegate Handler
		AdPopcornDAPluginIOS.DAInterstitialAdSetDelegate();

		// 登录 Delegate
		AdPopcornDAPluginIOS.daInterstitialAdDidLoad += HandleDAInterstitialAdDidLoad;
		AdPopcornDAPluginIOS.daInterstitialAdDidFailToReceiveAdWithError += HandleDAInterstitialAdDidFailToReceiveAdWithError;
		AdPopcornDAPluginIOS.daInterstitialAdWillLeaveApplication += HandleDAInterstitialAdWillLeaveApplication;
		AdPopcornDAPluginIOS.daInterstitialAdWillOpen += HandleDAInterstitialAdWillOpen;
		AdPopcornDAPluginIOS.daInterstitialAdDidOpen += HandleDAInterstitialAdDidOpen;
		AdPopcornDAPluginIOS.daInterstitialAdWillClose += HandleDAInterstitialAdWillClose;
		AdPopcornDAPluginIOS.daInterstitialAdDidClose += HandleDAInterstitialAdDidClose;
	}

        // 实现 Delegate
	public void HandleDAInterstitialAdDidLoad()
	{
		Debug.Log ("IgaworksADSample HandleDAInterstitialAdDidLoad");
	}
	public void HandleDAInterstitialAdDidFailToReceiveAdWithError(string error)
	{
		Debug.Log ("IgaworksADSample HandleDAInterstitialAdDidFailToReceiveAdWithError : " + error);
	}
	public void HandleDAInterstitialAdWillLeaveApplication()
	{
		Debug.Log ("IgaworksADSample HandleDAInterstitialAdWillLeaveApplication");
	}
	public void HandleDAInterstitialAdWillOpen()
	{
		Debug.Log ("IgaworksADSample HandleDAInterstitialAdWillOpen");
	}
	public void HandleDAInterstitialAdDidOpen()
	{
		Debug.Log ("IgaworksADSample HandleDAInterstitialAdDidOpen");
	}
	public void HandleDAInterstitialAdWillClose()
	{
		Debug.Log ("IgaworksADSample HandleDAInterstitialAdWillClose");
	}
	public void HandleDAInterstitialAdDidClose()
	{
		Debug.Log ("IgaworksADSample HandleDAInterstitialAdDidClose");
	}
}

+ 弹窗广告 SpotKey : adPOPcorn DA 管理页面中生成的全屏广告 SpotKey


显示广告

调用 DAPopupAdPresentFromViewController API,显示弹窗广告。

AdPopcornDAPluginIOS.DAPopupAdPresentFromViewController();


弹窗尺寸

adPOPcorn DA 弹窗广告支持 iPhone, iPod Touch 的尺寸。

  • Portrait : 240*360 (w*h)
  • Landscape : 320*213 (w*h)


Delegate

对弹窗广告中发生的 Event 提供 Delegate。提供 Delegate 实现及示例如下。

  • daPopupAdDidLoad : 弹窗广告下载成功
  • daPopupAdDidFailToReceiveAdWithError : 弹窗广告下载失败 (传达的错误代码请参考文件最后部分)
  • daPopupAdWillLeaveApplication : 点击弹窗广告
  • daPopupAdWillOpen : 打开弹窗广告之前调用
  • daPopupAdDidOpen : 打开弹窗广告之后调用
  • daPopupAdWillClose : 关闭弹窗广告之前调用
  • daPopupAdDidClose : 关闭弹窗广告之后调用
public class MySampleScene : MonoBehaviour {

	// Use this for initialization
	void Start () {
		AdPopcornDAPluginIOS.AdPopcornDASetCallbackHandler("MySampleScene");

		// 登录 Delegate Handler
		AdPopcornDAPluginIOS.DAPopupAdSetDelegate();

		// 登录 Delegate
		AdPopcornDAPluginIOS.daPopupAdDidLoad += HandleDAPopupAdDidLoad;
		AdPopcornDAPluginIOS.daPopupAdDidFailToReceiveAdWithError += HandleDAPopupAdDidFailToReceiveAdWithError;
		AdPopcornDAPluginIOS.daPopupAdWillLeaveApplication += HandleDAPopupAdWillLeaveApplication;
		AdPopcornDAPluginIOS.daPopupAdWillOpen += HandleDAPopupAdWillOpen;
		AdPopcornDAPluginIOS.daPopupAdDidOpen += HandleDAPopupAdDidOpen;
		AdPopcornDAPluginIOS.daPopupAdWillClose += HandleDAPopupAdWillClose;
		AdPopcornDAPluginIOS.daPopupAdDidClose += HandleDAPopupAdDidClose;
	}

        // 实现 Delegate
	public void HandleDAPopupAdDidLoad()
	{
		Debug.Log ("IgaworksADSample HandleDAPopupAdDidLoad");
	}
	public void HandleDAPopupAdDidFailToReceiveAdWithError(string error)
	{
		Debug.Log ("IgaworksADSample HandleDAPopupAdDidFailToReceiveAdWithError : " + error);
	}
	public void HandleDAPopupAdWillLeaveApplication()
	{
		Debug.Log ("IgaworksADSample HandleDAPopupAdWillLeaveApplication");
	}

	public void HandleDAPopupAdWillOpen()
	{
		Debug.Log ("IgaworksADSample HandleDAPopupAdWillOpen");
	}

	public void HandleDAPopupAdDidOpen()
	{
		Debug.Log ("IgaworksADSample HandleDAPopupAdDidOpen");
	}

	public void HandleDAPopupAdWillClose()
	{
		Debug.Log ("IgaworksADSample HandleDAPopupAdWillClose");
	}

	public void HandleDAPopupAdDidClose()
	{
		Debug.Log ("IgaworksADSample HandleDAPopupAdDidClose");
	}
}


原生广告

原生广告使用从 adPOPcorn DA 服务器接收的 Json 字符串形式的广告信息,加工成需要的形态后显示广告。


Instance 生成

为了曝光原生广告,生成 Instance。

public class IgawDASampleScene : MonoBehaviour{

	private string NATIVE_SPOTKEY = "nativespotkey";

	void Start(){   
		AdPopcornDAPluginIOS.DANativeAdInitWithKey("发放的 AppKey", "NATIVE_SPOTKEY");
	}
}

+ 原生广告 SpotKey : adPOPcorn DA 管理页面中生成的原生广告 SpotKey


广告加载

调用 DANativeAdLoadAd API,加载原生广告信息。加载的信息通过前面生成的 DANativeAdDelegate 传达。

AdPopcornDAPluginIOS.DANativeAdLoadAd ();


Delegate (确认广告信息)

对调用 DANativeAdLoadAd API 提供 Delegate。为了使用 Delegate 请添加 DANativeAdDelegate

提供广告信息和申请失败的 Event 的 Delegate。

  • daNativeAdDidFinishLoading : 原生广告下载成功,返回原生广告信息。
  • daNativeAdDidFailWithError : 原生广告加载失败 (传达的错误代码请参考文件最后部分)
public class MySampleScene : MonoBehaviour {

	// Use this for initialization
	void Start () {
		AdPopcornDAPluginIOS.AdPopcornDASetCallbackHandler("MySampleScene");

		// 登录 Delegate Handler
		AdPopcornDAPluginIOS.DANativeAdSetDelegate();


		// 登录 Delegate
		AdPopcornDAPluginIOS.daNativeAdDidFailWithError += HandleDANativeAdDidFailWithError;
		AdPopcornDAPluginIOS.daNativeAdDidFinishLoading += HandleDANativeAdDidFinishLoading;
	}

        // 实现 Delegate
	public void HandleDANativeAdDidFailWithError(string error)
	{
		Debug.Log ("IgaworksADSample HandleDANativeAdDidFailWithError : " + error);
	}

	public void HandleDANativeAdDidFinishLoading(string nativeAdvertisingResultJson)
	{
		Debug.Log ("IgaworksADSample HandleDANativeAdDidFinishLoading : " + nativeAdvertisingResultJson);
	}
}


广告曝光跟踪

调用 DANativeAdCallImpression API,跟踪原生广告的曝光情况。需一起传达 API 和  impressionURL Parameter。

// private string IMPRESSION_URL = “impressionurl”;
AdPopcornDAPluginIOS.DANativeAdCallImpression(IMPRESSION_URL);

IMPRESSION_URL : 在原生广告信息里包含 Campaign 的 Impression 测试 URL。


广告点击跟踪

调用 DANativeAdClick API,跟踪原生广告的点击并 Landing 用户。需一起传达 API 和 redirectURL Parameter。

// private string REDIRECT_URL = "redirecturl”;
AdPopcornDAPluginIOS.DANativeAdClick(REDIRECT_URL);

+ REDIRECT_URL : 在原生广告中包含的 Campaign 用户的 Landing URL。



DA 答应错误代码定义

各个广告 Event Listener 传达的错误代码的定义。

代码信息说明
200Exception一般错误
1000Invalid ParameterParameter 错误
9999Unknown Server Error未知的服务器错误
2000Invalid Media KeyAppKey 错误
2030Invalid Spot KeySpotKey 错误
2100Empty Campaign无广告
2200Invalid Third Party Name外部 Network 的广告信息加载失败
3200Native Spot Does Not Initialized原生广告设置初始化出错
5000Server Timeout服务器超时
5001Load Ad Failed无法加载特定 Network 的广告
5002No Ad无法加载所有 Network 的广告



DA Mediation

使用 Mediation 时,请参考以下链接进行。

[adPOPcorn DA : iOS (Mediation)]