@thinkingai/ae-cli 1.0.28 → 6.0.16

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (360) hide show
  1. package/README.md +1 -16
  2. package/README.zh.md +1 -16
  3. package/dist/{auth-H2376DEF.js → auth-DYC2BGLM.js} +2 -2
  4. package/dist/{auth-5NSDQFQB.js → auth-GHBMJ5ZR.js} +31 -12
  5. package/dist/{chunk-CLJF7MQA.js → chunk-2DUEAXV3.js} +1 -1
  6. package/dist/chunk-5OC7CYCG.js +98 -0
  7. package/dist/{chunk-SRJIAOBN.js → chunk-6W4QOZAL.js} +10 -0
  8. package/dist/{chunk-LU7SXK4Q.js → chunk-BJX3GXWC.js} +2 -2
  9. package/dist/{chunk-WCHI7725.js → chunk-DMMEPCST.js} +47 -6
  10. package/dist/{chunk-IMBKVXKY.js → chunk-EGEIXA2Z.js} +82 -10
  11. package/dist/{chunk-AD5V3ZPJ.js → chunk-I5CRVM2S.js} +98 -10
  12. package/dist/chunk-NOO24N7W.js +11 -0
  13. package/dist/{chunk-GSJGPNKK.js → chunk-PN3OS34E.js} +1 -1
  14. package/dist/{chunk-CAQYQA4R.js → chunk-RSHMZ3LG.js} +15 -1
  15. package/dist/{client-FCMK3XEK.js → client-2UJ63MVQ.js} +3 -3
  16. package/dist/{config-64G36TJL.js → config-NCUGK6NS.js} +3 -3
  17. package/dist/index.js +2549 -29
  18. package/dist/{model-EZ6K7FXI.js → model-SJSOZTRS.js} +5 -7
  19. package/dist/{raw-VEF3D6UD.js → raw-7NVWSVJP.js} +4 -4
  20. package/dist/{sync-NRODEVNH.js → sync-GRVO4K3U.js} +120 -23
  21. package/dist/{te-agent-7U7JLJKU.js → te-agent-KZRIEN4N.js} +468 -47
  22. package/dist/{te-analysis-A2OSGHQ4.js → te-analysis-VAR4KUOK.js} +145 -28
  23. package/dist/{te-audience-LI67PPGO.js → te-audience-KMKYI2YJ.js} +23 -14
  24. package/dist/{te-common-35WVU3C5.js → te-common-WNCZB7R7.js} +5 -4
  25. package/dist/{te-community-LEAP6PWT.js → te-community-JEEFXPB3.js} +11 -10
  26. package/dist/{te-dataops-N2LGZBOX.js → te-dataops-GD3XBYCS.js} +33 -32
  27. package/dist/{te-engage-H7C72Z46.js → te-engage-4XHCTS6I.js} +5 -4
  28. package/dist/{te-kb-I2OKTBAI.js → te-kb-B62KFP2A.js} +97 -7
  29. package/dist/{te-meta-HBTIEDRO.js → te-meta-EPZGQN56.js} +10 -9
  30. package/dist/{te-team-EM5OWRQL.js → te-team-YY24VORI.js} +16 -12
  31. package/dist/tracking/i18n/resources/cli/en.json +153 -0
  32. package/dist/tracking/i18n/resources/cli/ja.json +153 -0
  33. package/dist/tracking/i18n/resources/cli/ko.json +153 -0
  34. package/dist/tracking/i18n/resources/cli/zh.json +153 -0
  35. package/package.json +9 -3
  36. package/skills/ae-agent/SKILL.md +66 -26
  37. package/skills/ae-analysis/SKILL.md +108 -8
  38. package/skills/ae-analysis/references/cancel_query.md +39 -0
  39. package/skills/ae-analysis/references/drilldown_user_events.md +4 -2
  40. package/skills/ae-analysis/references/drilldown_users.md +4 -2
  41. package/skills/ae-analysis/references/get_bi_panel_detail.md +35 -0
  42. package/skills/ae-analysis/references/list_alerts.md +1 -1
  43. package/skills/ae-analysis/references/list_bi_panels.md +35 -0
  44. package/skills/ae-analysis/references/list_cluster_members.md +4 -1
  45. package/skills/ae-analysis/references/list_dashboards.md +1 -1
  46. package/skills/ae-analysis/references/list_entities.md +1 -1
  47. package/skills/ae-analysis/references/list_events.md +1 -1
  48. package/skills/ae-analysis/references/list_metrics.md +1 -1
  49. package/skills/ae-analysis/references/list_project_mark_times.md +1 -1
  50. package/skills/ae-analysis/references/list_properties.md +1 -1
  51. package/skills/ae-analysis/references/list_public_access_links.md +1 -1
  52. package/skills/ae-analysis/references/list_reports.md +1 -1
  53. package/skills/ae-analysis/references/list_tag_members.md +4 -1
  54. package/skills/ae-analysis/references/query_adhoc.md +6 -5
  55. package/skills/ae-analysis/references/query_bi_panel_data.md +58 -0
  56. package/skills/ae-analysis/references/query_dashboard_report_data.md +4 -1
  57. package/skills/ae-analysis/references/query_entity_details.md +5 -2
  58. package/skills/ae-analysis/references/query_event_details.md +4 -1
  59. package/skills/ae-analysis/references/query_report_data.md +2 -2
  60. package/skills/ae-analysis-global/SKILL.md +3 -1
  61. package/skills/ae-analysis-intent/SKILL.md +132 -0
  62. package/skills/ae-data-integration-helper/SKILL.md +242 -0
  63. package/skills/ae-data-integration-helper/references/android_sdk_faq.md +179 -0
  64. package/skills/ae-data-integration-helper/references/c_sdk_compilation.md +83 -0
  65. package/skills/ae-data-integration-helper/references/c_sdk_faq.md +416 -0
  66. package/skills/ae-data-integration-helper/references/cocoscreator_sdk_faq.md +123 -0
  67. package/skills/ae-data-integration-helper/references/cpp_server_sdk_faq.md +365 -0
  68. package/skills/ae-data-integration-helper/references/index.md +56 -0
  69. package/skills/ae-data-integration-helper/references/ios_sdk_faq.md +118 -0
  70. package/skills/ae-data-integration-helper/references/java_sdk_faq.md +406 -0
  71. package/skills/ae-data-integration-helper/references/javascript_sdk_faq.md +129 -0
  72. package/skills/ae-data-integration-helper/references/logbus2_guide.md +309 -0
  73. package/skills/ae-data-integration-helper/references/logbus2_parser_plugin.md +348 -0
  74. package/skills/ae-data-integration-helper/references/minigame_sdk_faq.md +115 -0
  75. package/skills/ae-data-integration-helper/references/miniprogram_sdk_faq.md +118 -0
  76. package/skills/ae-data-integration-helper/references/python_sdk_faq.md +232 -0
  77. package/skills/ae-data-integration-helper/references/restful_api_notes.md +74 -0
  78. package/skills/ae-data-integration-helper/references/sdk_log_guide.md +316 -0
  79. package/skills/ae-data-integration-helper/references/sdk_usage_notes.md +107 -0
  80. package/skills/ae-data-integration-helper/references/unity_sdk_faq.md +115 -0
  81. package/skills/ae-generate-tracking-code/SKILL.md +629 -0
  82. package/skills/ae-generate-tracking-code/references/autotrack-enum.md +183 -0
  83. package/skills/ae-generate-tracking-code/references/client-sdk-insert.md +202 -0
  84. package/skills/ae-generate-tracking-code/references/datax-config.md +43 -0
  85. package/skills/ae-generate-tracking-code/references/debug-script.md +102 -0
  86. package/skills/ae-generate-tracking-code/references/logbus-config.md +200 -0
  87. package/skills/ae-generate-tracking-code/references/modes.md +83 -0
  88. package/skills/ae-generate-tracking-code/references/restful-call.md +36 -0
  89. package/skills/ae-generate-tracking-code/references/sdk-index.md +128 -0
  90. package/skills/ae-generate-tracking-code/references/server-sdk-insert.md +206 -0
  91. package/skills/ae-generate-tracking-code/references/snippet-delivery.md +394 -0
  92. package/skills/ae-generate-tracking-code/references/te-api.md +181 -0
  93. package/skills/ae-generate-tracking-plan/SKILL.md +1083 -0
  94. package/skills/ae-generate-tracking-plan/references/autotrack-events.md +273 -0
  95. package/skills/ae-generate-tracking-plan/references/business-dimension-mapping.md +425 -0
  96. package/skills/ae-generate-tracking-plan/references/te-api.md +100 -0
  97. package/skills/ae-generate-tracking-plan/references/xlsx-schema.md +152 -0
  98. package/skills/ae-kb/SKILL.md +38 -5
  99. package/tracking-plan-template/MMO/346/211/213/346/270/270/345/237/213/347/202/271/346/250/241/346/235/277_v1.md +104 -0
  100. package/tracking-plan-template/MMO/346/211/213/346/270/270/345/237/213/347/202/271/346/250/241/346/235/277_v1.xlsx +0 -0
  101. package/tracking-plan-template/MMO/351/241/265/346/270/270/345/237/213/347/202/271/346/250/241/346/235/277_v2.md +117 -0
  102. package/tracking-plan-template/MMO/351/241/265/346/270/270/345/237/213/347/202/271/346/250/241/346/235/277_v2.xlsx +0 -0
  103. package/tracking-plan-template/RPG/347/261/273/345/237/213/347/202/271/346/250/241/346/235/277_v1.md +72 -0
  104. package/tracking-plan-template/RPG/347/261/273/345/237/213/347/202/271/346/250/241/346/235/277_v1.xlsx +0 -0
  105. package/tracking-plan-template/SLG/346/270/270/346/210/217/345/237/213/347/202/271/346/250/241/346/235/277_v1.md +86 -0
  106. package/tracking-plan-template/SLG/346/270/270/346/210/217/345/237/213/347/202/271/346/250/241/346/235/277_v1.xlsx +0 -0
  107. package/tracking-plan-template/Slots/345/237/213/347/202/271/346/250/241/346/235/277_v1.md +80 -0
  108. package/tracking-plan-template/Slots/345/237/213/347/202/271/346/250/241/346/235/277_v1.xlsx +0 -0
  109. package/tracking-plan-template/TE /345/237/213/347/202/271/347/244/272/344/276/213/346/250/241/346/235/277.md" +40 -0
  110. package/tracking-plan-template/TE /345/237/213/347/202/271/347/244/272/344/276/213/346/250/241/346/235/277.xlsx +0 -0
  111. package/tracking-plan-template/TE/345/256/230/346/226/271/346/250/241/346/235/277_dataTrackSample.md +40 -0
  112. package/tracking-plan-template/TE/345/256/230/346/226/271/346/250/241/346/235/277_dataTrackSample.xlsx +0 -0
  113. package/tracking-plan-template//344/274/221/351/227/262/345/205/273/346/210/220/347/261/273/345/237/213/347/202/271/346/250/241/346/235/277_v2.md +92 -0
  114. package/tracking-plan-template//344/274/221/351/227/262/345/205/273/346/210/220/347/261/273/345/237/213/347/202/271/346/250/241/346/235/277_v2.xlsx +0 -0
  115. package/tracking-plan-template//345/215/241/347/211/214/346/270/270/346/210/217/345/237/213/347/202/271/346/250/241/346/235/277_v1.md +119 -0
  116. package/tracking-plan-template//345/215/241/347/211/214/346/270/270/346/210/217/345/237/213/347/202/271/346/250/241/346/235/277_v1.xlsx +0 -0
  117. package/tracking-plan-template//345/241/224/351/230/262/345/205/273/346/210/220/347/261/273/345/237/213/347/202/271/346/250/241/346/235/277_V1.md +130 -0
  118. package/tracking-plan-template//345/241/224/351/230/262/345/205/273/346/210/220/347/261/273/345/237/213/347/202/271/346/250/241/346/235/277_V1.xlsx +0 -0
  119. package/tracking-plan-template//345/276/256/344/277/241/345/260/217/346/270/270/346/210/217/345/237/213/347/202/271/346/250/241/346/235/277_v1.md +52 -0
  120. package/tracking-plan-template//345/276/256/344/277/241/345/260/217/346/270/270/346/210/217/345/237/213/347/202/271/346/250/241/346/235/277_v1.xlsx +0 -0
  121. package/tracking-plan-template//346/215/225/351/261/274/347/261/273/345/237/213/347/202/271/346/250/241/346/235/277_v1.md +68 -0
  122. package/tracking-plan-template//346/215/225/351/261/274/347/261/273/345/237/213/347/202/271/346/250/241/346/235/277_v1.xlsx +0 -0
  123. package/tracking-plan-template//346/224/276/347/275/256/347/261/273/345/215/241/347/211/214/346/270/270/346/210/217_/345/237/213/347/202/271/346/250/241/347/211/210v1.md +108 -0
  124. package/tracking-plan-template//346/224/276/347/275/256/347/261/273/345/215/241/347/211/214/346/270/270/346/210/217_/345/237/213/347/202/271/346/250/241/347/211/210v1.xlsx +0 -0
  125. package/tracking-plan-template//346/224/276/347/275/256/347/261/273/345/237/213/347/202/271/346/250/241/346/235/277_v1.md +119 -0
  126. package/tracking-plan-template//346/224/276/347/275/256/347/261/273/345/237/213/347/202/271/346/250/241/346/235/277_v1.xlsx +0 -0
  127. package/tracking-plan-template//346/243/213/347/211/214/347/261/273/357/274/210/346/226/227/345/234/260/344/270/273/357/274/211/345/237/213/347/202/271/346/250/241/346/235/277_v1.md +63 -0
  128. package/tracking-plan-template//346/243/213/347/211/214/347/261/273/357/274/210/346/226/227/345/234/260/344/270/273/357/274/211/345/237/213/347/202/271/346/250/241/346/235/277_v1.xlsx +0 -0
  129. package/tracking-plan-template//346/243/213/347/211/214/347/261/273/357/274/210/351/272/273/345/260/206/357/274/211/345/237/213/347/202/271/346/250/241/346/235/277_v2.md +101 -0
  130. package/tracking-plan-template//346/243/213/347/211/214/347/261/273/357/274/210/351/272/273/345/260/206/357/274/211/345/237/213/347/202/271/346/250/241/346/235/277_v2.xlsx +0 -0
  131. package/tracking-plan-template//347/224/265/345/225/206/345/237/213/347/202/271/346/226/271/346/241/210/346/250/241/346/235/277_v1.md +84 -0
  132. package/tracking-plan-template//347/224/265/345/225/206/345/237/213/347/202/271/346/226/271/346/241/210/346/250/241/346/235/277_v1.xlsx +0 -0
  133. package/tracking-plan-template//347/237/255/345/211/247/344/272/247/345/223/201/345/237/213/347/202/271/346/226/271/346/241/210/346/250/241/346/235/277_v1.md +79 -0
  134. package/tracking-plan-template//347/237/255/345/211/247/344/272/247/345/223/201/345/237/213/347/202/271/346/226/271/346/241/210/346/250/241/346/235/277_v1.xlsx +0 -0
  135. package/tracking-plan-template//347/244/276/344/272/244/350/201/212/345/244/251/347/261/273/345/237/213/347/202/271/346/250/241/346/235/277_v1.md +105 -0
  136. package/tracking-plan-template//347/244/276/344/272/244/350/201/212/345/244/251/347/261/273/345/237/213/347/202/271/346/250/241/346/235/277_v1.xlsx +0 -0
  137. package/tracking-plan-template//351/230/205/350/257/273/347/261/273APP/345/237/213/347/202/271/346/250/241/346/235/277_v1.md +83 -0
  138. package/tracking-plan-template//351/230/205/350/257/273/347/261/273APP/345/237/213/347/202/271/346/250/241/346/235/277_v1.xlsx +0 -0
  139. package/wiki/te-docs/index.md +225 -0
  140. package/wiki/te-docs/raw/advanced-data-type/first-event-check.md +66 -0
  141. package/wiki/te-docs/raw/advanced-data-type/updated-event.md +87 -0
  142. package/wiki/te-docs/raw/advanced-data-type.md +16 -0
  143. package/wiki/te-docs/raw/data-ingestion-guide/about-gdpr.md +55 -0
  144. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/android/android-advanced/automatic-event-tracking.md +431 -0
  145. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/android/android-advanced/debugging-and-logging.md +49 -0
  146. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/android/android-advanced/multi-instance.md +66 -0
  147. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/android/android-advanced/preset-properties.md +466 -0
  148. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/android/android-advanced/third-party-integration.md +127 -0
  149. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/android/android-advanced.md +513 -0
  150. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/android/compliance.md +24 -0
  151. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/android/release-notes.md +177 -0
  152. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/android.md +228 -0
  153. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/c/c-advanced.md +419 -0
  154. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/c/release-notes.md +45 -0
  155. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/c.md +110 -0
  156. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/client-side-sdk-faq.md +52 -0
  157. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/cpp/cpp-advanced.md +366 -0
  158. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/cpp/release-notes.md +103 -0
  159. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/cpp.md +201 -0
  160. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/cross-platform/flutter/compliance.md +26 -0
  161. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/cross-platform/flutter/flutter-advanced/automatically-track-events.md +117 -0
  162. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/cross-platform/flutter/flutter-advanced/debugging-and-logging.md +47 -0
  163. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/cross-platform/flutter/flutter-advanced/preset-properties.md +52 -0
  164. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/cross-platform/flutter/flutter-advanced.md +267 -0
  165. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/cross-platform/flutter/release-notes.md +82 -0
  166. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/cross-platform/flutter.md +139 -0
  167. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/cross-platform/react-native/compliance.md +26 -0
  168. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/cross-platform/react-native/reactnative-advanced/automatically-track-events.md +121 -0
  169. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/cross-platform/react-native/reactnative-advanced/debugging-and-logging.md +54 -0
  170. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/cross-platform/react-native/reactnative-advanced/preset-properties.md +18 -0
  171. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/cross-platform/react-native/reactnative-advanced.md +305 -0
  172. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/cross-platform/react-native/release-notes.md +79 -0
  173. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/cross-platform/react-native.md +137 -0
  174. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/cross-platform/uni-app/release-notes.md +24 -0
  175. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/cross-platform/uni-app/uniapp-advanced/automatically-track-events.md +54 -0
  176. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/cross-platform/uni-app/uniapp-advanced/debugging-and-logging.md +53 -0
  177. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/cross-platform/uni-app/uniapp-advanced/multi-instance.md +42 -0
  178. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/cross-platform/uni-app/uniapp-advanced/preset-properties.md +119 -0
  179. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/cross-platform/uni-app/uniapp-advanced/support-native.md +81 -0
  180. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/cross-platform/uni-app/uniapp-advanced.md +331 -0
  181. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/cross-platform/uni-app.md +156 -0
  182. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/cross-platform.md +12 -0
  183. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/cocos2d-x/cocos2d-x-advanced/automatic-event-tracking.md +29 -0
  184. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/cocos2d-x/cocos2d-x-advanced/debugging-and-logging.md +47 -0
  185. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/cocos2d-x/cocos2d-x-advanced/multi-instance.md +21 -0
  186. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/cocos2d-x/cocos2d-x-advanced/preset-properties.md +249 -0
  187. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/cocos2d-x/cocos2d-x-advanced.md +301 -0
  188. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/cocos2d-x/compliance.md +24 -0
  189. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/cocos2d-x/release-notes.md +51 -0
  190. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/cocos2d-x.md +281 -0
  191. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/cocoscreator/cocoscreator-advance/automatic-event-tracking.md +70 -0
  192. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/cocoscreator/cocoscreator-advance/debugging-and-logging.md +57 -0
  193. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/cocoscreator/cocoscreator-advance/native-support.md +104 -0
  194. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/cocoscreator/cocoscreator-advance/preset-properties.md +91 -0
  195. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/cocoscreator/cocoscreator-advance.md +374 -0
  196. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/cocoscreator/compliance.md +35 -0
  197. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/cocoscreator/release-notes.md +109 -0
  198. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/cocoscreator.md +170 -0
  199. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/corona/compliance.md +28 -0
  200. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/corona/corona-advanced/automatic-event-tracking.md +29 -0
  201. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/corona/corona-advanced/debugging-and-logging.md +58 -0
  202. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/corona/corona-advanced/preset-properties.md +43 -0
  203. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/corona/corona-advanced.md +204 -0
  204. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/corona/release-notes.md +29 -0
  205. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/corona.md +269 -0
  206. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/unity/compliance.md +24 -0
  207. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/unity/release-notes.md +177 -0
  208. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/unity/unity-advanced/automatic-event-tracking.md +119 -0
  209. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/unity/unity-advanced/debugging-and-logging.md +47 -0
  210. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/unity/unity-advanced/multi-instance.md +50 -0
  211. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/unity/unity-advanced/native-pluggable.md +43 -0
  212. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/unity/unity-advanced/preset-properties.md +212 -0
  213. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/unity/unity-advanced/third-party-integration.md +77 -0
  214. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/unity/unity-advanced.md +396 -0
  215. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/unity.md +176 -0
  216. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/unreal/compliance.md +24 -0
  217. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/unreal/release-notes.md +81 -0
  218. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/unreal/unreal-advanced/automatic-event-tracking.md +79 -0
  219. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/unreal/unreal-advanced/debugging-and-logging.md +31 -0
  220. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/unreal/unreal-advanced/preset-properties.md +25 -0
  221. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/unreal/unreal-advanced/third-party-integrations.md +141 -0
  222. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/unreal/unreal-advanced.md +278 -0
  223. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/unreal.md +190 -0
  224. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine.md +14 -0
  225. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/h5-and-app-sdk-connection.md +147 -0
  226. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/instant-app-and-game.md +24 -0
  227. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/ios/compliance.md +24 -0
  228. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/ios/ios-advanced/automatic-event-tracking.md +272 -0
  229. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/ios/ios-advanced/debugging-and-logging.md +77 -0
  230. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/ios/ios-advanced/multi-instance.md +142 -0
  231. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/ios/ios-advanced/preset-properties.md +484 -0
  232. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/ios/ios-advanced/third-party-integrations.md +132 -0
  233. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/ios/ios-advanced.md +682 -0
  234. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/ios/release-notes.md +163 -0
  235. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/ios.md +304 -0
  236. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/javascript/compliance.md +29 -0
  237. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/javascript/javascript-advanced/automatic-event-tracking.md +136 -0
  238. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/javascript/javascript-advanced/debugging-and-logging.md +48 -0
  239. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/javascript/javascript-advanced/multi-instance.md +50 -0
  240. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/javascript/javascript-advanced/preset-properties.md +132 -0
  241. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/javascript/javascript-advanced.md +462 -0
  242. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/javascript/release-notes.md +107 -0
  243. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/javascript.md +208 -0
  244. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/macos/macos-advanced/debugging-and-logging.md +62 -0
  245. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/macos/macos-advanced/preset-properties.md +118 -0
  246. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/macos/macos-advanced.md +556 -0
  247. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/macos.md +231 -0
  248. package/wiki/te-docs/raw/data-ingestion-guide/client-sdk.md +25 -0
  249. package/wiki/te-docs/raw/data-ingestion-guide/data-import-tools/filebeat-logstash-user-guide.md +610 -0
  250. package/wiki/te-docs/raw/data-ingestion-guide/data-import-tools/logbus2-user-guide.md +1215 -0
  251. package/wiki/te-docs/raw/data-ingestion-guide/data-import-tools/ta-datax-writer-plugin-user-guide.md +278 -0
  252. package/wiki/te-docs/raw/data-ingestion-guide/data-import-tools.md +15 -0
  253. package/wiki/te-docs/raw/data-ingestion-guide/privacy-policy.md +38 -0
  254. package/wiki/te-docs/raw/data-ingestion-guide/restful-api-user-guide.md +155 -0
  255. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/c/c-advanced/debugging-and-logging-FM9Cwz.md +37 -0
  256. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/c/c-advanced/debugging-and-logging-RSyfw7.md +41 -0
  257. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/c/c-advanced/debugging-and-logging.md +89 -0
  258. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/c/c-advanced/preset-properties-OxzWw.md +126 -0
  259. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/c/c-advanced/preset-properties-VuE3wr.md +126 -0
  260. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/c/c-advanced/preset-properties.md +126 -0
  261. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/c/c-advanced-IauKwI.md +175 -0
  262. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/c/c-advanced-YAilwk.md +210 -0
  263. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/c/c-advanced.md +211 -0
  264. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/c/release-notes-PVazwa.md +62 -0
  265. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/c/release-notes-TADbwY.md +50 -0
  266. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/c/release-notes.md +69 -0
  267. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/c-V2W3wv.md +131 -0
  268. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/c-Zf9Jwl.md +179 -0
  269. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/c.md +189 -0
  270. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/erlang/erlang-advanced/debugging-and-logging.md +38 -0
  271. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/erlang/erlang-advanced/preset-properties.md +126 -0
  272. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/erlang/erlang-advanced.md +113 -0
  273. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/erlang/release-notes.md +34 -0
  274. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/erlang.md +155 -0
  275. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/golang/golang-advanced/debugging-and-logging.md +42 -0
  276. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/golang/golang-advanced/preset-properties.md +126 -0
  277. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/golang/golang-advanced.md +157 -0
  278. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/golang/release-notes.md +72 -0
  279. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/golang.md +148 -0
  280. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/java/java-advanced/debugging-and-logging.md +49 -0
  281. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/java/java-advanced/preset-properties.md +126 -0
  282. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/java/java-advanced.md +223 -0
  283. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/java/release-notes.md +88 -0
  284. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/java.md +174 -0
  285. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/lua/lua-advanced/debugging-and-logging.md +46 -0
  286. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/lua/lua-advanced/preset-properties.md +126 -0
  287. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/lua/lua-advanced.md +182 -0
  288. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/lua/release-notes.md +61 -0
  289. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/lua.md +121 -0
  290. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/nodejs/nodejs-advanced/debugging-and-logging.md +55 -0
  291. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/nodejs/nodejs-advanced/preset-properties.md +126 -0
  292. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/nodejs/nodejs-advanced.md +225 -0
  293. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/nodejs/release-notes.md +45 -0
  294. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/nodejs.md +141 -0
  295. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/php/php-advanced/debugging-and-logging.md +41 -0
  296. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/php/php-advanced/preset-properties.md +126 -0
  297. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/php/php-advanced.md +216 -0
  298. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/php/release-notes.md +45 -0
  299. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/php.md +173 -0
  300. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/python/python-advanced/debugging-and-logging.md +40 -0
  301. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/python/python-advanced/preset-properties.md +126 -0
  302. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/python/python-advanced.md +206 -0
  303. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/python/release-notes.md +51 -0
  304. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/python.md +116 -0
  305. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/ruby/release-notes.md +44 -0
  306. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/ruby/ruby-advanced/debugging-and-logging.md +47 -0
  307. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/ruby/ruby-advanced/preset-properties.md +126 -0
  308. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/ruby/ruby-advanced.md +189 -0
  309. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/ruby.md +142 -0
  310. package/wiki/te-docs/raw/data-ingestion-guide/server-sdk.md +22 -0
  311. package/wiki/te-docs/raw/data-ingestion-guide/thinkingdata-privacy-policy.md +37 -0
  312. package/wiki/te-docs/raw/data-ingestion-guide.md +48 -0
  313. package/wiki/te-docs/raw/preparations-before-data-ingestion/data-rules.md +396 -0
  314. package/wiki/te-docs/raw/preparations-before-data-ingestion/preset-properties-and-system-fields.md +957 -0
  315. package/wiki/te-docs/raw/preparations-before-data-ingestion/user-identification-rules.md +723 -0
  316. package/wiki/te-docs/raw/preparations-before-data-ingestion.md +203 -0
  317. package/wiki/te-docs/raw//345/256/242/346/210/267/347/253/257-sdk/openharmony//345/220/210/350/247/204/346/214/207/345/215/227.md +96 -0
  318. package/wiki/te-docs/raw//345/256/242/346/210/267/347/253/257-sdk/openharmony//346/233/264/346/226/260/346/227/245/345/277/227.md +97 -0
  319. package/wiki/te-docs/raw//345/256/242/346/210/267/347/253/257-sdk/openharmony//350/277/233/351/230/266/346/214/207/345/215/227//345/244/232/345/256/236/344/276/213.md +52 -0
  320. package/wiki/te-docs/raw//345/256/242/346/210/267/347/253/257-sdk/openharmony//350/277/233/351/230/266/346/214/207/345/215/227//345/256/236/346/227/266/350/260/203/350/257/225.md +48 -0
  321. package/wiki/te-docs/raw//345/256/242/346/210/267/347/253/257-sdk/openharmony//350/277/233/351/230/266/346/214/207/345/215/227//351/242/204/347/275/256/345/261/236/346/200/247.md +447 -0
  322. package/wiki/te-docs/raw//345/256/242/346/210/267/347/253/257-sdk/openharmony//350/277/233/351/230/266/346/214/207/345/215/227.md +370 -0
  323. package/wiki/te-docs/raw//345/256/242/346/210/267/347/253/257-sdk/openharmony.md +172 -0
  324. package/wiki/te-docs/raw//345/256/242/346/210/267/347/253/257-sdk//345/260/217/347/250/213/345/272/217/345/260/217/346/270/270/346/210/217//345/220/210/350/247/204/346/214/207/345/215/227.md +37 -0
  325. package/wiki/te-docs/raw//345/256/242/346/210/267/347/253/257-sdk//345/260/217/347/250/213/345/272/217/345/260/217/346/270/270/346/210/217//346/233/264/346/226/260/346/227/245/345/277/227.md +209 -0
  326. package/wiki/te-docs/raw//345/256/242/346/210/267/347/253/257-sdk//345/260/217/347/250/213/345/272/217/345/260/217/346/270/270/346/210/217//350/277/233/351/230/266/346/214/207/345/215/227//345/244/232/345/256/236/344/276/213.md +71 -0
  327. package/wiki/te-docs/raw//345/256/242/346/210/267/347/253/257-sdk//345/260/217/347/250/213/345/272/217/345/260/217/346/270/270/346/210/217//350/277/233/351/230/266/346/214/207/345/215/227//345/256/236/346/227/266/350/260/203/350/257/225.md +49 -0
  328. package/wiki/te-docs/raw//345/256/242/346/210/267/347/253/257-sdk//345/260/217/347/250/213/345/272/217/345/260/217/346/270/270/346/210/217//350/277/233/351/230/266/346/214/207/345/215/227//350/207/252/345/212/250/351/207/207/351/233/206.md +125 -0
  329. package/wiki/te-docs/raw//345/256/242/346/210/267/347/253/257-sdk//345/260/217/347/250/213/345/272/217/345/260/217/346/270/270/346/210/217//350/277/233/351/230/266/346/214/207/345/215/227//351/242/204/347/275/256/345/261/236/346/200/247.md +498 -0
  330. package/wiki/te-docs/raw//345/256/242/346/210/267/347/253/257-sdk//345/260/217/347/250/213/345/272/217/345/260/217/346/270/270/346/210/217//350/277/233/351/230/266/346/214/207/345/215/227.md +612 -0
  331. package/wiki/te-docs/raw//345/256/242/346/210/267/347/253/257-sdk//345/260/217/347/250/213/345/272/217/345/260/217/346/270/270/346/210/217.md +373 -0
  332. package/wiki/te-docs/raw//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/cocos2d-lua//345/220/210/350/247/204/346/214/207/345/215/227.md +26 -0
  333. package/wiki/te-docs/raw//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/cocos2d-lua//346/233/264/346/226/260/346/227/245/345/277/227.md +32 -0
  334. package/wiki/te-docs/raw//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/cocos2d-lua//350/277/233/351/230/266/346/214/207/345/215/227//345/256/236/346/227/266/350/260/203/350/257/225.md +48 -0
  335. package/wiki/te-docs/raw//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/cocos2d-lua//350/277/233/351/230/266/346/214/207/345/215/227//350/207/252/345/212/250/351/207/207/351/233/206.md +30 -0
  336. package/wiki/te-docs/raw//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/cocos2d-lua//350/277/233/351/230/266/346/214/207/345/215/227//351/242/204/347/275/256/345/261/236/346/200/247.md +61 -0
  337. package/wiki/te-docs/raw//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/cocos2d-lua//350/277/233/351/230/266/346/214/207/345/215/227.md +236 -0
  338. package/wiki/te-docs/raw//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/cocos2d-lua.md +200 -0
  339. package/wiki/te-docs/raw//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/egret//346/233/264/346/226/260/346/227/245/345/277/227.md +83 -0
  340. package/wiki/te-docs/raw//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/egret//350/277/233/351/230/266/346/214/207/345/215/227/native/346/224/257/346/214/201.md +66 -0
  341. package/wiki/te-docs/raw//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/egret//350/277/233/351/230/266/346/214/207/345/215/227//345/256/236/346/227/266/350/260/203/350/257/225.md +54 -0
  342. package/wiki/te-docs/raw//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/egret//350/277/233/351/230/266/346/214/207/345/215/227//350/207/252/345/212/250/351/207/207/351/233/206.md +62 -0
  343. package/wiki/te-docs/raw//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/egret//350/277/233/351/230/266/346/214/207/345/215/227//351/242/204/347/275/256/345/261/236/346/200/247.md +358 -0
  344. package/wiki/te-docs/raw//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/egret//350/277/233/351/230/266/346/214/207/345/215/227.md +615 -0
  345. package/wiki/te-docs/raw//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/egret.md +166 -0
  346. package/wiki/te-docs/raw//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/layaair//346/233/264/346/226/260/346/227/245/345/277/227.md +87 -0
  347. package/wiki/te-docs/raw//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/layaair//350/277/233/351/230/266/346/214/207/345/215/227/native/346/224/257/346/214/201.md +71 -0
  348. package/wiki/te-docs/raw//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/layaair//350/277/233/351/230/266/346/214/207/345/215/227//345/256/236/346/227/266/350/260/203/350/257/225.md +54 -0
  349. package/wiki/te-docs/raw//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/layaair//350/277/233/351/230/266/346/214/207/345/215/227//350/207/252/345/212/250/351/207/207/351/233/206.md +61 -0
  350. package/wiki/te-docs/raw//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/layaair//350/277/233/351/230/266/346/214/207/345/215/227//351/242/204/347/275/256/345/261/236/346/200/247.md +406 -0
  351. package/wiki/te-docs/raw//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/layaair//350/277/233/351/230/266/346/214/207/345/215/227.md +597 -0
  352. package/wiki/te-docs/raw//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/layaair.md +179 -0
  353. package/wiki/te-docs/schema.md +16 -0
  354. package/wiki/te-docs/synthesis/batch-ingest-comparison.md +324 -0
  355. package/wiki/te-docs/synthesis/js-sdk-cheatsheet.md +538 -0
  356. package/wiki/te-docs/synthesis/restful-api-reference.md +363 -0
  357. package/wiki/te-docs/synthesis/sdk-selection.md +372 -0
  358. package/wiki/te-docs/synthesis/server-sdk-overview.md +449 -0
  359. package/dist/chunk-KAEZTSXN.js +0 -99
  360. package/dist/chunk-OJDNO5QY.js +0 -63
