c1_unity/Assets/ThirdParty/IronSourceAdQuality/Scripts/AdQuality/ISAdQualityInitCallbackWrapper.cs
2023-08-11 23:29:39 +08:00

88 lines
2.4 KiB
C#

using UnityEngine;
using System;
public class ISAdQualityInitCallbackWrapper : MonoBehaviour
{
private ISAdQualityInitCallback mCallback;
#if UNITY_ANDROID
private ISAdQualityAndroidInitHandler adQualityAndroidInitHandler;
#endif
#if UNITY_IPHONE || UNITY_IOS
private ISAdQualityiOSInitHandler adQualityiOSInitHandler;
#endif
public ISAdQualityInitCallback AdQualityInitCallback
{
set
{
mCallback = value;
}
get
{
return mCallback;
}
}
void Awake ()
{
#if UNITY_ANDROID
adQualityAndroidInitHandler = new ISAdQualityAndroidInitHandler(); //sets this.adQualityAndroidInitHandler as listener for init events on the bridge
registerAdQualityAndroidInitEvents();
#endif
#if UNITY_IPHONE || UNITY_IOS
registerAdQualityiOSInitEvents();
adQualityiOSInitHandler = new ISAdQualityiOSInitHandler(); //sets this.adQualityiOSInit as listener for init events on the bridge
#endif
DontDestroyOnLoad(gameObject); //Makes the object not be destroyed automatically when loading a new scene.
}
private void adQualitySdkInitSuccess()
{
if (mCallback != null)
{
mCallback.adQualitySdkInitSuccess();
}
}
private void onAdQualitySdkInitFailed(ISAdQualityInitError sdkInitError, string errorMsg)
{
if (mCallback != null)
{
mCallback.adQualitySdkInitFailed(sdkInitError, errorMsg);
}
}
#if UNITY_ANDROID
//subscribe to ISAdQualityAndroidInitHandler events
private void registerAdQualityAndroidInitEvents() {
adQualityAndroidInitHandler.OnAdQualitySdkInitSuccess += () =>
{
adQualitySdkInitSuccess();
};
adQualityAndroidInitHandler.OnAdQualitySdkInitFailed += (sdkInitError, errorMsg) =>
{
onAdQualitySdkInitFailed(sdkInitError, errorMsg);
};
}
#endif
#if UNITY_IPHONE || UNITY_IOS
//subscribe to ISAdQualityiOSInitHandler events
private void registerAdQualityiOSInitEvents() {
ISAdQualityiOSInitHandler.OnAdQualitySdkInitSuccess += () =>
{
adQualitySdkInitSuccess();
};
ISAdQualityiOSInitHandler.OnAdQualitySdkInitFailed += (sdkInitError, errorMsg) =>
{
onAdQualitySdkInitFailed(sdkInitError, errorMsg);
};
}
#endif
}