【问题标题】:Why am i getting 'No Overload Method .createBanner takes '3' arguments?为什么我得到'无重载方法.createBanner 需要'3'参数?
【发布时间】:2014-07-07 14:18:41
【问题描述】:

当我尝试使用 Google Admob 拨打 CreateBanner 时,为什么会收到错误 No Overload Method .createBanner takes '3' arguments

using UnityEngine;
using System.Collections;

public class AdMob : MonoBehaviour {

private const string AD_UNIT_ID = " ";
private AdMobPlugin admob;

public bool hidden = true;

// Use this for initialization
void Start () {

    admob = GetComponent<AdMobPlugin> ();
    admob.CreateBanner (AD_UNIT_ID, AdMobPlugin.AdSize.SMART_BANNER, false);
    admob.RequestAd ();
}

【问题讨论】:

  • 可能是因为没有.createBanner() 方法的重载采用3 参数?顺便说一下是怎么定义的?
  • 这就是整个脚本Soner,我今天做了这么多,我现在只是空着运行
  • @user3790606 是的,但是什么是 AdMobPlugin 以及 CreateBanner 做什么?!
  • 右键单击CreateBanner 并选择“转到定义”。这将向您展示它期望的参数。

标签: c# unity3d admob


【解决方案1】:

AdMobPlugin.CreateBanner() 不只接受三个参数,它需要五个。您缺少唯一的插页式 ID 和 isTestDevice 布尔值。

来自 Unity Admob AdMobPlugin 的源代码,预期参数为:

public void CreateBanner(string adUnitId, AdSize adSize, bool isTopPosition, string interstitialId, bool isTestDevice)

所以你的方法调用应该是这样的:

admob.CreateBanner(AD_UNIT_ID, AdMobPlugin.AdSize.SMART_BANNER, true, INTERSTITIAL_ID, IS_TEST_DEVICE);

看看Adding Google Admob Plugin to UnityUnity Admob source

【讨论】:

  • 即使我将“INTERSTITAL_ID”添加到末尾,我还是会得到。错误:重载需要 4 个参数!那更糟
  • 右击CreateBanner并选择“转到定义”,告诉我你看到的定义。
  • 这几乎和我工作的一样。是肖恩·奥布莱恩写的。上帝,我也希望这也能奏效!这些 admobs 集成让我很生气......
  • 我想我修好了,看看source
  • 天哪,这些admob插件太麻烦了!老实说,我的整个游戏构建现在都不起作用.. 这只是樱桃!
【解决方案2】:

回应cyral:

这是一个巨大的错误构建播放器消息。具体来说:'错误构建播放器:

CommandInvokationFailure:重新打包资源失败。有关详细信息,请参阅控制台。 C:\Users\Max\Documents\adt-bundle-windows-x86_64-20140624\sdk\build-tools\android-4.4W\aapt.exe 包 --auto-add-overlay -v -f -m -J gen -M AndroidManifest.xml -S "res" -I "C:/Users/Max/Documents/adt-bundle-windows-x86_64-20140624/sdk/platforms/android-20\android.jar" -F bin/resources. ap_ --extra-packages com.google.example.games.basegameutils:com.google.android.gms:com.google.example.games.mainlibproj -S "C:\Users\Max\Documents\Unity Dev\TWOTWO\ Temp\StagingArea\android-libraries\BaseGameUtils\res" -S "C:\Users\Max\Documents\Unity Dev\TWOTWO\Temp\StagingArea\android-libraries\google-play-services_lib\res" '

【解决方案3】:

您收到错误是因为没有调用 CreateBannerAdMobPlugin 实例方法采用 3 个参数。

【讨论】:

  • 我不认为改写错误算作答案,应该是评论。
  • @Cryal,当错误不言自明时,我看不出还有什么可以做的。虽然您的回答增加了价值,但它对特定问题的回答并不比我的回答或错误本身更好。
  • 查找一些文档并提供解决方案?编辑:我明白了,是的,这技术上回答了所提出的问题。
猜你喜欢
  • 1970-01-01
  • 2020-09-02
  • 1970-01-01
  • 1970-01-01
  • 2014-02-28
  • 1970-01-01
  • 1970-01-01
  • 2012-09-02
  • 1970-01-01
相关资源
最近更新 更多