Unity 接入Vungle

公司本来打算接入Unity Ads, 但是很无奈的是Unity Ads 在国内根本没有广告显示, 所以又试了Vungle. 不过还好, Vungle 在国内是可以使用的, 下面是Vungle 接入


1. 接入Vungle 4.1

首先在https://dashboard.vungle.com/sdk 这里下载对应的SDK 版本.  这个版本是纯android的, 没有Unity 插件使用, 下载解压之后, 发现其实核心就是5个jar 包, 将jar 包都导入到android工程中. 配上 这两个activity.


  <activity android:name="com.vungle.publisher.VideoFullScreenAdActivity"
 android:configChanges="keyboardHidden|orientation|screenSize|screenLayout|smallestScreenSize"
 android:theme="@android:style/Theme.NoTitleBar.Fullscreen"/>


 <activity android:name="com.vungle.publisher.MraidFullScreenAdActivity"
 android:configChanges="keyboardHidden|orientation|screenSize|screenLayout|smallestScreenSize"
 android:theme="@android:style/Theme.Translucent.NoTitleBar.Fullscreen"/>

下面是一些方法, 

public void InitVungleAds(final String appid) {


vungle.init(MainActivity.this, appid);
vungle.setEventListeners(new YoyoVungleListener());


ShowToast("开始初始化VungleSDK");


}


public boolean VungleAdIsReady() {


return vungle.isAdPlayable();
}


public void PlayAd(String placementId, boolean isRewarded) {
AdConfig config = new AdConfig();
config.setIncentivized(isRewarded);
config.setPlacement(placementId);
vungle.playAd(config);

}


就是这么简单就好了.




2. Vungle 5.3

 首先也是在https://dashboard.vungle.com/sdk  这个版本没有android端代码, 就是一个UnityPackage. 直接导进来就好了, android端的代码已经在里面了, 

下面是一些回调函数.


public static void Init()
{
Vungle.init (appid, new string[]{placementId});
Vungle.onInitializeEvent += OnInitSuc;
Vungle.onAdStartedEvent += OnAdStart;
Vungle.onAdFinishedEvent += OnAdFinished;
Vungle.adPlayableEvent += OnAdAvailableChanged;
Vungle.onLogEvent += OnLog;


}


public static void OnLog(string msg)
{
ShowToast ("日志:"+msg);


}


public static void OnInitSuc()
{


ShowToast ("Vungle初始化成功");
}


public static void OnAdStart(string msg)
{
ShowToast ("Vungle视频开始播放"+msg);


}


public static void OnAdFinished(string msg, AdFinishedEventArgs args)
{
ShowToast ("Vungle视频播放结束"+msg+"=="+args.IsCompletedView+"=="+args.TimeWatched+"=="+args.WasCallToActionClicked);



}


public static void OnAdAvailableChanged(string placementId,bool result)
{
ShowToast ("Vungle视频状态改变"+result);


}


public static bool IsAdAavailable(string placementId)
{
return Vungle.isAdvertAvailable (placementId);


}


public static void PlayAd(string placementId)
{
Vungle.playAd (placementId);




}


void OnApplicationPause(bool pauseStatus){

if (pauseStatus)
Vungle.onPause ();
else
Vungle.onResume ();


}


public static void ShowToast(string msg)
{
var android_obj = new AndroidJavaClass ("com.unity3d.player.UnityPlayer").GetStatic<AndroidJavaObject> ("currentActivity");
android_obj.Call ("ShowToast",msg);


}


public static void LoadAd(string placementId)
{
Vungle.loadAd (placementId);


}


其实也很简单的

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值