Контролируйте время между объявлениями в Unity3D Game - PullRequest
0 голосов
/ 18 мая 2018

Я использовал приведенный ниже код obj.C для обработки времени между показом рекламы. Но сейчас мне нужен такой же код на C # для Unity3D.

-(void)showFullScreenads
{
    static NSTimeInterval gCBLastFail = -999;
    static bool isFirssst = true;

    if(!isFirssst)
    {
        NSTimeInterval intr = [NSDate timeIntervalSinceReferenceDate];

        float diff = intr - gCBLastFail;

        if(diff < 60.0f) // don't show ads if less than 60 sec
        {
            return;
        }
        else
        {
            gCBLastFail = [NSDate timeIntervalSinceReferenceDate];
        }
    }

    gCBLastFail = [NSDate timeIntervalSinceReferenceDate];
    isFirssst = false;

    [self showGoogleAdmobAds];
}

Ищем тот же код стиля для unity3d для контроля времени между объявлениями. Пожалуйста, помогите мне.

1 Ответ

0 голосов
/ 18 мая 2018

Вы не можете использовать static в функции, как в C ++ и Object-C.Объявите переменные, которые используют статический спецификатор вне функции.Вы можете заменить NSTimeInterval или timeIntervalSinceReferenceDate на Time.time.Лучше, если эта функция showFullScreenads вызывается из функции Update, которая вызывается каждый кадр.

Это эквивалентная функция C #:

static float gCBLastFail = -999;
static bool isFirssst = true;

void showFullScreenads()
{
    if (!isFirssst)
    {
        float intr = Time.time;

        float diff = intr - gCBLastFail;

        if (diff < 60.0f) // don't show ads if less than 60 sec
        {
            Debug.Log("Add not displayed");
            return;
        }
        else
        {
            gCBLastFail = Time.time;
        }
    }

    gCBLastFail = Time.time;
    isFirssst = false;

    Debug.LogWarning("Add displayed");
    showGoogleAdmobAds();
}

void showGoogleAdmobAds()
{
    //Your admob plugin code to show ad

}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...