Unity Admob-广告请求正确的方式

本文关键字:方式 请求 Admob- Unity | 更新日期: 2023-09-27 17:58:10

我更改了演示脚本,它对我有效:

using GoogleMobileAds.Api;
…
void Start(){
    RequestInterstitial();
}
private void RequestInterstitial()
{
    #if UNITY_EDITOR
        string adUnitId = "unused";
     #elif UNITY_ANDROID
        string adUnitId = "ca-app-pub-xxxxxxxxxxxxxxxxxxx";
     #elif (UNITY_5 && UNITY_IOS) || UNITY_IPHONE
        string adUnitId = "INSERT_IOS_INTERSTITIAL_AD_UNIT_ID_HERE";
    #else
        string adUnitId = "unexpected_platform";
    #endif
    // Create an interstitial.
    interstitial = new InterstitialAd(adUnitId);
    // Load an interstitial ad.
    interstitial.LoadAd(createAdRequest());
}
private AdRequest createAdRequest()
{
    return new AdRequest.Builder()
            .AddTestDevice(AdRequest.TestDeviceSimulator)
            .AddTestDevice("0123456789ABCDEF0123456789ABCDEF")
            .AddKeyword("game")
            .SetGender(Gender.Male)
            .SetBirthday(new DateTime(1985, 1, 1))
            .TagForChildDirectedTreatment(false)
            .AddExtra("color_bg", "9B30FF")
            .Build();
}

 public void endGame(){
        if (interstitial.IsLoaded())
        {
            interstitial.Show();
        }
    }

现在我想删除测试设备以在实际工作中使用它,我所需要做的就是更改方法createAdRequest(),如下所示:

private AdRequest createAdRequest()
{
    return new AdRequest.Builder().Build();
}

这行得通吗?有一些论点,我需要放在广告请求?如果我需要改变什么,有人能给我举个例子吗?

感谢

Unity Admob-广告请求正确的方式

这行得通吗?

是的。当然,您可以添加SetGenderSetBirthday和其他选项,但应该可以。一旦您准备好部署,只需删除您在问题中已经完成的AddTestDevice()选项。

无论如何,我看不到您订阅OnAdRewarded活动。当广告显示完毕时,会调用此函数。你可以在这里看到如何做到这一点。