You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Unity版本升级后更新Google Mobile Ads插件出现CS0246错误求助

解决Unity升级后Google Mobile Ads 8.4.0的CS0246错误

Google Mobile Ads插件从7.0版本开始就彻底废弃了RewardBasedVideoAd类,改用RewardedAd实现激励视频广告功能。你升级到8.4.0版本后,旧代码里的RewardBasedVideoAd自然会触发CS0246找不到类型的错误,按以下步骤修复:

  • 全局替换类名:将代码中所有RewardBasedVideoAd替换为RewardedAd
  • 确认命名空间:确保代码顶部引用了using GoogleMobileAds.Api;
  • 更新广告初始化与加载逻辑:废弃的单例调用要换成实例化写法,示例:
    // 声明激励广告实例
    private RewardedAd _rewardedAd;
    
    // 初始化并加载广告
    public void LoadRewardedAd()
    {
        string adUnitId = "你的激励广告ID";
        _rewardedAd = new RewardedAd(adUnitId);
    
        AdRequest adRequest = new AdRequest.Builder().Build();
        _rewardedAd.LoadAd(adRequest);
    }
    
  • 替换回调事件:旧的事件监听需换成新的委托,示例:
    // 绑定回调
    private void BindAdEvents()
    {
        _rewardedAd.OnUserEarnedReward += OnUserEarnedReward;
        _rewardedAd.OnAdClosed += OnAdClosed;
    }
    
    // 用户获得奖励回调
    private void OnUserEarnedReward(object sender, Reward reward)
    {
        // 处理奖励发放逻辑
    }
    
    // 广告关闭回调
    private void OnAdClosed(object sender, EventArgs e)
    {
        // 广告关闭后可重新加载
        LoadRewardedAd();
    }
    
  • 清理废弃代码:删除所有与RewardBasedVideoAd相关的旧代码,避免编译冲突

额外注意:升级插件后需检查Unity的平台构建配置,比如Android的Manifest文件、iOS的Info.plist是否被插件自动配置正确,避免后续广告加载失败。

内容的提问来源于stack exchange,提问作者Nachan A

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.14 22:25:07