CocosCreator接入穿山甲广告(IOS)
说明
接入穿山甲广告SDK
将Cocos Creator工程打包,在手机上运行,看能否正常运行游戏,保证游戏没有问题的前提下再引入SDK所需要的各种包
根据文档引入各种包,文档地址:
https://partner.oceanengine.com/union/media/union/download/detail?id=1&osType=ios
按前面步骤引入包后,再打包,测试游戏能否正常运行,能正常运行,说明引入包没有问题
开屏广告
- 开屏广告是穿山甲中最简单的广告,在打开游戏App后即显示的广告
- 引入头文件
#import <BUAdSDK/BUAdSDKManager.h>
#import <BUAdSDK/BUSplashAdView.h>
- 继承
*@interface xxxxxxxxx () <BUSplashAdDelegate>
//xxxxxxxxx 是你自己的类名
@end
- 初始化(SDK文档中有,照做就OK)
[BUAdSDKManager setAppID:@"xxxxxx"]; //xxxxxx是你在穿山甲后台对应的appid
[BUAdSDKManager setIsPaidApp:NO];
[BUAdSDKManager setLoglevel:BUAdSDKLogLevelDebug];float scale = [[UIScreen mainScreen] scale];
CGRect frame=[UIScreen mainScreen].bounds;
BUSplashAdView *splashView = [[BUSplashAdView alloc] initWithSlotID:@"yyyyyyyyyy" frame:frame];
//yyyyyyyyyy是你在穿山甲后台对应的广告位Id
splashView.delegate = self;
UIWindow *keyWindow =[UIApplication sharedApplication].windows.firstObject;
[splashView loadAdData];
[keyWindow.rootViewController.view addSubview:splashView];
splashView.rootViewController = keyWindow.rootViewController;
- 当开屏广告被关闭时
- (void) splashAdDidClose:(BUSplashAdView *)splashAd{[splashAd removeFromSuperview]; [AppController SetOrientation:@""]; //强制竖屏转横屏
}
开屏广告的问题
- cocos creator游戏是横屏的,而穿山甲开屏广告只有竖屏的
- 在
AppController
中加入【强制横屏转竖屏】及【强制竖屏转横屏】的方法 - 方法如下:
UIInterfaceOrientationMask oMask = UIInterfaceOrientationMaskLandscape;-(UIInterfaceOrientationMask)application:(UIApplication *)application supportedInterfaceOrientationsForWindow:(UIWindow *)window{return oMask;
}+(void)SetOrientation:(NSString*)dir{[[UIDevice currentDevice] setValue:[NSNumber numberWithInteger:UIDeviceOrientationUnknown] forKey:@"orientation"];if([dir isEqualToString:@"V"]){oMask = UIInterfaceOrientationMaskPortrait;[[UIDevice currentDevice] setValue:[NSNumber numberWithInteger:UIInterfaceOrientationPortrait] forKey:@"orientation"];}else{oMask = UIInterfaceOrientationMaskLandscape;[[UIDevice currentDevice] setValue:[NSNumber numberWithInteger:UIInterfaceOrientationLandscapeLeft] forKey:@"orientation"];}
}
- 在打开穿山甲开屏广告前,调用【强制横屏转竖屏】方法:
[AppController SetOrientation:@"V"];
- 在穿山甲开屏广告结束的回调中,【强制竖屏转横屏】调用:
[AppController SetOrientation:@""];
激励广告
- 根着
SDK
文档照做(略) - 注: 以下示例我将类命名为:
CsjAdReward
CsjAdReward.h
部分代码如下
@interface CsjAdReward : UIViewController
+(CsjAdReward *) getAdInstance; //用来获取实例的方法
-(void) OpenAd;
@end
CsjAdReward.m
部分代码如下
#import "CsjAdReward.h"
#import <BUAdSDK/BURewardedVideoModel.h>
#import <BUAdSDK/BUNativeExpressRewardedVideoAd.h>
#import "AppController.h"
#import <BUAdSDK/BUAdSDKManager.h>
#import "RootViewController.h"
@interface CsjAdReward ()<BUNativeExpressRewardedVideoAdDelegate>
@property (nonatomic,strong) BUNativeExpressRewardedVideoAd *rewardedVideoAd;
@endstatic CsjAdReward *instance; //这里声明一下静态实例,方便javascript层调用
@implementation CsjAdReward//获取实例的方法,方便javascript层调用
+(CsjAdReward *) getAdInstance{return instance;
}//初始化,根着SDK文档照做就好了
- (void) viewDidLoad {NSLog(@"viewDidLoad");instance=self;[BUAdSDKManager setAppID:@"5043574"];[BUAdSDKManager setIsPaidApp:NO];[BUAdSDKManager setLoglevel:BUAdSDKLogLevelDebug];BURewardedVideoModel *model=[[BURewardedVideoModel alloc]init];model.userId=@"ming123";self.rewardedVideoAd=[[BUNativeExpressRewardedVideoAd alloc] initWithSlotID:@"945009897" rewardedVideoModel:model];self.rewardedVideoAd.delegate=self;[self.rewardedVideoAd loadAdData];
}//打开激励视频的方法
-(void) OpenAd{if(self.rewardedVideoAd.isAdValid){[self.rewardedVideoAd showAdFromRootViewController:self];}
}//视频结束的回调
- (void)nativeExpressRewardedVideoAdDidClose:(BUNativeExpressRewardedVideoAd *)rewardedVideoAd{NSLog(@"rewardedVideoAdDidClose");[self.rewardedVideoAd loadAdData]; //视频结束后,再加载一次广告数据,保证广告的不重复
}
AppController
中初始化- 在
didFinishLaunchingWithOptions
方法中,在viewController
初始化后,调用CsjAdReward
的初始化,代码如下:
UIViewController *_csjAdReward= [[CsjAdReward alloc] init];
[_viewController.view addSubview:_csjAdReward.view];
Appcontroller
中的静态方法,用于javascript
中调用并打开激励视频广告
+ (void)CsjAdRewardOpen {NSLog(@"打开激励视频");[[CsjAdReward getAdInstance] OpenAd];
}
Cocos Creator
中javaScript
中调用方法
public static CsjAdRewardOpen()
{if ('jsb' in window) {if (cc.sys.os == cc.sys.OS_IOS) {jsb.reflection.callStaticMethod("AppController", 'CsjAdRewardOpen');return;}}
}
CocosCreator接入穿山甲广告(IOS)相关推荐
- CocosCreator接入穿山甲广告1-激励视频
首先进入文档后要先去下载它文档里的sdk,这个压缩包里面含有demo,没有头绪的朋友可以进入他的工程看下,也可在模拟器上运行一下它的demo看下效果.下载完后可以进入他工程下的libs的文件夹里把两个 ...
- CocosCreator接入穿山甲广告总结
最近项目开始接入国内广告变现,接的是穿山甲sdk广告,接入的过程真的是各种坎坷,我会分为激励视频,插屏广告,底部banner三部分,在后续的文章中会一点点详细的把这三部分都总结出来,给有恰好需要的朋友 ...
- CocosCreator接入穿山甲SDK(IOS)--激励视屏
参考 环境:MAC,xCode11,CocosCreator2.3.1 有关CocosCreator与Object-C如何交互的问题,参考文章: https://blog.csdn.net/ZFSR0 ...
- CocosCreator接入穿山甲广告2-插屏广告
看过上一篇文章的小伙伴,我这里就不在进行对初始化等进行墨迹,直接上插屏广告的逻辑,一般在游戏比如关卡结束的时候会弹出插屏广告. 穿山甲sdk初始化后,在oncreate方法里直接调用chuanShan ...
- CocosCreator接入穿山甲广告3-底部banner
SDK初始化的问题我就不在继续说了,前面的文章说过了,直接说接banner的逻辑,说到这banner确实是有些麻烦,因为demo给的工程是一个android工程,和游戏的android工程还有些不一样 ...
- Unity接入穿山甲广告(使用Unity3D插件)
最近要接入穿山甲广告,我把穿山甲广告相关的接入流程记录一下,说说最近踩过的坑,和怎么解决的问题.注意我们需求是只发安卓包没有iOS的需求,本篇只介绍Unity接入安卓相关的处理(帖子是2019年底 ...
- Unity接入穿山甲广告SDK(以及GroMoreDemo)
Unity接入穿山甲广告SDK(以及GroMoreDemo) 下载安装 穿山甲官网SDK下载链接(https://www.csjplatform.com/union/media/union/downl ...
- 无需上架,接入穿山甲广告和广点通广告 sdk
我们都知道广告是商业流量变现最重要的方式之一,所以基本所有的游戏或者app都会接入广告sdk,而我们都知道穿山甲广告sdk和广点通广告sdk是国内收益相对比较高的,但是想接入穿山甲广告sdk,你的游戏 ...
- 【记录】穿山甲广告iOS版SDK接入记录
官方接入文档 获取 framework 文件 (平台接入模块->SDK下载与接入文档),要先注册 其他参考 Creator iOS接入穿山甲SDK 1.集成SDK 这里采用pod pod Ads ...
最新文章
- 手动将jar包导入pom依赖,让jar包适配本地maven项目
- 如何实现RESTful Web API的身份验证
- java防止表单重复提交
- 科大星云诗社动态20210309
- java x%y_java中的运算符
- 【OOB】MSHTML!CPasteCommand::ConvertBitmaptoPng heap-based buffer overflow学习
- Shoulda, Woulda, Coulda
- android电容触摸驱动
- CHKRecovery(文件删除还原工具)v3.3.0绿色版
- Python编程工具IDLE快捷键
- Android Fingerprint完全解析(二) :Fingerprint启动流程
- 屏蔽google adsense和百度推广的广告
- with dlz mysql 条件_BIND+DLZ+MYSQL实现区域记录动态更新
- java时间加30天_java实现,怎么在当前时间往后推三十天
- 简单的EasyUI登录界面
- 电脑使用技巧(Win10修改窗口背景颜色)
- 2023 年软件文档工具,这5款可以看看!
- 【霍尔榜】BJ金属3D打印常见问题解析
- Qt运行过程中错误未找到信号的符号undefined symbol: _ZN11FileManager12sigTechFilesE4QMapIi7QSt
- 今天,你开发了吗?有成为这1/1000000了吗
热门文章
- spring boot 整合 jetcache 相关错误
- 二十一. 智能驾驶之基于视觉识别和点云聚类的障碍物检测
- EDI 820 付款委托书或汇款通知
- chatgpt论文润色
- onkeydown,onkeyup,onkeypress,onclick,ondblclick
- Delphi调用LibVLC播放视频,窗口如何响应键盘鼠标的消息?OnClick、OnDblClick、OnMouseMove
- 【算法】LeetCode:字符串篇
- EventBus使用、案例、代码混淆报错
- ubuntu中用apt命令安装、卸载软件
- TCS·开发区规划【前缀和】