Unity IAP 无法按预期工作以删除广告横幅
Unity IAP not working as expected to remove ad banner
我正在尝试为一个统一的移动应用程序实现删除广告功能,我还没有将 IAP 服务与 google play 集成,但我只是想弄清楚逻辑并让它工作首先在测试环境中。我成功地显示了底部屏幕广告横幅,当用户登录时,在他的个人资料屏幕上有一个删除广告的按钮,OnClick 数据库中名称为“已订阅”的用户属性设置为 true,我删除了广告按钮和隐藏广告横幅,所以在下次登录时,我实现了一个功能来检查用户订阅,因此如果用户订阅,则不会显示删除广告按钮和广告横幅。此协程在用户登录和订阅用户登录时为 运行,不显示删除广告按钮,但广告横幅仍然打开,我在为 AdDisplay 实例调用 HideBanner 函数的行中收到 NullReferenceException 错误.
我正在使用 Unity Ads 来展示广告横幅。
private IEnumerator CheckSubscription()
{
var DBTask = DBreference.Child("users").Child(User.UserId).GetValueAsync();
yield return new WaitUntil(predicate: () => DBTask.IsCompleted);
if(DBTask.Exception != null)
{
Debug.LogWarning(message: $"Failed to retrieve user subscirption status");
}
else
{
DataSnapshot snapshot = DBTask.Result;
var isSubscribed = snapshot.Child("subscription").Value.ToString();
if(isSubscribed == "true")
{
UIManager.instance.RemoveAds();
AdDisplay.instance.showAds = false; //Console error on this line of code
}
else
{
AdDisplay.instance.showAds = true;
}
}
}
我设法使用
修复了它
Advertisement.Banner.Hide()
并设置一个标志来检查用户是否拥有删除广告功能以及是否
flag == true
hideBanner 方法执行,否则广告只是 运行 正常。
我正在尝试为一个统一的移动应用程序实现删除广告功能,我还没有将 IAP 服务与 google play 集成,但我只是想弄清楚逻辑并让它工作首先在测试环境中。我成功地显示了底部屏幕广告横幅,当用户登录时,在他的个人资料屏幕上有一个删除广告的按钮,OnClick 数据库中名称为“已订阅”的用户属性设置为 true,我删除了广告按钮和隐藏广告横幅,所以在下次登录时,我实现了一个功能来检查用户订阅,因此如果用户订阅,则不会显示删除广告按钮和广告横幅。此协程在用户登录和订阅用户登录时为 运行,不显示删除广告按钮,但广告横幅仍然打开,我在为 AdDisplay 实例调用 HideBanner 函数的行中收到 NullReferenceException 错误.
我正在使用 Unity Ads 来展示广告横幅。
private IEnumerator CheckSubscription()
{
var DBTask = DBreference.Child("users").Child(User.UserId).GetValueAsync();
yield return new WaitUntil(predicate: () => DBTask.IsCompleted);
if(DBTask.Exception != null)
{
Debug.LogWarning(message: $"Failed to retrieve user subscirption status");
}
else
{
DataSnapshot snapshot = DBTask.Result;
var isSubscribed = snapshot.Child("subscription").Value.ToString();
if(isSubscribed == "true")
{
UIManager.instance.RemoveAds();
AdDisplay.instance.showAds = false; //Console error on this line of code
}
else
{
AdDisplay.instance.showAds = true;
}
}
}
我设法使用
修复了它Advertisement.Banner.Hide()
并设置一个标志来检查用户是否拥有删除广告功能以及是否
flag == true
hideBanner 方法执行,否则广告只是 运行 正常。