Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Добавить первую версию сервиса аналитики #3

Open
6 tasks
aminbenarieb opened this issue Jan 21, 2019 · 0 comments
Open
6 tasks
Labels
good first issue Good for newcomers

Comments

@aminbenarieb
Copy link
Contributor

Что нужно:
Создать и добавить сервис аналитики в StartModule и трекнуть событие успешной неуспешной авторизации:

Шаги:

  • Реализовать сервис аналитики, покрыв его базовым интерфейсом:

struct Event {
  let name: String
  let properties: [String :Any]
}

protocol EventTracker {
           func track(eventName: String, properties: [String :Any])
           func track(event: Event)
}

На реализацию можно поставить заглушки (NSLog).

  • Добавить сервис в ServiceAssembly, сервис будет singleton-ном, в Swinect для нужно задать scope .container
  • Добавить опциональное property в StartPresenter: var eventTracker : EventTracker?
  • Достать в StartAssembly из container-а ServiceAssembly: r.resolve(ServiceAssemblyProtocol.self)
  • Заинжектить eventTracker presenter.eventTracker =self.serviceAssembly.getService()
  • Добавить событие успеха например: "successfull auth", неудачи: "failed auth"
@aminbenarieb aminbenarieb added the good first issue Good for newcomers label Jan 21, 2019
@aminbenarieb aminbenarieb changed the title Сервис первую версию сервиса аналитики Добавить первую версию сервиса аналитики Jan 21, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
good first issue Good for newcomers
Projects
None yet
Development

No branches or pull requests

1 participant