gpt4 book ai didi

android - UnityAds isReady() 总是返回 false

转载 作者:行者123 更新时间:2023-11-29 22:56:57 25 4
gpt4 key购买 nike

我在集成 Unity 广告时遇到问题。我的要求是,在玩了几次免费游戏之后,用户应该在下一次游戏发布时通过广告,然后他就可以玩游戏了。但是当我检查展示位置是否准备就绪以便我可以在 IUnityAdsListener.onUnityAdsReady() 中展示广告时。 UnityAds.isReady(placementId: String) 始终返回 false。

我正在尝试初始化 sdk

UnityAds.initialize(this, "<GameId>", this@MainActivity, false)


我的 IUnityAdsListener

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")
}

最佳答案

我已经找到了解决方案或者更确切地说是解决方法。
我认为问题在于 UnityAds 需要一些时间进行初始化。因此,当我创建一个线程来延迟 UnityAds.isReady(String placementId) 调用几秒钟时,它返回 true 并且广告实际上已准备好显示并且 UnityAds.show(Activity activity, String placementId) 实际上工作正常,没有任何问题。由于我的要求是尽早在游戏启动时加载和展示广告,因此 Unity sdk 似乎在初始化和展示广告时遇到了问题。

以下是有效的 IUnityAdsListener.onUnityAdsReady(String placementId) 回调方法的实现更改。

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")
}

关于android - UnityAds isReady() 总是返回 false,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57336846/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com