我想添加多个 API 并创建一个 API
I want to add mutiple API's and create a single API
大家好,我是 unity 开发的新手,我想添加 3 个 SDK 以集成到 UNITY 中
FACEBOOK SDK
县
调整
想做一个SDK方便以后使用
知道怎么做吗?
我不确切知道您想从这些模块中使用什么功能,但如果它们几乎都做同样的事情,您可以定义一个通用接口并有 3 个适配器使您的模块适合该接口。
interface ITrackingSdk
{
void StartSession(string[] identifiers);
...
}
class FacebookTrackingSdk : ITrackingSdk
{
private YourFacebookModule facebook;
public static bool IsSupported { get { return true; } }
public void StartSession(string[] identifiers)
{
facebook.InitializeBla(...);
}
...
}
class CountlyTrackingSdk : ITrackingSdk { ... }
class AdjustTrackingSdk : ITrackingSdk { ... }
那么你就有了一个可以创建 ITrackingSdk 实现实例的工厂,这取决于你当前平台的支持。
class TrackingSdkFactory
{
public ICollection<ITrackingSdk> CreateSupportedTrackingSdks()
{
List<ITrackingSdk> sdks = new List...
if (FacebookTrackingSdk.IsSupported)
sdks.Add(new FacebookTrackingSdk());
if (CountlyTrackingSdk.IsSupported)
sdks.Add(new CountlyTrackingSdk());
if (AdjustTrackingSdk.IsSupported)
sdks.Add(new AdjustTrackingSdk());
return sdks;
}
}
最后你可能会有某种控制器,它在开始时要求工厂提供所有支持的跟踪 SDK,然后管理它们。
如果人们告诉您降低目标,请忽略他们。志存高远,了解实现目标所需的条件。
大家好,我是 unity 开发的新手,我想添加 3 个 SDK 以集成到 UNITY 中
FACEBOOK SDK
县
调整
想做一个SDK方便以后使用 知道怎么做吗?
我不确切知道您想从这些模块中使用什么功能,但如果它们几乎都做同样的事情,您可以定义一个通用接口并有 3 个适配器使您的模块适合该接口。
interface ITrackingSdk
{
void StartSession(string[] identifiers);
...
}
class FacebookTrackingSdk : ITrackingSdk
{
private YourFacebookModule facebook;
public static bool IsSupported { get { return true; } }
public void StartSession(string[] identifiers)
{
facebook.InitializeBla(...);
}
...
}
class CountlyTrackingSdk : ITrackingSdk { ... }
class AdjustTrackingSdk : ITrackingSdk { ... }
那么你就有了一个可以创建 ITrackingSdk 实现实例的工厂,这取决于你当前平台的支持。
class TrackingSdkFactory
{
public ICollection<ITrackingSdk> CreateSupportedTrackingSdks()
{
List<ITrackingSdk> sdks = new List...
if (FacebookTrackingSdk.IsSupported)
sdks.Add(new FacebookTrackingSdk());
if (CountlyTrackingSdk.IsSupported)
sdks.Add(new CountlyTrackingSdk());
if (AdjustTrackingSdk.IsSupported)
sdks.Add(new AdjustTrackingSdk());
return sdks;
}
}
最后你可能会有某种控制器,它在开始时要求工厂提供所有支持的跟踪 SDK,然后管理它们。
如果人们告诉您降低目标,请忽略他们。志存高远,了解实现目标所需的条件。