private readonly Object _syncRoot = new Object();
private MyTargetView _myTargetView;
private void Awake()
{
if (_myTargetView != null)
{
return;
}
lock (_syncRoot)
{
if (_myTargetView != null)
{
return;
}
// Создаем экземпляр MyTargetView
_myTargetView = new MyTargetView(YOUR_SLOT_ID);
// Устанавливаем обработчики событий
_myTargetView.AdClicked += OnAdClicked;
_myTargetView.AdLoadFailed += OnAdLoadFailed;
_myTargetView.AdLoadCompleted += OnAdLoadCompleted;
_myTargetView.AdShown += OnAdShown;
// Запускаем загрузку данных
_myTargetView.Load();
}
}
private void OnAdClicked(Object sender, EventArgs eventArgs) { }
private void OnAdShown(Object sender, EventArgs eventArgs) { }
private void OnAdLoadFailed(Object sender, ErrorEventArgs errorEventArgs) { }
private void OnAdLoadCompleted(Object sender, EventArgs eventArgs)
{
// Данные успешно загружены
// Устанавливаем позицию на экране
_myTargetView.X = 0;
_myTargetView.Y = 0;
// Запускаем показ объявлений
_myTargetView.Start();
}
private void OnDestroy()
{
if (_myTargetView == null)
{
return;
}
lock (_syncRoot)
{
if (_myTargetView == null)
{
return;
}
_myTargetView.Dispose();
_myTargetView = null;
}
}