APICloud 集成指南


更新日志

版本 修订日期 修订说明
v2.3.33 2023-10-30 1.广告优化,2.修复已知问题

1 模块接入

1.1 模块导入

1.1.1 申请应用的 AppID

接入集成可使用以下测试id:

第一组测试id(建议使用) 第二组测试id(填充或不足)
应用id test0001 应用id 743p10001095
开屏广告 sjmad_test002 开屏广告 743d10003212
激励视频 sjmad_test001 激励视频 743d10003214
插屏(半屏) sjmad_test004 插屏(半屏) 743d10003213
信息流 sjmad_test005 信息流 743d10003215
banner(横幅) sjmad_test003 banner(横幅) 743d10003216
全屏视频 sjmad_test006 全屏视频
开发者自渲染 sjmad_test007 开发者自渲染 743d10003217
短视频内容 sjmad_test012 短视频内容 743d10003218
其他 沟通索取

如对接上有任何技术或运营规则问题可以联系相关人员,微信:liangaxybz,QQ:22770670

1.1.2 上传模块

如下图所示,将 SDK 压缩包内的sjmModule.zip上传,并在填写正确的模块名称与版本值后保存。

上传并添加自定义模块

1.1.3 添加模块

上传自定义模块成功后,将自定义模块添加到工程中。

1.1.4 编译自定义loader

在 自定义loader 页面编译成功后,使用手机扫码或下载安装。

1.1.5 开发完毕后正式云打包

2 模块初始化

开发者需要在index.htmlapiready函数中调用以下代码来初始化模块。

var sjmModule = api.require('sjmModule)
var param = {msg:"媒体ID"}
sjmModule.init(param)

3 加载广告

加载广告具体示例详见 Demo 工程中的 html\main.html

3.1 接入开屏广告

SDK为接入方提供了开屏广告,开屏广告建议为用户在进入App时展示的全屏广告。
不要在页面 apiready 回调中直接加载开屏广告,调用 loasplash 方法需要设置1000ms左右的延时。

3.1.1 接入说明
sjmModule = api.require('sjmModule')
var param = { adId: "广告位id", timeout: 3 }
sjmModule.loadsplash(param, function (ret, err) {
    console.log(JSON.stringify(ret))
})
3.1.2 回调说明

例如 {"sjm_event_action":"onSjmAdDismissed","errCode":0,"errMsg":"success"}

sjm_event_action

3.2 接入激励视频

本SDK为接入方提供激励视频广告,该广告的效果为观看完毕视频广告,发放奖励给用户。使用场景包括但不限于:

3.2.1 接入说明
// 广告位id:运营提供
// userId:app方用户登录的用户id(没有的话,可写个默认的值)
// rewardName:激励奖励的名称(没有的话,可写个默认的值)
// rewardCount:激励奖励的数量(没有的话,可写个默认的值)
sjmModule = api.require('sjmModule')
var param = {adId:"广告位id", userId:"userid", rewardName:"rewardName", rewardCount:1};
console.log(JSON.stringify(param))
sjmModule.loadReward(param, function(ret, err){
    console.log(JSON.stringify(ret))
})
3.2.2 回调说明

例如 {"sjm_event_action":"onSjmAdLoaded"}

sjm_event_action:

3.3 接入插屏广告

本SDK为接入方提供个性化模板插屏广告,开发者不用自行对广告样式进行编辑和渲染,可直接调用相关接口获取广告,广告样式模板以及微调后期支持开发者编辑。

3.3.1 接入说明
sjmModule = api.require('sjmModule')
var param = {adId:"广告位id"};
sjmModule.loadInterstitial(param, function(ret, err){
    console.log(JSON.stringify(ret))
})
3.3.2 回调说明

例如 {"sjm_event_action":"onSjmAdLoaded"}

sjm_event_action:

3.4 接入banner

SDK为接入方提供了banner广告接入

3.4.1 接入说明
// x: 模块视图左上角在俯视图的坐标点
// y: 模块视图左上角在俯视图的坐标点
// w: 模块视图的宽,0为match_parent,单位dp
// h: 模块视图的高,0为match_parent,-2为自适应wrap_content,单位dp
// fixedOn: 模块视图将被添加在某个窗口上的名字
// fixed: 跟随网页滚动
sjmModule = api.require('sjmModule')
var param = {adId:"广告位id",x:0,y:0,w:-1, h:-2,fixedOn:"main",fixed:false};
sjmModule.showBanner(param);

3.4.2 回调说明

例如 {"sjm_event_action":"onSjmAdLoaded","errCode":0,"errMsg":"success"}

sjm_event_action

3.5 接入信息流

SDK为接入方提供了信息流广告接入

3.5.1 接入说明
// x: 模块视图左上角在俯视图的坐标点
// y: 模块视图左上角在俯视图的坐标点
// w: 模块视图的宽,0为match_parent,单位dp
// h: 模块视图的高,0为match_parent,-2为自适应wrap_content,单位dp
// fixedOn: 模块视图将被添加在某个窗口上的名字
// fixed: 跟随网页滚动
sjmModule = api.require('sjmModule')
var param = {adId:"广告位id",x:0,y:0,w:-1, h:-2,fixedOn:"main",fixed:false};
sjmModule.showExpress(param);

3.5.2 回调说明

例如 {"sjm_event_action":"onSjmAdLoaded","errCode":0,"errMsg":"success"}

sjm_event_action

3.6 接入H5内容

SDK为接入方提供了定制H5内容广告

3.6.1 接入说明
sjmModule = api.require('sjmModule')
var param = {adId:""广告位id", userId:"用户id", userName:"用户昵称", userAvatar:"用户头像Url", userIntegral:(int)当前积分}
console.log(JSON.stringify(param))
sjmModule.loadH5(param, function(ret, err){
    console.log(JSON.stringify(ret))
})
3.6.2 回调说明

例如 {"sjm_event_action":"onSjmAdLoaded"}

sjm_event_action:

userBehavior:用户行为事件回调

4 常见问题

1. 无法正常加载广告

2. 固件版本过低导致编译错误

3. 在真机同步选择自定义 loader 时包名输入错误导致无法调试

1 模块接入

1.1 模块导入

3 加载广告

3.1 接入开屏广告

3.2 接入激励视频

3.3 接入插屏广告

3.4 接入banner

3.5 接入信息流

3.6 接入H5内容