No Description
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

LegacyAnalyticsWrapper.cs 1.2KB

1234567891011121314151617181920212223242526272829303132333435
  1. using UnityEngine.Purchasing.Extension;
  2. namespace UnityEngine.Purchasing
  3. {
  4. class LegacyAnalyticsWrapper : IAnalyticsAdapter, ICoreServicesEnvironmentObserver
  5. {
  6. bool m_Enabled = true;
  7. IAnalyticsAdapter m_LegacyAdapter;
  8. IAnalyticsAdapter m_EmptyAdapter;
  9. internal LegacyAnalyticsWrapper(IAnalyticsAdapter legacyAdapter, IAnalyticsAdapter emptyAdapter)
  10. {
  11. m_LegacyAdapter = legacyAdapter;
  12. m_EmptyAdapter = emptyAdapter;
  13. CoreServicesEnvironmentSubject.Instance().SubscribeToUpdatesAndGetCurrent(this);
  14. }
  15. public void SendTransactionEvent(Product product)
  16. {
  17. m_AnalyticsAdapter.SendTransactionEvent(product);
  18. }
  19. public void SendTransactionFailedEvent(Product product, PurchaseFailureDescription description)
  20. {
  21. m_AnalyticsAdapter.SendTransactionFailedEvent(product, description);
  22. }
  23. public void OnUpdatedCoreServicesEnvironment(string currentEnvironment)
  24. {
  25. m_Enabled = CoreServicesEnvironmentSubject.Instance().IsDefaultLiveEnvironment(currentEnvironment);
  26. }
  27. IAnalyticsAdapter m_AnalyticsAdapter { get { return m_Enabled ? m_LegacyAdapter : m_EmptyAdapter; } }
  28. }
  29. }