TapTapSdkOptions.cs 5.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167
  1. using UnityEngine;
  2. using Newtonsoft.Json;
  3. using System;
  4. namespace TapSDK.Core
  5. {
  6. public interface TapTapSdkBaseOptions
  7. {
  8. string moduleName { get; }
  9. }
  10. public enum TapTapRegionType
  11. {
  12. CN = 0,
  13. Overseas = 1
  14. }
  15. public enum TapTapLanguageType
  16. {
  17. Auto = 0,// 自动
  18. zh_Hans,// 简体中文
  19. en,// 英文
  20. zh_Hant,// 繁体中文
  21. ja,// 日文
  22. ko,// 韩文
  23. th,// 泰文
  24. id,// 印度尼西亚语
  25. de,// 德语
  26. es,// 西班牙语
  27. fr,// 法语
  28. pt,// 葡萄牙语
  29. ru,// 俄罗斯语
  30. tr,// 土耳其语
  31. vi// 越南语
  32. }
  33. public class TapTapSdkOptions : TapTapSdkBaseOptions
  34. {
  35. /// <summary>
  36. /// 客户端 ID,开发者后台获取
  37. /// </summary>
  38. public string clientId;
  39. /// <summary>
  40. /// 客户端令牌,开发者后台获取
  41. /// </summary>
  42. public string clientToken;
  43. /// <summary>
  44. /// PC 客户端公钥
  45. /// </summary>
  46. public string clientPublicKey;
  47. /// <summary>
  48. /// 地区,CN 为国内,Overseas 为海外
  49. /// </summary>
  50. public TapTapRegionType region = TapTapRegionType.CN;
  51. /// <summary>
  52. /// 语言,默认为 Auto,默认情况下,国内为 zh_Hans,海外为 en
  53. /// </summary>
  54. public TapTapLanguageType preferredLanguage = TapTapLanguageType.Auto;
  55. /// <summary>
  56. /// 渠道,如 AppStore、GooglePlay
  57. /// </summary>
  58. [Obsolete("该属性已废弃,请在 TapTapEventOptions 设置对应属性")]
  59. public string channel = null;
  60. /// <summary>
  61. /// 游戏版本号,如果不传则默认读取应用的版本号
  62. /// </summary>
  63. public string gameVersion = null;
  64. /// <summary>
  65. /// 初始化时传入的自定义参数,会在初始化时上报到 device_login 事件
  66. /// </summary>
  67. [Obsolete("该属性已废弃,请在 TapTapEventOptions 设置对应属性")]
  68. public string propertiesJson = null;
  69. /// <summary>
  70. /// CAID,仅国内 iOS
  71. /// </summary>
  72. public string caid = null;
  73. /// <summary>
  74. /// 是否能够覆盖内置参数,默认为 false
  75. /// </summary>
  76. [Obsolete("该属性已废弃,请在 TapTapEventOptions 设置对应属性")]
  77. public bool overrideBuiltInParameters = false;
  78. /// <summary>
  79. /// 是否开启广告商 ID 收集,默认为 false
  80. /// </summary>
  81. public bool enableAdvertiserIDCollection = false;
  82. /// <summary>
  83. /// 是否开启自动上报 IAP 事件
  84. /// </summary>
  85. [Obsolete("该属性已废弃,请在 TapTapEventOptions 设置对应属性")]
  86. public bool enableAutoIAPEvent = true;
  87. /// <summary>
  88. /// OAID证书, 仅 Android,用于上报 OAID 仅 [TapTapRegion.CN] 生效
  89. /// </summary>
  90. public string oaidCert = null;
  91. /// <summary>
  92. /// 是否开启日志,Release 版本请设置为 false
  93. /// </summary>
  94. public bool enableLog = false;
  95. /// <summary>
  96. /// 是否禁用 OAID 反射
  97. /// </summary>
  98. public bool disableReflectionOAID = true;
  99. /// <summary>
  100. /// 是否即用禁用自动上报设备登录事件
  101. /// </summary>
  102. [Obsolete("该属性已废弃,请在 TapTapEventOptions 设置对应属性")]
  103. public bool disableAutoLogDeviceLogin = false;
  104. /// <summary>
  105. /// 屏幕方向:0-竖屏 1-横屏
  106. /// </summary>
  107. public int screenOrientation = 0;
  108. [JsonProperty("moduleName")]
  109. private string _moduleName = "TapTapSDKCore";
  110. [JsonIgnore]
  111. public string moduleName
  112. {
  113. get => _moduleName;
  114. }
  115. }
  116. public class TapTapEventOptions : TapTapSdkBaseOptions
  117. {
  118. /// <summary>
  119. /// 是否启用 TapTap Event
  120. /// </summary>
  121. public bool enableTapTapEvent = true;
  122. /// <summary>
  123. /// 渠道,如 AppStore、GooglePlay
  124. /// </summary>
  125. public string channel = null;
  126. /// <summary>
  127. /// 初始化时传入的自定义参数,会在初始化时上报到 device_login 事件
  128. /// </summary>
  129. public string propertiesJson = null;
  130. /// <summary>
  131. /// 是否能够覆盖内置参数,默认为 false
  132. /// </summary>
  133. public bool overrideBuiltInParameters = false;
  134. /// <summary>
  135. /// 是否开启自动上报 IAP 事件
  136. /// </summary>
  137. public bool enableAutoIAPEvent = true;
  138. /// <summary>
  139. /// 是否即用禁用自动上报设备登录事件
  140. /// </summary>
  141. public bool disableAutoLogDeviceLogin = false;
  142. [JsonProperty("moduleName")]
  143. private string _moduleName = "TapTapEvent";
  144. [JsonIgnore]
  145. public string moduleName
  146. {
  147. get => _moduleName;
  148. }
  149. }
  150. }