2015-12-30 1 views
-1

Привет ребята новичок в развитии единства и я хочу, чтобы добавить 3 SDKs интегрировать в ЕДИНСТВАЯ хочу добавить Mutiple API, и создать единый API

  1. FACEBOOK SDK

  2. Countly

  3. Adjust

и хотел сделать единый SDK, так что он может быть U sed в будущем любая идея, как это сделать?

+0

«Привет, ребята, новые для развития» - возможно, попробуйте что-то менее амбициозное - «привет мир!» - это обычное стартовое место –

+0

несколько раз вам нужно бежать до того, как вы сможете ходить –

+0

И иногда вам нужно понимать свои ограничения .. .. –

ответ

0

Я не знаю, какую функциональность вы хотите использовать из этих модулей, но если все они в значительной степени сделают то же самое, вы можете определить общий интерфейс и иметь 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; 
    } 
} 

И, наконец, вы могли бы иметь какой-то контроллер, который на старте просит завод предоставить все поддерживаемые отслеживания SDKs, а затем управляет ими.

И если люди говорят вам придерживаться своих целей ниже, просто игнорируйте их. Стремитесь высоко и узнайте, что вам нужно, чтобы добраться туда.

+0

благодарю вас за то, что вы предоставили мне цель, я есть теперь точка, в которой я должен идти .. thanx alot –

Смежные вопросы