请问有没有人这样添加banner广告位

是这样的,我的设计图是750X1334的,按这种设计图做完游戏后,基本上屏幕的空间都被占满了,没什么空间在底部添加bannner广告位了。

但我发现,现在市面上的手机很多都是那种长屏幕的了,也就是18:9那种比例。在这种手机上,我的游戏底部就能多出不少空间了。这空间留着实在可惜(而且空出一大块也不是很美观),所以我想利用这空间加上banner广告。我的是消除游戏,banner广告可以30秒更新一次,那么用户玩一局下来,banner曝光次数应该相当可观了。

那么问题来了,因为要针对不同机型来决定是否加banner广告,那么我是不是应该这样判断呢:如果屏幕的比例是16:9左右,我就不添加广告位。如果屏幕比例是18:9甚至更大,我就添加广告。

上面是我的思路,因为从来没这样处理过,不知道这样做存不存在什么问题。另外,cocos获取屏幕大小一般用什么API,getWinSize据说已经废弃了,现在是用 getVisibleSize吗?
请各位老师指教,谢谢!

微信有获取屏幕大小的api,你可以试试

不是的,因为我要上各种平台,包括原生的,所以想用cocos自己的api。
当然,用什么api倒不是最重要的,我主要想请教一下这种按屏幕比例判断是否加banner的思路有没有问题。

是一种思路,我也没有试过,应该可行

你看看,cc.view这个api

嗯,我想干脆也没有必要看宽和高具体的像素是多少,爱是多少是多少。我就计算宽高比例。

另外,我不是特别确定,banner广告刷新一次就应该算一次曝光吧?比如用户玩的期间,banner广告自动刷新了50次,应该是给我算50次曝光吧?

我也不是很清楚,听运营的同事说banner广告曝光过高是可能被封广告的,好像不能超过15%你看看你后台呗。另外曝光再高转化不行也没有啥用,毕竟banner收益靠点击

试试搞搞误触呗

误触容易让用户感到不满。
但是广告平台是可以让开发者定义自动刷新时间的啊,应该是30秒可以刷新一次。那我按他们的规定这样设置刷新,然后封我广告就太没道理了吧。

可以根据长宽比, 来判断。cc.winSize.width ,cc.winSize.height .

好的,谢谢,既然这思路可行就好。开始主要担心这思路是野路子

用这个方法吧
App.client_SDK 就是 window[“wx”] window[“qq”]

viewIsShowBanner(){

    if(App.isVivoGame() || App.isOppoGame()){

        return true

    }

    if(!App.client_SDK){

        return false

    }

    let result = false;

    const res =  App.client_SDK.getSystemInfoSync();

    const rate = res.windowHeight / res.windowWidth;

    let limit = res.windowHeight == res.screenHeight ? 1.8 : 1.65; // 临界判断值

    if (rate > limit) result = true;

    return result;

}
1赞