@@ -0,0 +1,87 @@
1
+ ---
2
+ code: track_update_and_track_overwrite
3
+ name: "Updated Event"
4
+ wikiToken: BtlUwIB0piMzhdkMjz2cmndrnFb
5
+ parentWikiToken: DyTywDmeWiYzq2kLIQlcsNsJnff
6
+ updateTime: 1774249365000
7
+ sourceUrl: https://docs-v2.thinkingdata.cn/?version=v6.0&lan=en-US&code=track_update_and_track_overwrite
8
+ ---
9
+ This chapter will introduce how to use the special data structure of the TA system - updated event. An updated event is a **special kind of event data to** update the event property value in the data. It is suitable for recording event data that contains variable state values or variable cumulative values, such as cost events, which can update the property `cost amount` over time.
10
+ ::: warning
11
+ The storage and processing performance overhead of updated events is relatively high. To ensure data processing efficiency and query performance, it is only applicable to events with a small number and strong update requirements in special business scenarios. It is strongly recommended to use an updated event with the assistance of TA personnel
12
+ :::
13
+ ## **I. Data structure**
14
+ <quote-container>
15
+ For TA's client SDK or server SDK, please refer to the corresponding SDK access guide. The chapters "Updated events" and "Rewritable events" in this User Guide will provide detailed interface calling methods
16
+ </quote-container>
17
+
18
+ To use the "updated event" property, two adjustments need to be made in the data:
19
+ 1. Set the field `#type` that identifies the data type to `track_update` or `track_overwrite`. These two data types represent the update methods of two events: updating some properties and overwriting all properties
20
+ 2. Add the field `#event_id`, which is the unique identification of the event; when updating the properties, search the corresponding event data according to `#event_name` and `#event_id`, and update the data; the `#event_id` of different events is independent of each other, so each updated event has a separate unique identification system
21
+ The following is a data sample, and you can pay attention to the location of `#event_id`:
22
+ ```json
23
+ {
24
+ "#account_id": "ABCDEFG-123-abc",
25
+ "#distinct_id": "F53A58ED-E5DA-4F18-B082-7E1228746E88",
26
+ "#type": "track_update",
27
+ "#event_id": "F53A58ED-E5DA-4F18-B082-7E1228746E88",
28
+ "#time": "2020-08-18 14:37:28.527",
29
+ "#event_name": "test_event",
30
+ "properties": {
31
+ "argString": "abc"
32
+ }
33
+ }
34
+ ```
35
+
36
+ ## **II. Data processing logic**
37
+ The processing logic of an updated event is very different from that of ordinary event data: **Please note that if the **`#type`** of event data is **`track`**, the data cannot be updated later**; if the `#type` of event data is `track_update` or `track_overwrite`, it will be regarded as an updated event, and then any one of the two types of data can be used to update the property.
38
+ When the TA system receives `track_update` or `track_overwrite`, different processing methods are available. This section will describe the processing logics of these two types of data in details.
39
+ ### 2.1 **Processing logic of track_update**
40
+ When `#type` in the data is `track_update`, the processing logic of the data is event property update. When the system receives this type of data, it will check whether the corresponding event data exists according to the `#event_id` field. If it exists, it will update the corresponding field. The specific processing logic is as follows:
41
+ 1. If the data corresponding to #`#event_id` does not exist in this event, the data will be regarded as new data and will be directly stored
42
+ 2. If `#event_id` exists, the event property in the new data will update the previous value. If there is a new property, the new property will also be added. The property not included in the new data will not be updated, so you need to pass in the properties to be updated
43
+ 3. In addition, `#time`, the event time, will also be updated by new data, so there is a need to set the time in the new data reasonably in the actual business scenario
44
+ ### 2.2 **Processing logic of track_overwrite**
45
+ When `#type` in the data is `track_overwrite`, the processing logic of the data is event rewriting. When the system receives this type of data, it will check whether the corresponding event data exists according to the `#event_id` field. If it exists, it will delete the data and write new event data into the system (equivalent to substituting the deleted data). The specific processing logic is as follows:
46
+ 1. If the data corresponding to `#event_id` does not exist in this event, the data will be regarded as new data and will be directly stored
47
+ 2. If `#event_id` exists, all content of the event data will be rewritten. To update some properties, you can use `track_update`
48
+ 3. In addition, `#time`, the event time, will also be updated by new data, so there is a need to set the time in the new data reasonably according to the actual business scenario
49
+ ## III. **Best Practices**
50
+ ### **Advertising cost**
51
+ When analyzing the advertising effect, it is often necessary to calculate the ROI input-output ratio of advertising space or material, that is, the ratio of user value to user cost. The user value, that is, the sum of direct payment and value generated by other methods, is easy to record; while the cost data will depend on the data rules of the advertisers, and the general cost amount will be continuously updated, which is not suitable for recording as per general event data.
52
+ Since the cost data will continue to change, the advertising cost data is highly recommended to be recorded in an updated manner. When recording the advertising cost data for the first time, the following data can be uploaded:
53
+ ```json
54
+ {
55
+ "#account_id": "admin",
56
+ "#distinct_id": "F53A58ED-E5DA-4F18-B082-7E1228746E88",
57
+ "#type": "track_update",
58
+ "#event_id": "2020-09-01_google_7-Tier1-0527_adset1_adname1",
59
+ "#time": "2020-09-01 00:00:00.000",
60
+ "#event_name": "ad_cost",
61
+ "properties": {
62
+ "channel": "google",
63
+ "campaignid": "7-Tier1-0527",
64
+ "adset": "adset1",
65
+ "adname": "adname1",
66
+ "cost": 100
67
+ }
68
+ }
69
+ ```
70
+
71
+ The above data will add an updated event of cost, where #event_id is composed of date, channel, activity name, ad group, and ad name, which is the unique ID of cost. According to data logic, this is also the cost event that can be updated at the finest granularity; the `cost` field records the advertising cost, namely RMB 100.
72
+ As time goes by, the advertising channel pushes new cost data, and the new advertising cost is RMB 200. Then the following data can be sent, where `#event_id` needs to be consistent with the previous data, which means updating the previous data; the `cost` field is updated, and the new cost RMB 200 is passed in; since `#time` will also be updated by new data, it needs to be consistent with the previous one, and the cost data is passed in (converted to time type). Other fields such as channels, activities, and advertising spaces do not need to be updated, so the data can be left blank.
73
+ ```json
74
+ {
75
+ "#account_id": "admin",
76
+ "#distinct_id": "F53A58ED-E5DA-4F18-B082-7E1228746E88",
77
+ "#type": "track_update",
78
+ "#event_id": "2020-09-01_google_7-Tier1-0527_adset1_adname1",
79
+ "#time": "2020-09-01 00:00:00.000",
80
+ "#event_name": "ad_cost",
81
+ "properties": {
82
+ "cost": 200
83
+ }
84
+ }
85
+ ```
86
+
87
+ When the system receives this event, it will query whether the `#event_id` already exists. If it exists, it will update the `#time` and `cost` fields in the original data (that is, the first sample data), that is, the cost amount of the cost event has been updated.
@@ -0,0 +1,16 @@
1
+ ---
2
+ code: advanced_data_type
3
+ name: "Advanced Data Type"
4
+ wikiToken: DyTywDmeWiYzq2kLIQlcsNsJnff
5
+ parentWikiToken: Hx0SwfT0aiwGRekQp2ocJ7okn0g
6
+ updateTime: 1776412217000
7
+ sourceUrl: https://docs-v2.thinkingdata.cn/?version=v6.0&lan=en-US&code=advanced_data_type
8
+ ---
9
+
10
+ This chapter mainly introduces the advanced data type in the AE system. The advanced data type will have additional data processing logics when the system receives such data. The structure is also somewhat different from the standard data structure. You can view the corresponding document to learn about the capabilities of each advanced data type
11
+ ::: warning
12
+ The advanced data will have high performance overheads. To ensure data processing efficiency, it is recommended to use it only in appropriate scenarios
13
+ :::
14
+ The current advanced data types are as follows:
15
+ - [<text underline="true">updated event:</text>](https://thinkingdata.feishu.cn/wiki/BtlUwIB0piMzhdkMjz2cmndrnFb)<text underline="true"> special events that can update event properties</text>
16
+ - [<text underline="true">first event check</text>](https://thinkingdata.feishu.cn/wiki/IlCawoKZKiytCMkqRPvcpz3Ln5g)<text underline="true">: </text>By adding the first event check ID to determine whether the event occurred for the first time, only the data whose ID appears for the first time is allowed to be stored in the database
@@ -0,0 +1,55 @@
1
+ ---
2
+ code: about_gdpr
3
+ name: "About GDPR"
4
+ wikiToken: EJ1rwNvTqi15UKkGJswcboO4ntc
5
+ parentWikiToken: AWr4wIMGYi9FB7ksPi4c17kNnxh
6
+ updateTime: 1774252027000
7
+ sourceUrl: https://docs-v2.thinkingdata.cn/?version=v6.0&lan=en-US&code=about_gdpr
8
+ ---
9
+
10
+ ## Introduction to GDPR
11
+
12
+ <quote-container>
13
+ On May 25, 2018, the European Union issued the "General Data Protection Regulation" (GDPR, General Data Protection Regulation). GDPR can be called the strictest and most detailed law in history to protect user data security.
14
+ </quote-container>
15
+
16
+ At a time when the demand for going to sea is increasingly strong, Chinese enterprises will face GDPR supervision in data collection, processing and application.
17
+ GDPR mainly protects the personal data of EU users. For apps or games that provide services to the EU, GDPR should be complied with.
18
+ GDPR defines two types of roles, a data controller and a data processor. ThinkingAnalytics, the core data product of Digital Technology (hereinafter referred to as TA system), belongs to the role of data processor in most scenarios, while our customers belong to the data controller. Both types of roles are bound by GDPR, so when using our products, we will fully help customers achieve GDPR compliance and avoid latent risks.
19
+ As a data controller, you are responsible for complying with the six principles set out in the GDPR. Failure to comply with the following principles will be punished:
20
+ - Lawfulness, fairness and transparency: the need to process personal data in a legal, fair and transparent manner
21
+ - Purpose limitation: Data collected can only be used for limited purposes
22
+ - Data minimisation: collecting only necessary and meaningful data
23
+ - Accuracy: Data needs to be accurate and timely, and methods can be taken to update and delete inaccurate information
24
+ - Storage limitation: Data needs to be cleaned up after the processing purpose is completed
25
+ - Data integrity and confidentiality (integrity and confidentiality): need to ensure the security of data storage, prevent unauthorized data access, prevent data from being destroyed or lost
26
+ In addition, the following rights of users need to be protected:
27
+ - Right to be Informed: Data controllers need to provide users with information about their data controllers, the types of personal data, the purpose of processing data, and legal basis, etc
28
+ - Right of access: Users can obtain personal data and process personal data
29
+ - Right to rectification: the user has the right to correct incorrect personal data
30
+ - Right to erasure: Users have the right to delete personal data
31
+ - Right to restriction of processing: Under certain circumstances (such as inaccurate data), users can restrict the processing of their personal data
32
+ - Right to data portability: users can transfer personal data to other data controllers
33
+ - Veto power (Right to object): Users can revoke their previous consent to the processing of personal data
34
+ - Right not to be subject to a decision based solely on automated processing, including profiling: Users need to be informed whether personal data will be used by automated decisions (including user profiles) and have the right to refuse data to be used by these systems
35
+ It should also be noted that data collection requires the user's consent, which needs to be clear and explicit, and the user can withdraw the previous consent based on "veto power".
36
+ As a professional service provider, Digital Technology is committed to providing efficient and compliant solutions to help Chinese companies grow their offshore business. The following are the relevant compliance measures and suggestions of Digital Technology for the core content of GDPR:
37
+ ## GDPR Compliance Measures
38
+ ### Fully Support Customized Acquisition to Ensure Data Acquisition Compliance
39
+ The TA system provides a full custom collection scheme at the data collection end, that is, customers can decide the collection of user information and behavior data according to actual needs and business scope. And all data collection schemes provided by TA system, including but not limited to client side SDK, server level SDK, data docking tool Logbus , etc., fully support the above principles and will not force the collection of any data related to user privacy. When developers need to collect relevant data from the client side for business needs, the client side of the user will also have relevant prompts to ensure the user's right to know. For specific data collection related schemes, please refer to the [<text underline="true">access guide</text>](https://thinkingdata.feishu.cn/wiki/AWr4wIMGYi9FB7ksPi4c17kNnxh).
40
+ In addition, we also recommend that customers only collect the minimum data set that meets their needs through the custom collection function provided by the TA system when the collection target is clear, in order to comply with the principle of "data minimization".
41
+ ### Support User Data Update, Deletion, Transfer
42
+ TA system in the data collection side, support methods such as `user_set `and `user_delete `, the specified user data is updated and deleted. At the same time, we also provide `enableTracking `method, which can suspend all data reporting of a client and call the interface when the user does not agree with the data collection.
43
+ For data that has been received and stored by the TA system, the user data and related event data of a specific user can be deleted by the data deletion tool provided by the TA system. For specific operations, please refer to the [data deletion tool](https://thinkingdata.feishu.cn/wiki/Twatwe2vYi0ng0kFz8yczOIpn2o).
44
+ For storage data, TA system provides a variety of export methods, such as [<text underline="true">export data API</text>](https://thinkingdata.feishu.cn/wiki/HpUrwBMDNiGb1skKYYVc5qMnn2P).
45
+ In summary, on the basis of the above custom collection, TA system can support the update, deletion and transfer of relevant user data as developers' collection needs and users' actual needs change, thus providing users with the "right to correct", "right to delete" and "right to transfer" stipulated in GDPR.
46
+ ### The Whole LifeCycle of Data is Transparent, Auditable, Highly Available and Reliable
47
+ TA system is a collection of data collection, reception, processing, storage, calculation, application in one of the user behavior analysis tools, data in the whole Life Time every link, are transparent and auditable. The TA system supports access and operation of all data components in the link, thus ensuring that every process of any piece of data from generation to application is traceable.
48
+ If in the actual data application process, for specific reasons, it is necessary to audit a certain link in the system, counting technology will provide relevant technical support as much as possible to ensure the transparency of the whole process.
49
+ At the same time, TA system has realized high availability and reliability of all components, ensuring the integrity of data service and data storage, which conforms to the principle of "data integrity and confidentiality".
50
+ ## Other Suggestions
51
+ As a third-party data service provider, Count Technology is always committed to helping customers complete GDPR compliance from the product level. At the same time, it is also recommended that our customers increase their attention to user privacy. The following are some suggested measures from the developer level
52
+ A. Writing and completing a privacy policy
53
+ It is strongly recommended that you write your product's privacy policy and include standard terms on GDPR compliance, which will help your users to further understand the product's privacy protection policy.
54
+ B. Protecting users' right to information
55
+ In your product, you need to provide a clear application for data collection consent, and data collection is only allowed when the user agrees, so as to ensure that the user is informed when the user data is collected, not collected by default.
@@ -0,0 +1,431 @@
1
+ ---
2
+ code: android_sdk_autotrack
3
+ name: "Automatic Event Tracking"
4
+ wikiToken: D7ykw75weigcIfk3ZoichHbKnuv
5
+ parentWikiToken: LqfmwtW1xi0jzwkrKpscKEzFnme
6
+ updateTime: 1774249039000
7
+ sourceUrl: https://docs-v2.thinkingdata.cn/?version=v6.0&lan=en-US&code=android_sdk_autotrack
8
+ ---
9
+
10
+ Android SDK Automatic Event Tracking events including installation,open,close and etc.
11
+ ## **1. Introduction **
12
+ TE provides Apis for automatic data tracking. You can select the data to be tracked based on your needs.
13
+ Currently, the following types of events can be tracked automatically:
14
+ 1. Install: behavior of APP installation
15
+ 2. Open APP: including activiting APP and resuming APP from the background
16
+ 3. Close APP: including disabling the APP and calling in the background while tracking the duration of the enabling process
17
+ 4. View Page:The user views the screen in the APP (`Activity/Fragment`)
18
+ 5. Click:The user clicks on the UI element in the APP
19
+ 6. Crash:Record crash information when the APP crashes
20
+ See below for more details on how to start tracking these events.
21
+ ## **2. Enable Auto-Tracking**
22
+ You can call `enableAutoTrack` to enable the auto-tracking function:
23
+ ```java
24
+ //APP install event TDAnalytics.TDAutoTrackEventType.APP_INSTALL
25
+ //APP enable event TDAnalytics.TDAutoTrackEventType.APP_START
26
+ //APP disable event TDAnalytics.TDAutoTrackEventType.APP_END
27
+ //APP view screen event TDAnalytics.TDAutoTrackEventType.APP_VIEW_SCREEN
28
+ //APP click view event TDAnalytics.TDAutoTrackEventType.APP_CLICK
29
+ //APP crash event TDAnalytics.TDAutoTrackEventType.APP_CRASH
30
+ //enable autotrack event
31
+ TDAnalytics.enableAutoTrack(TDAnalytics.TDAutoTrackEventType.APP_START | TDAnalytics.TDAutoTrackEventType.APP_END
32
+ | TDAnalytics.TDAutoTrackEventType.APP_INSTALL | TDAnalytics.TDAutoTrackEventType.APP_VIEW_SCREEN | TDAnalytics.TDAutoTrackEventType.APP_CLICK
33
+ | TDAnalytics.TDAutoTrackEventType.APP_CRASH);
34
+ ```
35
+
36
+ ::: tip
37
+ If you need to track Clicks event or Fragment Views, please integrate [<text underline="true">auto-tracking plugin</text>](https://thinkingdata.feishu.cn/docx/Ju0Sd9wpNoraLtxVJv7cbiHqn0e).
38
+ :::
39
+ ## Instructions
40
+ ### 3.1 Installation Events
41
+ APP install event would record the installation of the APP and be reported when the APP is being activated. The event is triggered when the APP is activated for the first time after installation. APP upgrade would not trigger an installation event. If the user reinstalls the app after uninstalling it, the installing event will be triggered again.
42
+ - Event name: ta_app_install
43
+ ### 3.2 Active** Events**
44
+ APP started event would be triggered when the user enables the APP or resumes the APP from the background. A detailed description of the start event is as follows:
45
+ - Event name: ta_app_start
46
+ - Preset property: `#resume_from_background`, Boolean type, indicating whether the APP is enabled by the user or resumed from the background. If the value is true, it means the APP is resumed from the background; if the value is false, it means the APP is enabled by the user directly.
47
+ - It should be noted that SDK no longer allows the start events triggered by enabling the APP silently . To change the settings, you can add the resource file `ta_public_config.xml` under res/values
48
+ ```xml
49
+ <?xml version="1.0" encoding="utf-8"?>
50
+ <resources>
51
+ <bool name="TAEnableBackgroundStartEvent">true</bool>
52
+ </resources>
53
+ ```
54
+
55
+
56
+ ### 3.3 Inactive Events
57
+ APP end event would be triggered when the user disables the APP or moves the APP to the background. Detailed description of the end event is as follows:
58
+ - Event name: ta_app_end
59
+ - Preset property:`#duration`, numeric type, indicating the duration of each APP (unit: second).
60
+ ### 3.4 View Page Events
61
+ APP view screen event would be triggered when the user views the screen (`Activity`). Detailed event introduction is as follows:
62
+ - Event name: ta_app_view
63
+ - Preset property:
64
+ `#screen_name`, string type, package name, and category name of `Activity`
65
+ `#title`, string type, title of `Activity`, value: the value of `title` property of `Activity`
66
+ Other properties could be added to view screen events to expand their analysis value. Methods for defining the properties of view screen events are as follows
67
+ #### 3.4.1 ** View Page Events of Auto-Tracking Fragment**
68
+ As for the Fragment of `android.support.v4.app.Fragment`, the following method could be used to track view screen events automatically:
69
+ After SDK is initialized, call the following method to enable the auto-tracking function of Fragment
70
+ ```java
71
+ TDAnalytics.trackFragmentAppViewScreen();
72
+ ```
73
+
74
+ As for the Fragment of `android.app.Fragment`, the following method could be used to track view screen events automatically:
75
+ ```java
76
+ TDAnalytics.trackViewScreen(targetFragment);
77
+ ```
78
+
79
+ - `targetFragment` can be replaced by the Fragment that requires uploading of the view screen event
80
+ #### 3.4.2 **Define The Properties of View Page Events**
81
+ As for the view page events of `Activity`, properties could be added by implementing the interface `ScreenAutoTracker`. URL information and other self-defined properties could be added for view page events through the following two methods:
82
+ ```java
83
+ public class MainActivity extends AppCompatActivity implements ScreenAutoTracker {
84
+ private Context mContext;
85
+
86
+ @Override
87
+ public String getScreenUrl() {
88
+ return "thinkingdata://page/main";
89
+ }
90
+
91
+ @Override
92
+ public JSONObject getTrackProperties() throws JSONException {
93
+ JSONObject jsonObject = new JSONObject();
94
+ jsonObject.put("param1", "ABCD");
95
+ jsonObject.put("param2", "thinkingdata");
96
+ return jsonObject;
97
+ }
98
+ }
99
+ ```
100
+
101
+ The returned value of `getScreenUrl`would be used as the URL Schema of the `Activity`. When the view event of the page is triggered, preset property `#url` will be added. Meanwhile, SDK will fetch the URL Schema of the page before redirection. If it succeeds, it will be added to the preset property `#referrer` as the forward address.
102
+ The returned value of `getTrackProperties` is the self-defined property of the view event of the screen, and would join the view event of the screen automatically
103
+ As for the view screen event of `Fragment`, we provide two ways to add properties
104
+ - Add attributes by `@ThinkingDataFragmentTitle`
105
+ ```java
106
+ @ThinkingDataFragmentTitle(title = "myFragment")
107
+ public class ListViewFragment extends BaseFragment {
108
+ // your fragment implementations
109
+ }
110
+ ```
111
+
112
+ - Implements `ScreenAutoTracker`
113
+ ```java
114
+ @Override
115
+ public JSONObject getTrackProperties() {
116
+ try {
117
+ JSONObject properties = new JSONObject();
118
+ properties.put("#title", "RecyclerViewFragment");
119
+ return properties;
120
+ } catch (JSONException e) {
121
+ // ignore
122
+ }
123
+ return null;
124
+ }
125
+ ```
126
+
127
+
128
+ ### 3.5 C**licked Events**
129
+ App view click event would be triggered when the user clicks the element
130
+ - Event name: ta_app_click
131
+ - Preset property:
132
+ `#screen_name`, character string type, `package.class` of the `Activity` to which the view belongs
133
+ `#title`, character string type, the title of the `Activity` to which the view belongs, value: the value of `title` property of `Activity`
134
+ `#element_content`, character string type, the content of the view
135
+ `#element_type`, character string type, type of the view
136
+ `#element_id`,character string type, the ID of the view, `android:id` should be used by default
137
+ `#element_position`,character string type, uploaded when the view is in its `position`
138
+ `#element_selector`,character string type, the splicing of the `viewPath` of the view
139
+ #### 3.5.1 **Define ViewID**
140
+ The viewID should be `android:id` by default. If such property is unavailable, or the user wants to define the view ID, the following method could be used to cover `#element_id` property
141
+ ```java
142
+ TDAnalytics.setViewID(view,viewID);
143
+ ```
144
+
145
+ As for `Dialog`, the following method could be applied:
146
+ ```java
147
+ //android.app.Dialog
148
+ TDAnalytics.setViewID(view,viewID);
149
+ ```
150
+
151
+ or
152
+ ```java
153
+ //android.support.v7.app.AlertDialog
154
+ TDAnalytics.setViewID(view,viewID);
155
+ ```
156
+
157
+ Parameter `view` is the view that needs a view ID, while parameter `viewID` is the preset view ID. When the clicking event of the view is being uploaded, the value of `#element_id` will be the value uploaded.
158
+ #### 3.5.2 **Define The Properties of Clicked Events**
159
+ You can apply the following method to add self-defined properties for Clicking a certain view.
160
+ ```java
161
+ TDAnalytics.setViewProperties(view,properties);
162
+ ```
163
+
164
+ Parameter view is the view that needs self-defined properties, while parameter `properties` (type:`JSONObject`) are the present self-defined properties, which will be added when the click event of the view is uploaded.
165
+ Besides, as for `ExpandableListView`, `ListView` and `GridView`, you can also add self-defined properties when clicking a certain item by realizing interface with an Adapter.
166
+ - `ExpandableListView` should implements `ThinkingExpandableListViewItemTrackProperties` interface
167
+ ```java
168
+ public interface ThinkingExpandableListViewItemTrackProperties {
169
+ /**
170
+ * Add properties when clicking items at groupPosition and childPosition
171
+ * @param groupPosition
172
+ * @param childPosition
173
+ * @return
174
+ * @throws JSONException
175
+ */
176
+ JSONObject getThinkingChildItemTrackProperties(int groupPosition, int childPosition) throws JSONException;
177
+
178
+ /**
179
+ * Add properties when clicking items at groupPosition
180
+ * @param groupPosition
181
+ * @return
182
+ * @throws JSONException
183
+ */
184
+ JSONObject getThinkingGroupItemTrackProperties(int groupPosition) throws JSONException;
185
+ }
186
+ ```
187
+
188
+
189
+ - `ListView` and `GridView` should implement `ThinkingAdapterViewItemTrackProperties` interface
190
+ ```java
191
+ public interface ThinkingAdapterViewItemTrackProperties {
192
+ /**
193
+ * Add properties when clicking items in the position
194
+ * @param position
195
+ * @return
196
+ * @throws JSONException
197
+ */
198
+ JSONObject getThinkingItemTrackProperties(int position) throws JSONException;
199
+ }
200
+ ```
201
+
202
+
203
+ #### 3.5.3 **Add **`**Activity**`** information for Clicked Event of **`**AlertDialog**`
204
+ As for the clicked event of `AlertDialog (android.app.AlertDialog and android.support.v7.app.AlertDialog`), the following methods could be applied to bind with the screen (`Activity`) concerned. In this case, the `#screen_name` and `#title` property of the screen would be added to the click event.
205
+ - Please apply the following method to call `dialog.show()`and display dialog:
206
+ ```java
207
+ dialog.setOwnerActivity(targetActivity);
208
+ ```
209
+
210
+ - Please apply the following method to call `builder.show()` and display dialog:
211
+ ```java
212
+ builder.show().setOwnerActivity(activity);
213
+ ```
214
+
215
+ #### 3.5.4 Add** Clicked Events by Adding Annotation **`**@ThinkingDataTrackViewOnClick**`
216
+ If you use the calling method of adding a clicked event for viewing through `android:onclick`, you can add annotation `@ThinkingDataTrackViewOnClick`. When the calling method is being implemented, SDK will upload the view click event.
217
+ ```java
218
+ @ThinkingDataTrackViewOnClick
219
+ public void buttonOnClick(View v){}
220
+ ```
221
+
222
+ If the `buttonOnClick` method is being called, the clicked event will be uploaded
223
+ ### 3.6** Crash Events**
224
+ When an unexpected crash occurs in the APP, an APP crash event would be reported
225
+ - Event name: ta_app_crash
226
+ - Preset property:`#app_crashed_reason`, character string type, record the stack trace upon crash
227
+ ## **4.Ignore Auto-Tracking Event**
228
+ You can ignore the auto-tracking event of activity or view by the following means
229
+ ### 4.1 View Page Events
230
+ As for certain screens (`Activity`), if you do not want to transmit auto-tracking events (including view screen event and view click event), you can ignore them by the following means:
231
+ ```java
232
+ //ignore a single screen
233
+ TDAnalytics.ignoreAutoTrackActivity(MainActivity.class);
234
+ //ignore multiple screens
235
+ List<Class<?>> classList = new ArrayList<>();
236
+ classList.add(MainActivity.class);
237
+ TDAnalytics.ignoreAutoTrackActivities(classList);
238
+ ```
239
+
240
+ You can also add annotation `@ThinkingDataIgnoreTrackAppViewScreen` before `Activity` or `Fragment` to ignore the view screen event of a certain `Activity` or `Fragment`
241
+ ```java
242
+ //ignore the view screen event of TestActivity
243
+ @ThinkingDataIgnoreTrackAppViewScreen
244
+ public class TestActivity extends AppCompatActivity {
245
+ ...
246
+ }
247
+ ```
248
+
249
+ `@ThinkingDataIgnoreTrackAppViewScreenAndAppClick` before `Activity` to ignore the view screen event of a certain `Activity` as well as the view click event under the screen
250
+ ```java
251
+ //ignore the view screen event ofTestActivity as well as the view click event under the screen
252
+ @ThinkingDataIgnoreTrackAppViewScreenAndAppClick
253
+ public class TestActivity extends AppCompatActivity {
254
+ ...
255
+ }
256
+ ```
257
+
258
+ ### 4.2 Clicked Events
259
+ 1. You can apply the following method to ignore the click event of a certain view type
260
+ ```java
261
+ TDAnalytics.ignoreViewType(ignoredClass);
262
+ ```
263
+
264
+ - `ignoredClass` is the type of view that needs to be ignored. For example, `Dialog` and `Checkbox`, etc.
265
+ 2. You can apply the following method to ignore the click event of a certain element (view)
266
+ ```java
267
+ TDAnalytics.ignoreView(targetView);
268
+ ```
269
+
270
+ - `targetView` is the View to be ignored
271
+ ## **Tracking Events By Annotation**
272
+ If you need to monitor the call time of a certain method, or an event needs to be uploaded once a method is called, you can use annotation `@ThinkingDataTrackEvent` to set the event to be uploaded rapidly. It should be noted that variables could not be uploaded for properties. Therefore, only simple events could be uploaded.
273
+ ```java
274
+ //use annotation
275
+ @ThinkingDataTrackEvent(eventName = "event_name", properties = "{\"paramString\":\"value\",\"paramNumber\":123,\"paramBoolean\":true}")
276
+ public void fun(){}
277
+ ```
278
+
279
+ In this case, if method `fun` is called, an even named `event_name` and such properties as `"paramString":"value"`, `"paramNumber":123` and `"paramBoolean":true` will be uploaded
280
+ ## **6.Preset Properties of Auto-Tracking Events**
281
+ The following preset properties are the properties set specially for each auto-tracking event
282
+ - Preset properties of APP start event (ta_app_start)
283
+
284
+ <lark-table rows="4" cols="4" column-widths="143,133,140,328">
285
+
286
+ <lark-tr>
287
+ <lark-td>
288
+ ** Property name **
289
+ </lark-td>
290
+ <lark-td>
291
+ ** Display name **
292
+ </lark-td>
293
+ <lark-td>
294
+ ** Property type **
295
+ </lark-td>
296
+ <lark-td>
297
+ ** Instruction **
298
+ </lark-td>
299
+ </lark-tr>
300
+ <lark-tr>
301
+ <lark-td>
302
+ #resume_from_background
303
+ </lark-td>
304
+ <lark-td>
305
+ Resume from the background or not
306
+ </lark-td>
307
+ <lark-td>
308
+ Bool
309
+ </lark-td>
310
+ <lark-td>
311
+ Indicating whether the APP is enabled by the user or resumed from the background. If the value is true, it means the APP is resumed from the background; if the value is false, it means the APP is enabled by the user directly.
312
+ </lark-td>
313
+ </lark-tr>
314
+ <lark-tr>
315
+ <lark-td>
316
+ #start_reason
317
+ </lark-td>
318
+ <lark-td>
319
+ APP enable source
320
+ </lark-td>
321
+ <lark-td>
322
+ Text
323
+ </lark-td>
324
+ <lark-td>
325
+ The content is JSON character string; when the APP is enabled by url or intent method, the `url `content and the` data` in intent would be recorded automatically. For the sample, please refer to:
326
+ `{url:"thinkingdata://","data":{}}`
327
+ </lark-td>
328
+ </lark-tr>
329
+ <lark-tr>
330
+ <lark-td>
331
+ #background_duration
332
+ </lark-td>
333
+ <lark-td>
334
+ Background duration
335
+ </lark-td>
336
+ <lark-td>
337
+ Numeric value
338
+ </lark-td>
339
+ <lark-td>
340
+ Record the background duration of the APP in the time interval between two start events (Unit: second)
341
+ </lark-td>
342
+ </lark-tr>
343
+ </lark-table>
344
+
345
+ - Preset properties of APP end event (ta_app_end)
346
+ <sheet token="Xny0sLWUchPLLQtxkdBcolDwnah_JyO46Y"/>
347
+
348
+ - Preset properties of APP view screen event (ta_app_view)
349
+ <sheet token="Xny0sLWUchPLLQtxkdBcolDwnah_UeETsg"/>
350
+
351
+ - Preset properties of APP view click event
352
+ <sheet token="Xny0sLWUchPLLQtxkdBcolDwnah_lC5ttn"/>
353
+
354
+ - Preset properties of APP crash event (ta_app_crash)
355
+ <sheet token="Xny0sLWUchPLLQtxkdBcolDwnah_QsujSs"/>
356
+
357
+ ## **7. Optional Plugin **
358
+ ::: tip
359
+ This plugin should only be integrated when you need to enable the view click event and Fragment view screen.
360
+ :::
361
+ ::: tip
362
+ Starting from version 2.1.0, it is compatible with Gradle8.0.
363
+ :::
364
+
365
+ <lark-table rows="4" cols="2" column-widths="230,590">
366
+
367
+ <lark-tr>
368
+ <lark-td>
369
+ Android Analytics SDK version
370
+ </lark-td>
371
+ <lark-td>
372
+ plugin version
373
+ </lark-td>
374
+ </lark-tr>
375
+ <lark-tr>
376
+ <lark-td>
377
+ [oldest - 3.0.0)
378
+ </lark-td>
379
+ <lark-td>
380
+ 1.2.0
381
+ </lark-td>
382
+ </lark-tr>
383
+ <lark-tr>
384
+ <lark-td>
385
+ [3.0.0 - 3.1.0]
386
+ </lark-td>
387
+ <lark-td>
388
+ 2.1.0
389
+ </lark-td>
390
+ </lark-tr>
391
+ <lark-tr>
392
+ <lark-td>
393
+ (3.1.0 - latest]
394
+ </lark-td>
395
+ <lark-td>
396
+ 2.2.0
397
+ </lark-td>
398
+ </lark-tr>
399
+ </lark-table>
400
+
401
+ ```groovy {wrap}
402
+ buildscript {
403
+ repositories {
404
+ google()
405
+ jcenter()
406
+ }
407
+ dependencies {
408
+ classpath 'cn.thinkingdata.android:android-gradle-plugin2:2.2.0'
409
+ }
410
+ }
411
+ ```
412
+
413
+ Relevant parameters of the plugin could be configured in the build.gradle file of the project
414
+ ```nginx {wrap}
415
+ apply plugin: 'cn.thinkingdata.android'
416
+ android {
417
+
418
+ }
419
+ ThinkingAnalytics {
420
+ debug = true
421
+ exclude = []
422
+ sdk{
423
+ disableAndroidID = false
424
+ }
425
+ }
426
+ ```
427
+
428
+ If you want to open the compile log, you can set debug as true, whose default value is false.
429
+ If you do not want to scan the class under a certain route, you can set
430
+ `exclude = ['cn.thinkingdata.android','android.support']`
431
+ Code isolation of sensitive properties (e.g., Android ID) can be configured by setting `disableAndroidID`` = ``true`
@@ -0,0 +1,49 @@
1
+ ---
2
+ code: android_sdk_debug
3
+ name: "Debugging and Logging"
4
+ wikiToken: BlXiw3X5zi7Cakk0EPQcFw8pnyb
5
+ parentWikiToken: LqfmwtW1xi0jzwkrKpscKEzFnme
6
+ updateTime: 1774251961000
7
+ sourceUrl: https://docs-v2.thinkingdata.cn/?version=v6.0&lan=en-US&code=android_sdk_debug
8
+ ---
9
+
10
+ During the process of SDK integration, you can perform real-time debugging by checking SDK's logs in the IDE console or using the Debug feature of TE.
11
+ ## Printing Log
12
+ ```java
13
+ TDAnalytics.enableLog(true);
14
+ ```
15
+
16
+ <quote-container>
17
+ After opening the log, you can check data tracking of SDK by filtering logs related to ThinkingAnalytics in IDE.
18
+ </quote-container>
19
+
20
+ ## **2. Debugging**
21
+ You need to follow the following two steps to enable the Debug mode:
22
+ 1. Enable the debug mode at the client side
23
+ The sample code for enabling the Debug mode on the client side is as follows:
24
+ ```java
25
+ // obtain TDConfig instance
26
+ TDConfig config = TDConfig.getInstance(this, TE_APP_ID, TE_SERVER_URL);
27
+ /*
28
+ Set the operation mode as the Debug mode
29
+ NORMAL mode: the data would be saved in caches and reported according to relevant cache policies under the NORMAL mode by default. It is recommended to use the mode in an online environment
30
+ Debug mode: report data item by item. If problems occur, the user would be notified with logs and anomalies. It is recommended to use the Debug mode in an online environment
31
+ DebugOnly mode: data would be verified without being stored; it is not recommended to use the DebugOnly mode in an online environment
32
+ */
33
+ config.setMode(TDConfig.ModeEnum.DEBUG);
34
+ // initialize SDK
35
+ TDAnalytics.init(config);
36
+ ```
37
+
38
+ 2. Add Device
39
+ To avoid launching the Debug mode in the production environment, it is required that only specified device can enable Debug mode. The Debug mode can only be enabled for devices whose IDs have been configured in the "Debugger"sector on the "Tracking Management" page of TE when the client side has enabled the Debug mode.
40
+ <image token="SbaLbQVQzoxZLTxGVR8cnqcmnCh" width="2782" height="1284" align="left"/>
41
+
42
+
43
+ Device ID can be get by the following three methods:
44
+ - #device_id property in the event data of TE
45
+ - Client log: DeviceID would be printed as log after SDK is initialized
46
+ - Call API:[Device ID](https://thinkingdata.feishu.cn/wiki/LqfmwtW1xi0jzwkrKpscKEzFnme)
47
+ <quote-container>
48
+ The Debug mode may undermine the data tracking quality and stability of the App. It could only be used for data verification at the integration stage, and should not be used in the online environment.
49
+ </quote-container>