由于laya打包的微信小游戲,都是打包到一個(gè)畫布再一個(gè)頁(yè)面中運(yùn)行的消返,以及項(xiàng)目組和我都沒(méi)接過(guò)郁岩,導(dǎo)致后面接?xùn)|西的很多坑。
1. Banner廣告睦尽,
由于laya打包的小游戲只有一個(gè)頁(yè)面器净。而微信小游戲的廣告都是建議一個(gè)頁(yè)面的同一個(gè)地方只用一個(gè)貼片對(duì)象。策劃那邊配的是6個(gè)運(yùn)行再不同地方的貼片廣告当凡,最初我的做法是山害,再頁(yè)面初始化完成后加載6個(gè)貼片,再需要顯示的時(shí)候宁玫,切換顯示粗恢。后面考慮到性能柑晒,說(shuō)服策劃用一個(gè)欧瘪,后面通過(guò)上報(bào)的埋點(diǎn)數(shù)據(jù)去統(tǒng)計(jì)再哪里點(diǎn)擊的。這里就出現(xiàn)第二個(gè)坑了:Banner廣告沒(méi)辦法做點(diǎn)擊埋點(diǎn)匙赞。由于banner廣告沒(méi)有相應(yīng)的點(diǎn)擊回調(diào)佛掖。在查找資料后只能通過(guò)這個(gè)教程上的方法,進(jìn)行曲線救國(guó)
https://blog.csdn.net/weixin_41753574/article/details/103898376
但問(wèn)題又來(lái)了涌庭,laya打包的小游戲在畫布中運(yùn)行芥被,沒(méi)有對(duì)wxml代碼進(jìn)行運(yùn)作,所以這種方式也不行坐榆。策劃又希望能看到?jīng)]個(gè)貼片廣告的點(diǎn)擊拴魄,所以又改回了最初的在游戲內(nèi)用6個(gè)貼片的方式。
在最后快上線的時(shí)候和制作人他們討論性能的時(shí)候,說(shuō)這個(gè)地方會(huì)出現(xiàn)很大的性能耗費(fèi)匹中,于是又改回了1個(gè)的夏漱,我哭了QAQQQQQ。
2. 激勵(lì)視頻廣告RewardedVideoAd:
?微信官方建議為了新能考慮一個(gè)頁(yè)面只放一個(gè)激勵(lì)視頻廣告顶捷,所以在用wx.createRewardedVideoAd接口對(duì)激勵(lì)廣告實(shí)例化的時(shí)候挂绰,如果不進(jìn)行multiton:true的聲明的,默認(rèn)multiton是false:也就是單例的服赎,在一個(gè)頁(yè)面中是單個(gè)的葵蒂。第一個(gè)坑我踩在這,一樣的策劃配了6個(gè)激勵(lì)廣告對(duì)象重虑,我在沒(méi)有聲明multiton践付,創(chuàng)建了6個(gè)廣告對(duì)象,在合適的位置show嚎尤。就相當(dāng)于在小游戲中只有第一個(gè)建立的激勵(lì)游戲單例對(duì)象荔仁。于是在微信后臺(tái)看到的數(shù)據(jù)明顯有錯(cuò)誤!芽死,
于是我試了第二種:
按鈕A被點(diǎn)擊?=》createRewardedVideoAd?A廣告?-》顯示A廣告?-》onclose(處理返回事件乏梁,A.destroy)
按鈕B被點(diǎn)擊?=》createRewardedVideoAd?B廣告?-》顯示B廣告?-》onclose(處理返回事件,B.destroy)
但這里微信有個(gè)BUG:在同一個(gè)頁(yè)面destroy一個(gè)激勵(lì)廣告的時(shí)候关贵,回導(dǎo)致第二個(gè)激勵(lì)廣告拉起出錯(cuò)遇骑,并報(bào)錯(cuò)
這個(gè)部分咨詢了微信,他們說(shuō)這是微信的BUG揖曾,建議這種情況最好是做成多例的及建立6個(gè)廣告對(duì)象落萎,需要顯示時(shí)SHOW。這種可能導(dǎo)致性能消耗過(guò)大炭剪。最后和制作人商量后练链,只實(shí)例化2個(gè)類型的(一個(gè)6-15s,一個(gè)是15-30S)的兩個(gè)廣告奴拦。并在第一次用的時(shí)候才createRewardedVideoAd?媒鼓。(因?yàn)橹笆欠旁趌oading頁(yè)面createRewardedVideoAd?導(dǎo)致loading過(guò)長(zhǎng))