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

Unity GoogleMobileAds初始化报错:string无法转换为对应Action委托类型

问题原因

这个报错是因为你使用的Google Mobile Ads Unity SDK 版本≥8.0.0,官方调整了MobileAds.Initialize()方法的参数签名:

  • 旧版本(v7及以下):支持直接传入appId字符串作为参数
  • 新版本(v8及以上):不再允许在Initialize方法中传入appId,参数改为接收初始化完成的回调委托System.Action<GoogleMobileAds.Api.InitializationStatus>
解决步骤
  • 第一步:完成appId全局配置
    打开Unity编辑器顶部菜单 Assets > Google Mobile Ads > Settings,在对应Android和iOS的输入框中填入你的AdMob应用ID,配置后SDK会自动把ID写入打包后的AndroidManifest.xml和Info.plist中,不需要在代码里手动传递。
  • 第二步:修改初始化代码
    把原来的MobileAds.Initialize(appId);替换为对应版本的调用逻辑:
    // 直接传入初始化完成的回调即可
    MobileAds.Initialize((InitializationStatus initStatus) =>
    {
        // 可在此处添加初始化完成后的逻辑,比如加载各类型广告
        Debug.Log("AdMob SDK 初始化完成");
    });
    
  • 如果你不需要监听初始化结果,也可以直接传空回调:
    MobileAds.Initialize(_ => {});
    
补充说明

如果暂时不想调整调用逻辑,可以回退Google Mobile Ads SDK到v7及以下版本,但更推荐使用官方新版配置方式,避免后续出现兼容性问题。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.02 12:06:04