IosAnalytics.cs 920 B

1234567891011121314151617181920212223242526272829303132
  1. #if UNITY_IOS
  2. using System.Runtime.InteropServices;
  3. using AOT;
  4. namespace UnityEngine.Monetization
  5. {
  6. sealed internal class IosAnalytics
  7. {
  8. private static IosAnalytics Instance { get; set; }
  9. delegate void unityAnalyticsTriggerAddExtras(string jsonExtras);
  10. [DllImport("__Internal")]
  11. static extern void UANAEngineDelegateSetTriggerAddExtras(unityAnalyticsTriggerAddExtras trigger);
  12. [DllImport("__Internal")] private static extern void InitializeUANAEngineWrapper();
  13. [MonoPInvokeCallback(typeof(unityAnalyticsTriggerAddExtras))]
  14. static void TriggerAddExtras(string extras)
  15. {
  16. Analytics.SetAnalyticsEventExtra(extras);
  17. }
  18. public void Initialize()
  19. {
  20. Instance = this;
  21. UANAEngineDelegateSetTriggerAddExtras(TriggerAddExtras);
  22. InitializeUANAEngineWrapper();
  23. }
  24. }
  25. }
  26. #endif