该文档和文件适用APICloud
1. 将文件sjmadModule.zip文件上传至开发控制台对应项目的模块中(在自定义模块中上传)
2.上传完成后点击右上角的+号,添加到项目中。
3.上传完成后通过云打包进行测试
广告调用可以参考sjmad_demo
在config.xml文件中设置媒体id
<feature name="SJMSDKInitModule">
<param name="appId" value="sjm_ios123" />
</feature>
1.调用方法:
loadAd({adId:’广告id’,fetchDelay:(int)超时时间})
show()
2.示例
function showSplashAd() {
var splashAd = api.require('SJMSplashAdModule');
splashAd.loadAd({
adId: 'SJM_S001',
fetchDelay: 5
},function(ret, err){
var event = ret.event;
console.log(event);
api.toast({
msg: event
});
if (event == 'SplashAdDidLoad') {
splashAd.show();
}else if (event == 'SplashAdShow'){
}else if (event == 'SplashAdClicked'){
}else if (event == 'SplashAdClosed'){
}else if (event == 'SplashAdCountdownEnd'){
}else if (event == 'SplashAdError'){
}else{
}
//SplashAdDidLoad 开屏广告素材加载成功
//SplashAdShow 开屏广告成功展示
//SplashAdClicked 开屏广告点击回调
//SplashAdClosed 开屏广告关闭回调
//SplashAdCountdownEnd 开屏广告倒记时结束
//SplashAdError 开屏广告错误
//SplashAdWillEnterBackground 应用进入后台时回调
});
}
1.调用方法:
loadAd({adId:’广告id’,userId:’用户Id’,rewardName:'奖励名称',rewardAmount:(int)奖励数量})
show()
2.示例
function showRewardAd() {
var rewardAd = api.require('SJMRewardVideoAdModule');
rewardAd.loadAd({
adId: 'SJM_R001',
userId:'userId123',
rewardName:'奖励名称',
rewardAmount:0,
},function(ret, err){
var event = ret.event;
console.log(event);
api.toast({
msg: event
});
if (event == 'rewardVideoAdDidLoad') {
}else if (event == 'rewardVideoAdVideoDidLoad'){
rewardAd.show();
}else if (event == 'rewardVideoAdDidShow'){
}else if (event == 'rewardVideoAdDidClose'){
}else if (event == 'rewardVideoAdDidClicked'){
}else if (event == 'rewardVideoAdDidRewardEffective'){
}else if (event == 'rewardVideoAdDidPlayFinish'){
}else if (event == 'rewardVideoAdError'){
}
//rewardVideoAdDidLoad 广告数据加载成功回调
//rewardVideoAdVideoDidLoad 视频数据下载成功回调
//rewardVideoAdDidShow 视频广告展示
//rewardVideoAdDidClose 视频播放页关闭
//rewardVideoAdDidClicked 视频广告信息点击
//rewardVideoAdDidRewardEffective 奖励触发
//rewardVideoAdDidPlayFinish 视频广告视频播放完成
//rewardVideoAdError 视频广告各种错误信息回调
});
}
1.调用方法:
loadAd({adId:’广告id’})
show()
2.示例
function showInterstitialAd() {
var interstitialAd = api.require('SJMInterstitialAdModule');
interstitialAd.loadAd({
adId: 'SJM_I001'
},function(ret, err){
var event = ret.event;
console.log(event);
api.toast({
msg: event
});
if (event == 'interstitialAdDidLoad') {
interstitialAd.show();
}else if (event == 'interstitialAdDidLoadFail'){
}else if (event == 'interstitialAdDidPresentScreen'){
}else if (event == 'interstitialAdDidClick'){
}else if (event == 'interstitialAdDidClose'){
}else if (event == 'interstitialAdDetailDidClose'){
}else if (event == 'interstitialAdDidFail'){
}
//interstitialAdDidLoad 广告数据加载成功回调
//interstitialAdDidLoadFail 广告数据加载失败回调
//interstitialAdDidPresentScreen 广告展示
//interstitialAdDidClick 广告点击
//interstitialAdDidClose 广告关闭
//interstitialAdDetailDidClose 详情页关闭
//interstitialAdDidFail 其他错误
});
}
1.调用方法:
//fixedOn:视图位置
//fixed:控制视图是否随着frame内容的移动而跟着移动
loadAd({adId:’广告id’,fixedOn:’视图位置‘,fixed:false })
2.示例
var contentPage = api.require('SJMContentPageModule');
contentPage.loadAd({
adId: '广告Id',
fixedOn:api.frameName,
fixed: false
},function(ret, err){
var event = ret.event;
console.log(event);
api.toast({
msg: event
});
if (event == 'VideoState_videoDidStartPlay') {
}else if (event == 'VideoState_videoDidPause'){
}else if (event == 'VideoState_videoDidResume'){
}else if (event == 'VideoState_videoDidEndPlay'){
}else if (event == 'VideoState_videoDidFailedToPlay'){
}
//VideoState_videoDidStartPlay 视频开始播放
//VideoState_videoDidPause 视频暂停播放
//VideoState_videoDidResume 视频恢复播放
//VideoState_videoDidEndPlay 视频停止播放 有是否播放完成参数
//VideoState_videoDidFailedToPlay 视频播放失败
//contentDidFullDisplay 内容展示
//contentDidEndDisplay 内容隐藏
//contentDidPause 内容暂停显示
//contentDidResume 内容恢复显示
});
1.调用方法:
loadAd({adId:’广告id’,adCount:广告个数(int),width:广告宽度(float),height:广告高度(float)})
//fixedOn:视图位置
//fixed:控制视图是否随着frame内容的移动而跟着移动
showIn({index:对应位置广告(int),fixedOn:’视图位置‘,fixed:false})
2.示例
function loadFeedFullVideo() {
var feedVideo = api.require('SJMFeedFullVideoModule');
contentPage.loadAd({
adId: 'SJM_V001',
adCount:5,
width:300,
height:600,
},function(ret, err){
var event = ret.event;
console.log(event);
api.toast({
msg: event
});
if (event == 'feedFullVideoProviderLoadSuccess') {
contentPage.showIn({
index : 0,
fixedOn:api.frameName,
fixed: false
});
}else if (event == 'feedFullVideoProviderLoadFail'){
}else if (event == 'feedFullVideoAdViewRenderSuccess'){
}else if (event == 'feedFullVideoAdViewRenderFail'){
}else if (event == 'feedFullVideoAdViewWillShow'){
}else if (event == 'feedFullVideoAdViewStateDidChanged'){
}else if (event == 'feedFullVideoAdViewPlayerDidPlayFinish'){
}else if (event == 'feedFullVideoAdViewDidClick'){
}else if (event == 'feedFullVideoAdViewDetailViewWillPresentScreen'){
}else if (event == 'feedFullVideoAdViewDetailViewClosed'){
}
//feedFullVideoProviderLoadSuccess 广告加载成功
//feedFullVideoProviderLoadFail 广告加载失败
//feedFullVideoAdViewRenderSuccess 广告渲染成功
//feedFullVideoAdViewRenderFail 广告渲染失败
//feedFullVideoAdViewWillShow 广告曝光回调
//feedFullVideoAdViewStateDidChanged 视频广告播放状态更改回调
//feedFullVideoAdViewPlayerDidPlayFinish 视频广告播放完毕
//feedFullVideoAdViewDidClick 广告点击回调
//feedFullVideoAdViewDetailViewWillPresentScreen 广告详情页面即将展示回调
//feedFullVideoAdViewDetailViewClosed 广告详情页关闭回调
});
}
1.调用方法:
//interval 广告刷新间隔,范围 [30, 120] 秒,默认值 30 秒。设 0 则不刷新。
//fixedOn:视图位置
//fixed:控制视图是否随着frame内容的移动而跟着移动
loadAdAndShow({adId:'广告id',width:宽度,height:高度(float),interval:0,fixedOn:视图位置,fixed:false})
2.示例
function showBannerAd() {
var bannerAd = api.require('SJMBannerAdModule');
bannerAd.loadAdAndShow({
rect: {
x: 100,
y: 200,
w: 300,
h: 80
},
adId: 'SJM_B003',
width:300,
height:80,
interval:30,
fixedOn:api.frameName,
fixed:false
},function(ret, err){
var event = ret.event;
console.log(event);
api.toast({
msg: event
});
if (event == 'bannerAdViewDidLoad') {
}else if (event == 'bannerAdViewDidLoadFail'){
}else if (event == 'bannerAdViewWillBecomVisible'){
}else if (event == 'bannerAdViewDislike'){
}else if (event == 'bannerAdViewDidClick'){
}else if (event == 'bannerAdViewDidCloseOtherController'){
}
//bannerAdViewDidLoad banner广告加载成功
//bannerAdViewDidLoadFail banner广告加载失败
//bannerAdViewWillBecomVisible banner广告展示
//bannerAdViewDislike banner广告关闭
//bannerAdViewDidClick banner广告点击
//bannerAdViewDidCloseOtherController banner广告关闭详情页
});
}