You've already forked CC-Framework.Commercialization
59 lines
1.3 KiB
C#
59 lines
1.3 KiB
C#
using System;
|
|
|
|
namespace Runtime.ADAggregator
|
|
{
|
|
public abstract class ADPlayer
|
|
{
|
|
/// <summary>
|
|
/// 0 未加载 、 1 加载中、 2 加载完成
|
|
/// </summary>
|
|
protected int curState;
|
|
|
|
public string Key;
|
|
protected ADListener adListener;
|
|
public Action OnErrorAction;
|
|
|
|
public int State => curState;
|
|
|
|
public ADPlayer Init(string key)
|
|
{
|
|
this.Key = key;
|
|
this.curState = 0;
|
|
adListener = new ADListener();
|
|
this.OnInit();
|
|
return this;
|
|
}
|
|
|
|
public bool IsLoading()
|
|
{
|
|
return curState == 1;
|
|
}
|
|
|
|
public abstract void ShowAD(Action onClose, Action<bool> onVideoComplete);
|
|
|
|
public virtual bool IsReadly()
|
|
{
|
|
return this.curState == 2;
|
|
}
|
|
|
|
public abstract void LoadAD();
|
|
|
|
public virtual void OnInit()
|
|
{
|
|
}
|
|
|
|
/// <summary>
|
|
/// 主动关闭广告
|
|
/// </summary>
|
|
public virtual void CloseAD()
|
|
{
|
|
}
|
|
|
|
public void OnError(object code, string message)
|
|
{
|
|
this.OnErrorAction?.Invoke();
|
|
this.OnErrorAction = null;
|
|
curState = 0;
|
|
}
|
|
}
|
|
} |