示例#1
0
        public override void SyncAdPosition()
        {
            if (m_CurrentHandler == null)
            {
                return;
            }

            m_CurrentHandler.SyncAdPosition();
        }
示例#2
0
        protected void SelectAd2Show()
        {
            AdHandler next = null;

            for (int i = 0; i < m_AdHandler.Count; ++i)
            {
                if (!m_AdHandler[i].isAdPlatformEnable)
                {
                    continue;
                }

                if (m_AdHandler[i].adState != AdState.Failed)
                {
                    next = m_AdHandler[i];
                    break;
                }
            }

            if (next != m_CurrentHandler)
            {
                if (m_CurrentHandler != null)
                {
                    m_CurrentHandler.HideAd();
                }

                m_CurrentHandler = next;

                m_AlreadyShowDuration = 0;
                if (m_CurrentHandler != null)
                {
                    m_CurrentHandler.PreLoadAd();
                    m_CurrentHandler.SyncAdPosition();
                    m_RefreshTime = Time.realtimeSinceStartup;
                    m_CurrentHandler.ShowAd();
                    m_CurrentHandler.RefreshAd();

                    StartCheckTimeTick();
                }
            }
            else
            {
                if (m_CurrentHandler == null)
                {
                    return;
                }

                float showDuration = m_AlreadyShowDuration;
                if (m_RefreshTime > 0)
                {
                    showDuration += Time.realtimeSinceStartup - m_RefreshTime;
                }

                if (!m_IsBannerShow)
                {
                    m_CurrentHandler.ShowAd();
                }

                if (showDuration >= REFRESH_DURATION)
                {
                    m_CurrentHandler.RefreshAd();
                    m_RefreshTime = Time.realtimeSinceStartup;
                    StartCheckTimeTick();
                }
            }
        }