H5接入常见问题

广告是否支持除了OPPO小游戏或OPPO浏览器之外的环境调试?

解决方法:

需要在OPPO小游戏(H5小游戏)或OPPO浏览器(H5站点)环境进行测试。

引入JS SDK后报错 Cannot read property 'appendChild' of null

解决方法:

将广告的script标签放在body标签后面可以解决问题。

请求广告时出现1003?

解决方法:

  1. 是否使用的是oppo手机

  2. 同部手机某些广告类型有广告,有的广告类型没有广告,可以降低请求频率,可将appid、posId提交给商务查看

  3. 同部手机所有广告类型返回1003,可使用其他的手机验证,若其他手机还是不行,可联系商务处理

  4. 【建议】使用广告预览功能(路径:广告联盟-工具中心-广告预览),将手机IMEI号与广告位ID绑定生成预览信息,再进行广告测试

插屏或BANNER广告点击后游戏无反应(H5小游戏)

解决方法:

  1. 尝试在游戏中创建一个iframe标签,设置src属性,如https://www.oppo.com,并尝试点击;

  2. 若点击后仍出现相同情况,需检测游戏逻辑是否问题;

  3. 白鹭引擎尝试手动触发egret.ticker.resume

  4. 如果以上步骤未解决问题,可以联系运营人员反馈。

创建广告时提示opUnion不存在

解决方法:

  1. 检查运行环境。目前仅允许在OPPO小游戏(H5小游戏)或OPPO浏览器(H5站点)下运行JS SDK,且需要保证Android系统在4.4及以上版本;

  2. 尝试输出window.android.getAppVersion()。如有报错,请下载最新的调试包,https://cdofs.oppomobile.com/cdo-activity/static/201809/30/gamehall/book/not_battle/readme.html(H5小游戏);

  3. 若使用的仍旧是测试环境JS SDK,请改成正式:<script type="text/javascript" src="https://adsfs.oppomobile.com/mp/app/union/h5/index.js"></script>

  4. 尝试输出 window.OppoWebPage.getCommonBrowserInfo()。若是 undefined ,请联系运营人员反馈加域名白名单(H5站点);

  5. 尝试把script标签放到body标签后面;

  6. 尝试动态加载JS SDK,并检测是否加载成功;

  7. 如果以上步骤未解决问题,可以联系运营人员反馈。

containerId是什么?

解决方法:

  1. DOM(https://developer.mozilla.org/en-US/docs/Glossary/DOM),是由开发者通过HTML或者Javascript生成的,containerId即为开发者生成的DOM的id属性(https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/id);

  2. 开发者生成的广告想置于哪一个DOM中,则将该DOM的id传递;

  3. H5小游戏:若是原生广告,由webgl渲染生成的广告,请传递游戏的canvas的id。

例: 创建banner的DOM

        var id = '_' + Math.random().toString(36).slice(2);

        el = document.createElement('div');

        el.id = id;

        el.style.position = 'absolute';

        el.style.zIndex = 999;

        el.style.bottom = 0;

        el.style.width = '100%';

        el.style.fontSize = 0;

        document.body.appendChild(el);

Webgl渲染图片跨域(H5小游戏)

解决方法:

  1. 若图片为本地渲染,则不会出现跨域的错误;

  2. 若非本地渲染,可以使用游戏内元素代替图片素材进行渲染。

出现Uncaught in promise

解决方法:

  1. 详见官方文档: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise

  2. 需要加上catch捕获错误。

收到日志报"Mixed Content: The page at ...... was loaded over HTTPS, but requested an insecure image ...... This content should also be served over HTTPS."

解决方法:

对接入无影响,可以直接忽略。

Banner广告未出现

解决方法:

  1. 检查containerId是否填写正确,通过输出document.getElementById(containerId)校验;

  2. 使用 getBoundingClientRect查看位置;

  3. 设置 css属性,例如:z-index,postion,top,width等;css属性参考文档:http://css.doyoe.com/

  4. 如果以上步骤未解决问题,可以联系运营人员反馈。

视频广告展示时会跳转到其他页面

解决方法:

需要改动触发展示的事件为click。

插屏/视频广告加载成功但未展现

解决方法:

create方法后无法直接调用show方法,需要在触发展现广告前创建广告

错误例子:

var ad = opUnion.createInterstitialAd({
    ...
});
ad.show(); // 错误,create之后直接调用show

正确例子

var ad = opUnion.createInterstitialAd({
    ...
});
xx.onclick = function () {
    ad.show(); // 正确,在调用show之前已经create
};

Banner广告距离底部有一段距离

解决方法:

设置渲染Banner的DOM节点样式的fontSize为0。

插屏广告反复出现关闭后弹出现象

解决方法:

需要检查代码逻辑,插屏广告在关闭后会自动加载广告。

Banner广告如何控制显示/隐藏

解决方法:

可以通过控制展示广告的DOM元素的样式控制,如控制DOM的 display 为 block/none 显示隐藏。

H5接入常见错误码

描述 解决方案
0 成功
1 未知错误 可检查手机是否OPPO手机
1001 参数错误
1002 对象不存在
1003 无广告返回,开发者需要对该情况进行兼容处理
1004 请求广告错误
1014 广告请求应用ID无效 检查代码中的mediaId与申请的mediaId是否一致,是否存在空格
1015 广告请求应用包名无效
1016 广告请求广告位ID无效 检查代码中的posId与申请的posId是否一致,是否存在空格
1016 广告请求广告位ID无效
1029 广告请求类型错误
20001 广告请求错误
20002 广告加载中
20003 浏览器或游戏大厅版本不支持

results matching ""

    No results matching ""