TapEventMobile.cs 9.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291
  1. using System;
  2. using System.Threading.Tasks;
  3. using System.Runtime.InteropServices;
  4. using TapSDK.Core.Internal;
  5. using System.Collections.Generic;
  6. using TapSDK.Core.Internal.Log;
  7. using UnityEngine;
  8. namespace TapSDK.Core.Mobile
  9. {
  10. public class TapEventMobile : ITapEventPlatform
  11. {
  12. private EngineBridge Bridge = EngineBridge.GetInstance();
  13. public TapEventMobile()
  14. {
  15. TapLog.Log("TapEventMobile constructor");
  16. EngineBridgeInitializer.Initialize();
  17. }
  18. public void Init(TapTapEventOptions eventOptions)
  19. {
  20. }
  21. public void SetUserID(string userID)
  22. {
  23. TapLog.Log("TapEventMobile SetUserID = " + userID);
  24. Bridge.CallHandler(EngineBridgeInitializer.GetBridgeServer()
  25. .Method("setUserID")
  26. .Args("userID", userID)
  27. .CommandBuilder());
  28. }
  29. public void SetUserID(string userID, string properties)
  30. {
  31. TapLog.Log("TapEventMobile SetUserID" + userID + properties);
  32. Bridge.CallHandler(EngineBridgeInitializer.GetBridgeServer()
  33. .Method("setUserID")
  34. .Args("userID", userID)
  35. .Args("properties", properties)
  36. .CommandBuilder());
  37. }
  38. public void ClearUser()
  39. {
  40. TapLog.Log("TapEventMobile ClearUser");
  41. Bridge.CallHandler(EngineBridgeInitializer.GetBridgeServer()
  42. .Method("clearUser")
  43. .CommandBuilder());
  44. }
  45. public string GetDeviceId()
  46. {
  47. string deviceId = Bridge.CallWithReturnValue(EngineBridgeInitializer.GetBridgeServer()
  48. .Method("getDeviceId")
  49. .CommandBuilder());
  50. TapLog.Log("TapEventMobile GetDeviceId = " + deviceId);
  51. return deviceId;
  52. }
  53. public void LogEvent(string name, string properties)
  54. {
  55. TapLog.Log("TapEventMobile LogEvent" + name + properties);
  56. Bridge.CallHandler(EngineBridgeInitializer.GetBridgeServer()
  57. .Method("logEvent")
  58. .Args("name", name)
  59. .Args("properties", properties)
  60. .CommandBuilder());
  61. }
  62. public void DeviceInitialize(string properties)
  63. {
  64. TapLog.Log("TapEventMobile DeviceInitialize" + properties);
  65. #if UNITY_IOS
  66. Bridge.CallHandler(EngineBridgeInitializer.GetBridgeServer()
  67. .Method("deviceInitialize")
  68. .Args("deviceInitialize", properties)
  69. .CommandBuilder());
  70. #else
  71. Bridge.CallHandler(EngineBridgeInitializer.GetBridgeServer()
  72. .Method("deviceInitialize")
  73. .Args("properties", properties)
  74. .CommandBuilder());
  75. #endif
  76. }
  77. public void DeviceUpdate(string properties)
  78. {
  79. TapLog.Log("TapEventMobile DeviceUpdate" + properties);
  80. #if UNITY_IOS
  81. Bridge.CallHandler(EngineBridgeInitializer.GetBridgeServer()
  82. .Method("deviceUpdate")
  83. .Args("deviceUpdate", properties)
  84. .CommandBuilder());
  85. #else
  86. Bridge.CallHandler(EngineBridgeInitializer.GetBridgeServer()
  87. .Method("deviceUpdate")
  88. .Args("properties", properties)
  89. .CommandBuilder());
  90. #endif
  91. }
  92. public void DeviceAdd(string properties)
  93. {
  94. TapLog.Log("TapEventMobile DeviceAdd" + properties);
  95. #if UNITY_IOS
  96. Bridge.CallHandler(EngineBridgeInitializer.GetBridgeServer()
  97. .Method("deviceAdd")
  98. .Args("deviceAdd", properties)
  99. .CommandBuilder());
  100. #else
  101. Bridge.CallHandler(EngineBridgeInitializer.GetBridgeServer()
  102. .Method("deviceAdd")
  103. .Args("properties", properties)
  104. .CommandBuilder());
  105. #endif
  106. }
  107. public void UserInitialize(string properties)
  108. {
  109. TapLog.Log("TapEventMobile UserInitialize" + properties);
  110. #if UNITY_IOS
  111. Bridge.CallHandler(EngineBridgeInitializer.GetBridgeServer()
  112. .Method("userInitialize")
  113. .Args("userInitialize", properties)
  114. .CommandBuilder());
  115. #else
  116. Bridge.CallHandler(EngineBridgeInitializer.GetBridgeServer()
  117. .Method("userInitialize")
  118. .Args("properties", properties)
  119. .CommandBuilder());
  120. #endif
  121. }
  122. public void UserUpdate(string properties)
  123. {
  124. TapLog.Log("TapEventMobile UserUpdate" + properties);
  125. #if UNITY_IOS
  126. Bridge.CallHandler(EngineBridgeInitializer.GetBridgeServer()
  127. .Method("userUpdate")
  128. .Args("userUpdate", properties)
  129. .CommandBuilder());
  130. #else
  131. Bridge.CallHandler(EngineBridgeInitializer.GetBridgeServer()
  132. .Method("userUpdate")
  133. .Args("properties", properties)
  134. .CommandBuilder());
  135. #endif
  136. }
  137. public void UserAdd(string properties)
  138. {
  139. TapLog.Log("TapEventMobile UserAdd" + properties);
  140. #if UNITY_IOS
  141. Bridge.CallHandler(EngineBridgeInitializer.GetBridgeServer()
  142. .Method("userAdd")
  143. .Args("userAdd", properties)
  144. .CommandBuilder());
  145. #else
  146. Bridge.CallHandler(EngineBridgeInitializer.GetBridgeServer()
  147. .Method("userAdd")
  148. .Args("properties", properties)
  149. .CommandBuilder());
  150. #endif
  151. }
  152. public void AddCommonProperty(string key, string value)
  153. {
  154. TapLog.Log("TapEventMobile AddCommonProperty" + key + value);
  155. #if UNITY_IOS
  156. Bridge.CallHandler(EngineBridgeInitializer.GetBridgeServer()
  157. .Method("addCommonProperty")
  158. .Args("addCommonProperty", key)
  159. .Args("value", value)
  160. .CommandBuilder());
  161. #else
  162. Bridge.CallHandler(EngineBridgeInitializer.GetBridgeServer()
  163. .Method("addCommonProperty")
  164. .Args("key", key)
  165. .Args("value", value)
  166. .CommandBuilder());
  167. #endif
  168. }
  169. public void AddCommon(string properties)
  170. {
  171. TapLog.Log("TapEventMobile AddCommon" + properties);
  172. #if UNITY_IOS
  173. Bridge.CallHandler(EngineBridgeInitializer.GetBridgeServer()
  174. .Method("addCommon")
  175. .Args("addCommon", properties)
  176. .CommandBuilder());
  177. #else
  178. Bridge.CallHandler(EngineBridgeInitializer.GetBridgeServer()
  179. .Method("addCommonProperties")
  180. .Args("properties", properties)
  181. .CommandBuilder());
  182. #endif
  183. }
  184. public void ClearCommonProperty(string key)
  185. {
  186. TapLog.Log("TapEventMobile ClearCommonProperty");
  187. #if UNITY_IOS
  188. Bridge.CallHandler(EngineBridgeInitializer.GetBridgeServer()
  189. .Method("clearCommonProperty")
  190. .Args("clearCommonProperty", key)
  191. .CommandBuilder());
  192. #else
  193. Bridge.CallHandler(EngineBridgeInitializer.GetBridgeServer()
  194. .Method("clearCommonProperty")
  195. .Args("key", key)
  196. .CommandBuilder());
  197. #endif
  198. }
  199. public void ClearCommonProperties(string[] keys)
  200. {
  201. TapLog.Log("TapEventMobile ClearCommonProperties");
  202. #if UNITY_IOS
  203. Bridge.CallHandler(EngineBridgeInitializer.GetBridgeServer()
  204. .Method("clearCommonProperties")
  205. .Args("clearCommonProperties", keys)
  206. .CommandBuilder());
  207. #else
  208. Bridge.CallHandler(EngineBridgeInitializer.GetBridgeServer()
  209. .Method("clearCommonProperties")
  210. .Args("keys", keys)
  211. .CommandBuilder());
  212. #endif
  213. }
  214. public void ClearAllCommonProperties()
  215. {
  216. TapLog.Log("TapEventMobile ClearAllCommonProperties");
  217. Bridge.CallHandler(EngineBridgeInitializer.GetBridgeServer()
  218. .Method("clearAllCommonProperties")
  219. .CommandBuilder());
  220. }
  221. public void LogChargeEvent(string orderID, string productName, long amount, string currencyType, string paymentMethod, string properties)
  222. {
  223. TapLog.Log("TapEventMobile LogChargeEvent" + orderID);
  224. Bridge.CallHandler(EngineBridgeInitializer.GetBridgeServer()
  225. .Method("logPurchasedEvent")
  226. .Args("orderID", orderID)
  227. .Args("productName", productName)
  228. .Args("amount", amount)
  229. .Args("currencyType", currencyType)
  230. .Args("paymentMethod", paymentMethod)
  231. .Args("properties", properties)
  232. .CommandBuilder());
  233. }
  234. public void RegisterDynamicProperties(Func<string> callback)
  235. {
  236. TapLog.Log("RegisterDynamicProperties called" + callback);
  237. #if UNITY_IOS
  238. IOSNativeWrapper.RegisterDynamicProperties(callback);
  239. #else
  240. AndroidNativeWrapper.RegisterDynamicProperties(callback);
  241. #endif
  242. }
  243. public void SetOAID(string value)
  244. {
  245. TapLog.Log("TapEventMobile SetOAID" + value);
  246. #if UNITY_ANDROID
  247. Bridge.CallHandler(EngineBridgeInitializer.GetBridgeServer()
  248. .Method("setOAID")
  249. .Args("oaid", value)
  250. .CommandBuilder());
  251. #endif
  252. }
  253. public void LogDeviceLoginEvent()
  254. {
  255. TapLog.Log("TapEventMobile LogDeviceLoginEvent");
  256. #if UNITY_ANDROID
  257. Bridge.CallHandler(EngineBridgeInitializer.GetBridgeServer()
  258. .Method("logDeviceLoginEvent")
  259. .CommandBuilder());
  260. #endif
  261. }
  262. }
  263. }