首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >UnityAds isReady()总是返回false

UnityAds isReady()总是返回false
EN

Stack Overflow用户
提问于 2019-08-03 08:52:05
回答 1查看 1.3K关注 0票数 1

我面临一个问题,同时整合统一广告。我的要求是,在很少的免费游戏播放后,用户应该在下一个游戏发布时通过一个广告,然后他就可以玩游戏了。但是当我检查位置是否准备好时,我可以在IUnityAdsListener.onUnityAdsReady().中显示广告UnityAds.isReady(placementId: String)总是返回false。

我正在尝试用

代码语言:javascript
复制
UnityAds.initialize(this, "<GameId>", this@MainActivity, false)

我的IUnityAdsListener

代码语言:javascript
复制
override fun onUnityAdsStart(p0: String?) {
    println("Unity ad start")
}

override fun onUnityAdsFinish(p0: String?, p1: UnityAds.FinishState?) {
    println("Unity ad finished")
    loadGame()
}

override fun onUnityAdsError(error: UnityAds.UnityAdsError?, message: String?) {
    println("Unity ad error, $message, ${error?.name}")
}

override fun onUnityAdsReady(placementId: String?) {
    if(UnityAds.isReady(placementId)){
        UnityAds.show(this@MainActivity, placementId)
    }

    println("Unity ad ready, Placement Id: $placementId")
}
EN

回答 1

Stack Overflow用户

发布于 2019-08-03 08:58:19

我已经找到了解决办法,或者更确切地说,我已经找到了一个解决办法。

我认为问题是UnityAds需要一些时间来初始化。因此,当我创建一个线程来将UnityAds.isReady(String placementId)调用延迟几秒钟时,它返回true,广告实际上已经准备好显示,而UnityAds.show(Activity )实际上运行良好,没有任何问题。由于我的要求是尽早在游戏发布上加载和显示广告,因此团结sdk似乎很快就出现了初始化和显示广告的问题。

下面是工作的IUnityAdsListener.onUnityAdsReady(String placementId)回调方法的实现更改。

代码语言:javascript
复制
override fun onUnityAdsReady(placementId: String?) {

    if(placementId == "video") {
        val runnable = Runnable {
            Thread.sleep(2000)
            if (UnityAds.isReady("video"))
                UnityAds.show(this@MainActivity, placementId)
        }
        Thread(runnable).start()
    }

    println("Unity ad ready, Placement Id: $placementId")
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57336846

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档