ae-tracking 0.1.0

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 (308) hide show
  1. package/CHANGELOG.md +43 -0
  2. package/README.md +50 -0
  3. package/dist/bin/ae-tracking.d.ts +2 -0
  4. package/dist/bin/ae-tracking.js +20 -0
  5. package/dist/scripts/postinstall.d.ts +1 -0
  6. package/dist/scripts/postinstall.js +17 -0
  7. package/dist/src/auth.d.ts +12 -0
  8. package/dist/src/auth.js +215 -0
  9. package/dist/src/cli/auth.d.ts +8 -0
  10. package/dist/src/cli/auth.js +81 -0
  11. package/dist/src/cli/code.d.ts +2 -0
  12. package/dist/src/cli/code.js +85 -0
  13. package/dist/src/cli/debug.d.ts +2 -0
  14. package/dist/src/cli/debug.js +152 -0
  15. package/dist/src/cli/home.d.ts +4 -0
  16. package/dist/src/cli/home.js +15 -0
  17. package/dist/src/cli/init.d.ts +14 -0
  18. package/dist/src/cli/init.js +107 -0
  19. package/dist/src/cli/package-root.d.ts +1 -0
  20. package/dist/src/cli/package-root.js +20 -0
  21. package/dist/src/cli/plan.d.ts +2 -0
  22. package/dist/src/cli/plan.js +242 -0
  23. package/dist/src/cli/wiki.d.ts +2 -0
  24. package/dist/src/cli/wiki.js +20 -0
  25. package/dist/src/client.d.ts +62 -0
  26. package/dist/src/client.js +56 -0
  27. package/dist/src/config.d.ts +4 -0
  28. package/dist/src/config.js +29 -0
  29. package/dist/src/plan/autotrack.d.ts +18 -0
  30. package/dist/src/plan/autotrack.js +350 -0
  31. package/dist/src/plan/conflict.d.ts +34 -0
  32. package/dist/src/plan/conflict.js +106 -0
  33. package/dist/src/plan/draft.d.ts +39 -0
  34. package/dist/src/plan/draft.js +104 -0
  35. package/dist/src/plan/fix.d.ts +32 -0
  36. package/dist/src/plan/fix.js +187 -0
  37. package/dist/src/plan/types.d.ts +57 -0
  38. package/dist/src/plan/types.js +1 -0
  39. package/dist/src/project-detect/detect.d.ts +2 -0
  40. package/dist/src/project-detect/detect.js +120 -0
  41. package/dist/src/project-detect/types.d.ts +9 -0
  42. package/dist/src/project-detect/types.js +1 -0
  43. package/dist/src/te-debug/client.d.ts +12 -0
  44. package/dist/src/te-debug/client.js +54 -0
  45. package/dist/src/te-debug/types.d.ts +16 -0
  46. package/dist/src/te-debug/types.js +1 -0
  47. package/dist/src/te-plan/fetch.d.ts +3 -0
  48. package/dist/src/te-plan/fetch.js +47 -0
  49. package/dist/src/te-plan/types.d.ts +7 -0
  50. package/dist/src/te-plan/types.js +1 -0
  51. package/dist/src/wiki/block-to-md.d.ts +74 -0
  52. package/dist/src/wiki/block-to-md.js +88 -0
  53. package/dist/src/wiki/crawler.d.ts +3 -0
  54. package/dist/src/wiki/crawler.js +71 -0
  55. package/dist/src/wiki/index-writer.d.ts +4 -0
  56. package/dist/src/wiki/index-writer.js +70 -0
  57. package/dist/src/wiki/slugify.d.ts +1 -0
  58. package/dist/src/wiki/slugify.js +11 -0
  59. package/dist/src/wiki/types.d.ts +29 -0
  60. package/dist/src/wiki/types.js +1 -0
  61. package/dist/src/wiki-query/query.d.ts +8 -0
  62. package/dist/src/wiki-query/query.js +32 -0
  63. package/dist/src/xlsx/read.d.ts +2 -0
  64. package/dist/src/xlsx/read.js +457 -0
  65. package/dist/src/xlsx/write.d.ts +3 -0
  66. package/dist/src/xlsx/write.js +251 -0
  67. package/package.json +47 -0
  68. package/skills/generate-tracking-code/SKILL.md +551 -0
  69. package/skills/generate-tracking-code/references/client-sdk-insert.md +92 -0
  70. package/skills/generate-tracking-code/references/datax-config.md +41 -0
  71. package/skills/generate-tracking-code/references/debug-script.md +99 -0
  72. package/skills/generate-tracking-code/references/logbus-config.md +224 -0
  73. package/skills/generate-tracking-code/references/modes.md +81 -0
  74. package/skills/generate-tracking-code/references/restful-call.md +34 -0
  75. package/skills/generate-tracking-code/references/sdk-index.md +123 -0
  76. package/skills/generate-tracking-code/references/server-sdk-insert.md +175 -0
  77. package/skills/generate-tracking-code/references/snippet-delivery.md +240 -0
  78. package/skills/generate-tracking-code/references/te-api.md +181 -0
  79. package/skills/generate-tracking-plan/SKILL.md +826 -0
  80. package/skills/generate-tracking-plan/references/autotrack-events.md +238 -0
  81. package/skills/generate-tracking-plan/references/te-api.md +97 -0
  82. package/skills/generate-tracking-plan/references/xlsx-schema.md +149 -0
  83. package/skills/te-wiki-synthesize/SKILL.md +142 -0
  84. package/wiki/te-docs/index.md +223 -0
  85. package/wiki/te-docs/log.md +28 -0
  86. package/wiki/te-docs/raw//346/216/245/345/205/245/345/211/215/345/207/206/345/244/207/345/267/245/344/275/234//346/225/260/346/215/256/350/247/204/345/210/231.md +379 -0
  87. package/wiki/te-docs/raw//346/216/245/345/205/245/345/211/215/345/207/206/345/244/207/345/267/245/344/275/234//347/224/250/346/210/267/350/257/206/345/210/253/350/247/204/345/210/231.md +461 -0
  88. package/wiki/te-docs/raw//346/216/245/345/205/245/345/211/215/345/207/206/345/244/207/345/267/245/344/275/234//351/242/204/347/275/256/345/261/236/346/200/247/344/270/216/347/263/273/347/273/237/345/255/227/346/256/265.md +634 -0
  89. package/wiki/te-docs/raw//346/216/245/345/205/245/345/211/215/345/207/206/345/244/207/345/267/245/344/275/234.md +190 -0
  90. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227/restful-api-/344/275/277/347/224/250/346/214/207/345/215/227.md +195 -0
  91. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227/sdk-information-collection-rules.md +63 -0
  92. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/205/263/344/272/216-gdpr.md +81 -0
  93. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk/android//345/220/210/350/247/204/346/214/207/345/215/227.md +34 -0
  94. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk/android//346/233/264/346/226/260/346/227/245/345/277/227.md +502 -0
  95. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk/android//350/277/233/351/230/266/346/214/207/345/215/227//344/270/211/346/226/271/346/225/260/346/215/256.md +367 -0
  96. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk/android//350/277/233/351/230/266/346/214/207/345/215/227//345/244/232/345/256/236/344/276/213.md +117 -0
  97. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk/android//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 +96 -0
  98. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk/android//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 +947 -0
  99. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk/android//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 +686 -0
  100. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk/android//350/277/233/351/230/266/346/214/207/345/215/227.md +1126 -0
  101. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk/android.md +461 -0
  102. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk/c//346/233/264/346/226/260/346/227/245/345/277/227-RCu1wk.md +64 -0
  103. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk/c//346/233/264/346/226/260/346/227/245/345/277/227.md +167 -0
  104. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk/c//350/277/233/351/230/266/346/214/207/345/215/227//345/256/236/346/227/266/350/260/203/350/257/225-T57MwB.md +56 -0
  105. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk/c//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 +57 -0
  106. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk/c//350/277/233/351/230/266/346/214/207/345/215/227-JARDwp.md +455 -0
  107. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk/c//350/277/233/351/230/266/346/214/207/345/215/227.md +477 -0
  108. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk/c-Uicgw2.md +145 -0
  109. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk/c.md +253 -0
  110. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk/h5-/344/270/216-app-sdk-/346/211/223/351/200/232.md +179 -0
  111. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk/ios//345/220/210/350/247/204/346/214/207/345/215/227.md +37 -0
  112. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk/ios//346/233/264/346/226/260/346/227/245/345/277/227.md +491 -0
  113. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk/ios//350/277/233/351/230/266/346/214/207/345/215/227//344/270/211/346/226/271/346/225/260/346/215/256.md +154 -0
  114. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk/ios//350/277/233/351/230/266/346/214/207/345/215/227//345/244/232/345/256/236/344/276/213.md +148 -0
  115. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk/ios//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 +92 -0
  116. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk/ios//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 +479 -0
  117. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk/ios//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 +587 -0
  118. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk/ios//350/277/233/351/230/266/346/214/207/345/215/227.md +912 -0
  119. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk/ios//351/232/220/347/247/201/346/270/205/345/215/225.md +183 -0
  120. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk/ios.md +397 -0
  121. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk/javascript//345/220/210/350/247/204/346/214/207/345/215/227.md +39 -0
  122. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk/javascript//346/233/264/346/226/260/346/227/245/345/277/227.md +239 -0
  123. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk/javascript//350/277/233/351/230/266/346/214/207/345/215/227//345/244/232/345/256/236/344/276/213.md +55 -0
  124. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk/javascript//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
  125. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk/javascript//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 +113 -0
  126. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk/javascript//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 +267 -0
  127. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk/javascript//350/277/233/351/230/266/346/214/207/345/215/227.md +455 -0
  128. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk/javascript.md +257 -0
  129. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk/macos//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 +77 -0
  130. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk/macos//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 +249 -0
  131. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk/macos//350/277/233/351/230/266/346/214/207/345/215/227.md +738 -0
  132. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk/macos.md +317 -0
  133. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk/openharmony//345/220/210/350/247/204/346/214/207/345/215/227.md +345 -0
  134. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk/openharmony//346/233/264/346/226/260/346/227/245/345/277/227.md +128 -0
  135. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//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 +60 -0
  136. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//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 +54 -0
  137. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk/openharmony//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 +121 -0
  138. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//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 +286 -0
  139. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk/openharmony//350/277/233/351/230/266/346/214/207/345/215/227.md +408 -0
  140. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk/openharmony.md +209 -0
  141. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//345/256/242/346/210/267/347/253/257-sdk-/345/270/270/350/247/201/351/227/256/351/242/230.md +72 -0
  142. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//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 +56 -0
  143. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//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 +313 -0
  144. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//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 +78 -0
  145. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//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 +58 -0
  146. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//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 +192 -0
  147. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//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 +301 -0
  148. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//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 +644 -0
  149. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//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 +440 -0
  150. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//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 +35 -0
  151. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//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 +49 -0
  152. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//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 +53 -0
  153. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//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 +32 -0
  154. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//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 +65 -0
  155. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//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 +288 -0
  156. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//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 +236 -0
  157. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/cocos2d-x//345/220/210/350/247/204/346/214/207/345/215/227.md +34 -0
  158. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/cocos2d-x//346/233/264/346/226/260/346/227/245/345/277/227.md +122 -0
  159. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/cocos2d-x//350/277/233/351/230/266/346/214/207/345/215/227//345/244/232/345/256/236/344/276/213.md +27 -0
  160. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/cocos2d-x//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 +53 -0
  161. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/cocos2d-x//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 +34 -0
  162. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/cocos2d-x//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 +177 -0
  163. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/cocos2d-x//350/277/233/351/230/266/346/214/207/345/215/227.md +368 -0
  164. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/cocos2d-x.md +311 -0
  165. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/cocoscreator//345/220/210/350/247/204/346/214/207/345/215/227.md +42 -0
  166. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/cocoscreator//346/233/264/346/226/260/346/227/245/345/277/227.md +184 -0
  167. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/cocoscreator//350/277/233/351/230/266/346/214/207/345/215/227/native/346/224/257/346/214/201.md +142 -0
  168. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/cocoscreator//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 +60 -0
  169. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/cocoscreator//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 +96 -0
  170. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/cocoscreator//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 +255 -0
  171. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/cocoscreator//350/277/233/351/230/266/346/214/207/345/215/227.md +659 -0
  172. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/cocoscreator.md +213 -0
  173. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/corona//345/220/210/350/247/204/346/214/207/345/215/227.md +39 -0
  174. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/corona//346/233/264/346/226/260/346/227/245/345/277/227.md +42 -0
  175. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/corona//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 +59 -0
  176. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/corona//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 +37 -0
  177. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/corona//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 +50 -0
  178. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/corona//350/277/233/351/230/266/346/214/207/345/215/227.md +281 -0
  179. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/corona.md +304 -0
  180. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//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 +129 -0
  181. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//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 +74 -0
  182. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//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 +60 -0
  183. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//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 +74 -0
  184. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//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 +228 -0
  185. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//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 +640 -0
  186. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/egret.md +210 -0
  187. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//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 +129 -0
  188. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//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 +79 -0
  189. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//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 +60 -0
  190. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//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 +73 -0
  191. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//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 +254 -0
  192. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//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 +626 -0
  193. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/layaair.md +228 -0
  194. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/unity//345/216/206/345/217/262/347/211/210/346/234/254-unity-sdk-/344/275/277/347/224/250/346/214/207/345/215/227.md +503 -0
  195. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/unity//345/220/210/350/247/204/346/214/207/345/215/227.md +34 -0
  196. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/unity//346/233/264/346/226/260/346/227/245/345/277/227.md +505 -0
  197. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/unity//350/277/233/351/230/266/346/214/207/345/215/227//344/270/211/346/226/271/346/225/260/346/215/256.md +86 -0
  198. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/unity//350/277/233/351/230/266/346/214/207/345/215/227//345/216/237/347/224/237-sdk-/345/217/257/346/217/222/346/213/224.md +44 -0
  199. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/unity//350/277/233/351/230/266/346/214/207/345/215/227//345/244/232/345/256/236/344/276/213.md +55 -0
  200. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/unity//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 +53 -0
  201. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/unity//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 +156 -0
  202. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/unity//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 +293 -0
  203. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/unity//350/277/233/351/230/266/346/214/207/345/215/227.md +667 -0
  204. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/unity.md +203 -0
  205. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/unreal//345/220/210/350/247/204/346/214/207/345/215/227.md +34 -0
  206. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/unreal//346/233/264/346/226/260/346/227/245/345/277/227.md +209 -0
  207. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/unreal//350/277/233/351/230/266/346/214/207/345/215/227//344/270/211/346/226/271/346/225/260/346/215/256.md +152 -0
  208. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/unreal//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 +41 -0
  209. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/unreal//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 +81 -0
  210. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/unreal//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 +181 -0
  211. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/unreal//350/277/233/351/230/266/346/214/207/345/215/227.md +346 -0
  212. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/unreal.md +228 -0
  213. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216.md +20 -0
  214. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//350/267/250/345/271/263/345/217/260/346/241/206/346/236/266/flutter//345/220/210/350/247/204/346/214/207/345/215/227.md +37 -0
  215. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//350/267/250/345/271/263/345/217/260/346/241/206/346/236/266/flutter//346/233/264/346/226/260/346/227/245/345/277/227.md +201 -0
  216. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//350/267/250/345/271/263/345/217/260/346/241/206/346/236/266/flutter//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
  217. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//350/267/250/345/271/263/345/217/260/346/241/206/346/236/266/flutter//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 +139 -0
  218. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//350/267/250/345/271/263/345/217/260/346/241/206/346/236/266/flutter//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 +65 -0
  219. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//350/267/250/345/271/263/345/217/260/346/241/206/346/236/266/flutter//350/277/233/351/230/266/346/214/207/345/215/227.md +356 -0
  220. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//350/267/250/345/271/263/345/217/260/346/241/206/346/236/266/flutter.md +176 -0
  221. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//350/267/250/345/271/263/345/217/260/346/241/206/346/236/266/react-native//345/220/210/350/247/204/346/214/207/345/215/227.md +37 -0
  222. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//350/267/250/345/271/263/345/217/260/346/241/206/346/236/266/react-native//346/233/264/346/226/260/346/227/245/345/277/227.md +162 -0
  223. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//350/267/250/345/271/263/345/217/260/346/241/206/346/236/266/react-native//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 +60 -0
  224. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//350/267/250/345/271/263/345/217/260/346/241/206/346/236/266/react-native//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 +140 -0
  225. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//350/267/250/345/271/263/345/217/260/346/241/206/346/236/266/react-native//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 +23 -0
  226. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//350/267/250/345/271/263/345/217/260/346/241/206/346/236/266/react-native//350/277/233/351/230/266/346/214/207/345/215/227.md +375 -0
  227. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//350/267/250/345/271/263/345/217/260/346/241/206/346/236/266/react-native.md +176 -0
  228. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//350/267/250/345/271/263/345/217/260/346/241/206/346/236/266/uni-app//346/233/264/346/226/260/346/227/245/345/277/227.md +34 -0
  229. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//350/267/250/345/271/263/345/217/260/346/241/206/346/236/266/uni-app//350/277/233/351/230/266/346/214/207/345/215/227/native/346/224/257/346/214/201.md +96 -0
  230. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//350/267/250/345/271/263/345/217/260/346/241/206/346/236/266/uni-app//350/277/233/351/230/266/346/214/207/345/215/227//345/244/232/345/256/236/344/276/213.md +48 -0
  231. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//350/267/250/345/271/263/345/217/260/346/241/206/346/236/266/uni-app//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 +57 -0
  232. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//350/267/250/345/271/263/345/217/260/346/241/206/346/236/266/uni-app//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 +68 -0
  233. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//350/267/250/345/271/263/345/217/260/346/241/206/346/236/266/uni-app//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 +249 -0
  234. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//350/267/250/345/271/263/345/217/260/346/241/206/346/236/266/uni-app//350/277/233/351/230/266/346/214/207/345/215/227.md +420 -0
  235. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//350/267/250/345/271/263/345/217/260/346/241/206/346/236/266/uni-app.md +193 -0
  236. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//350/267/250/345/271/263/345/217/260/346/241/206/346/236/266.md +15 -0
  237. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk.md +35 -0
  238. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/225/260/346/215/256/345/257/274/345/205/245/filebeat-logstash-/344/275/277/347/224/250/346/214/207/345/215/227.md +638 -0
  239. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/225/260/346/215/256/345/257/274/345/205/245/logbus2-/344/275/277/347/224/250/346/214/207/345/215/227.md +1140 -0
  240. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/225/260/346/215/256/345/257/274/345/205/245/ta-datax-writer-/346/217/222/344/273/266/344/275/277/347/224/250/346/214/207/345/215/227.md +256 -0
  241. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/225/260/346/215/256/345/257/274/345/205/245.md +17 -0
  242. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/225/260/346/225/260/347/247/221/346/212/200sdk/351/232/220/347/247/201/345/243/260/346/230/216.md +298 -0
  243. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/c//346/233/264/346/226/260/346/227/245/345/277/227-HZrPwz.md +80 -0
  244. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/c//346/233/264/346/226/260/346/227/245/345/277/227-U1zKwj.md +108 -0
  245. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/c//346/233/264/346/226/260/346/227/245/345/277/227.md +114 -0
  246. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/c//350/277/233/351/230/266/346/214/207/345/215/227//345/256/236/346/227/266/350/260/203/350/257/225-LEb9wx.md +46 -0
  247. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/c//350/277/233/351/230/266/346/214/207/345/215/227//345/256/236/346/227/266/350/260/203/350/257/225-TfR3wg.md +46 -0
  248. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/c//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 +93 -0
  249. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/c//350/277/233/351/230/266/346/214/207/345/215/227//351/242/204/347/275/256/345/261/236/346/200/247-U1Qvwk.md +75 -0
  250. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/c//350/277/233/351/230/266/346/214/207/345/215/227//351/242/204/347/275/256/345/261/236/346/200/247-X08Fw7.md +75 -0
  251. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/c//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 +75 -0
  252. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/c//350/277/233/351/230/266/346/214/207/345/215/227-Jc1dwk.md +245 -0
  253. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/c//350/277/233/351/230/266/346/214/207/345/215/227-YGuuwc.md +237 -0
  254. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/c//350/277/233/351/230/266/346/214/207/345/215/227.md +242 -0
  255. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/c-D4KBwg.md +211 -0
  256. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/c-HF7Dwv.md +169 -0
  257. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/c.md +225 -0
  258. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/erlang//346/233/264/346/226/260/346/227/245/345/277/227.md +55 -0
  259. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/erlang//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 +51 -0
  260. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/erlang//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 +75 -0
  261. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/erlang//350/277/233/351/230/266/346/214/207/345/215/227.md +151 -0
  262. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/erlang.md +204 -0
  263. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/golang//346/233/264/346/226/260/346/227/245/345/277/227.md +135 -0
  264. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/golang//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 +46 -0
  265. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/golang//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 +75 -0
  266. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/golang//350/277/233/351/230/266/346/214/207/345/215/227.md +208 -0
  267. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/golang.md +193 -0
  268. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/java//346/233/264/346/226/260/346/227/245/345/277/227.md +138 -0
  269. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/java//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 +52 -0
  270. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/java//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 +75 -0
  271. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/java//350/277/233/351/230/266/346/214/207/345/215/227.md +289 -0
  272. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/java.md +214 -0
  273. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/lua//346/233/264/346/226/260/346/227/245/345/277/227.md +123 -0
  274. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/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 +57 -0
  275. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/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 +75 -0
  276. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/lua//350/277/233/351/230/266/346/214/207/345/215/227.md +234 -0
  277. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/lua.md +165 -0
  278. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/nodejs//346/233/264/346/226/260/346/227/245/345/277/227.md +89 -0
  279. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/nodejs//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 +65 -0
  280. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/nodejs//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 +75 -0
  281. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/nodejs//350/277/233/351/230/266/346/214/207/345/215/227.md +263 -0
  282. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/nodejs.md +161 -0
  283. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/php//346/233/264/346/226/260/346/227/245/345/277/227.md +86 -0
  284. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/php//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
  285. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/php//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 +75 -0
  286. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/php//350/277/233/351/230/266/346/214/207/345/215/227.md +269 -0
  287. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/php.md +206 -0
  288. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/python//346/233/264/346/226/260/346/227/245/345/277/227.md +155 -0
  289. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/python//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 +47 -0
  290. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/python//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 +75 -0
  291. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/python//350/277/233/351/230/266/346/214/207/345/215/227.md +274 -0
  292. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/python.md +162 -0
  293. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/ruby//346/233/264/346/226/260/346/227/245/345/277/227.md +53 -0
  294. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/ruby//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 +50 -0
  295. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/ruby//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 +75 -0
  296. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/ruby//350/277/233/351/230/266/346/214/207/345/215/227.md +226 -0
  297. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/ruby.md +165 -0
  298. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk.md +23 -0
  299. package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227.md +64 -0
  300. package/wiki/te-docs/raw//350/277/233/351/230/266/346/225/260/346/215/256/347/261/273/345/236/213//345/217/257/346/233/264/346/226/260/344/272/213/344/273/266.md +109 -0
  301. package/wiki/te-docs/raw//350/277/233/351/230/266/346/225/260/346/215/256/347/261/273/345/236/213//351/246/226/346/254/241/344/272/213/344/273/266/346/240/241/351/252/214.md +88 -0
  302. package/wiki/te-docs/raw//350/277/233/351/230/266/346/225/260/346/215/256/347/261/273/345/236/213.md +22 -0
  303. package/wiki/te-docs/schema.md +17 -0
  304. package/wiki/te-docs/synthesis/batch-ingest-comparison.md +117 -0
  305. package/wiki/te-docs/synthesis/js-sdk-cheatsheet.md +136 -0
  306. package/wiki/te-docs/synthesis/restful-api-reference.md +142 -0
  307. package/wiki/te-docs/synthesis/sdk-selection.md +79 -0
  308. package/wiki/te-docs/synthesis/server-sdk-overview.md +124 -0
@@ -0,0 +1,477 @@
1
+ ---
2
+ code: client_cpp_sdk_advanced
3
+ name: "进阶指南"
4
+ wikiToken: OlznwgrzoieRjPkq1VdcUuwmnbe
5
+ parentWikiToken: E8ekwJ170iMfb8ktBPfcYxE4nq0
6
+ updateTime: 1745310911000
7
+ sourceUrl: https://docs-v2.thinkingdata.cn/?version=v5.0&lan=zh-CN&code=client_cpp_sdk_advanced
8
+ ---
9
+ # 进阶指南
10
+
11
+ ### 一、设置用户ID
12
+
13
+ SDK 实例默认会使用随机数作为每个用户的默认访客 ID,该 ID 将会作为用户在未登录状态下身份识别 ID。需要注意的是,访客 ID 在用户重新安装应用以及更换设备时将会变更。
14
+
15
+ #### 1.1 设置访客 ID
16
+
17
+ ::: tip 提示
18
+
19
+ 一般情况下,您不需要自定义访客 ID. 请确保已经理解用户识别规则,再进行访客 ID 的设置。
20
+
21
+ 如果您需要替换访客 ID,则应当在初始化 SDK 结束之后立即进行调用,请勿多次调用,以免产生无用的账号
22
+
23
+ :::
24
+
25
+ 如果您的 App 对每个用户有自己的访客 ID 管理体系,则您可以调用 `Identify` 来设置访客 ID:
26
+
27
+ ```
28
+ // 将访客ID设置为Thinker
29
+ ThinkingAnalyticsAPI::Identify("Thinker");
30
+ ```
31
+
32
+ 如果需要获得当前访客 ID,可以调用 `DistinctID()` 获取:
33
+
34
+ ```
35
+ //返回访客ID
36
+ ThinkingAnalyticsAPI::DistinctID().c_str()
37
+ ```
38
+
39
+ #### 1.2 设置账号 ID
40
+
41
+ 在用户进行登录时,可调用 `Login` 来设置用户的账号 ID, AE 平台将会以账号 ID 作为身份识别 ID,并且设置的账号 ID 将会在调用 `Logout` 之前一直保留。多次调用 `Login` 将覆盖先前的账号 ID
42
+
43
+ ```
44
+ // 用户的登录唯一标识,此数据对应上报数据里的#account_id,此时#account_id的值为TA
45
+ ThinkingAnalyticsAPI::Login("TA");
46
+ ```
47
+
48
+ <!-- unsupported block: 34 -->
49
+
50
+ **该方法不会上传登录事件**
51
+
52
+ #### 1.3 清除账号ID
53
+
54
+ 在用户产生登出行为之后,可调用 `LogOut` 来清除账号 ID,在下次调用 `Login` 之前,将会以访客 ID 作为身份识别 ID。
55
+
56
+ ```
57
+ ThinkingAnalyticsAPI::LogOut();
58
+ ```
59
+
60
+ 我们推荐您在显性的登出事件时调用 `LogOut`,比如用户产生了注销账号这一行为时才调用,而不需要在关闭 App 时调用。
61
+
62
+ <!-- unsupported block: 34 -->
63
+
64
+ **该方法不会上传登出事件**
65
+
66
+ ### 二 、发送事件
67
+
68
+ 在 SDK 初始化完成之后,您就可以进行数据埋点,收集用户的的行为信息。一般情况下普通事件即可满足业务场景需求,您也可以根据自己的实际业务场景使用首次、可更新等事件。
69
+
70
+ #### 2.1 普通事件
71
+
72
+ 您可以调用 `Track` 来上传事件,建议您根据先前梳理的文档来设置事件的属性以及发送事件的条件,此处以用户购买某商品作为范例:
73
+
74
+ ```
75
+ //商店购买事件
76
+ TDJSONObject event_properties;
77
+ event_properties.SetString("product_name", "商品名");
78
+ ThinkingAnalyticsAPI::Track("product_buy", event_properties);
79
+ ```
80
+
81
+ #### 2.2 首次事件
82
+
83
+ 首次事件是指针对某个设备或者其他维度的 ID,只会记录一次的事件。例如在一些场景下,您可能希望记录在某个设备上的激活事件,则可以用首次事件来上报数据。
84
+
85
+ ```
86
+ TDJSONObject jsonObject1;
87
+ jsonObject1.SetString("test","test");
88
+ TDFirstEvent *firstEvent = new TDFirstEvent("device_activation",jsonObject1);
89
+ ThinkingAnalyticsAPI::Track(firstEvent);
90
+ delete firstEvent;
91
+ ```
92
+
93
+ 如果您希望以设备以外的其他维度来判断是否首次,则可以为首次事件自定义first_check_id:
94
+
95
+ ```
96
+ //将用户ID设置为首次事件的first_check_id,实现用户首次激活事件的采集
97
+ TDJSONObject jsonObject1;
98
+ jsonObject1.SetString("test","test");
99
+ TDFirstEvent *firstEvent = new TDFirstEvent("account_activation",jsonObject1);
100
+ firstEvent->setFirstCheckId("TA");
101
+ ThinkingAnalyticsAPI::Track(firstEvent);
102
+ delete firstEvent;
103
+ ```
104
+
105
+ <!-- unsupported block: 34 -->
106
+
107
+ 注意:由于在服务端完成对是否首次的校验,首次事件默认会延时 1 小时入库。
108
+
109
+ #### 2.3 可更新事件
110
+
111
+ 您可以通过可更新事件实现特定场景下需要修改事件数据的需求。可更新事件需要指定标识该事件的 ID,并在创建可更新事件对象时传入。AE 后台将根据事件名和事件 ID 来确定需要更新的数据。
112
+
113
+ ```
114
+ // 示例: 上报可被更新的事件,假设事件名为 UPDATABLE_EVENT
115
+ // 上报后事件属性 status 为 3, price 为 100
116
+ TDJSONObject jsonObject;
117
+ jsonObject.SetNumber("status", 3);
118
+ jsonObject.SetNumber("price", 100);
119
+ TDUpdatableEvent *updatableEvent = new TDUpdatableEvent("UPDATABLE_EVENT",jsonObject,"test_event_id");
120
+ ThinkingAnalyticsAPI::Track(updatableEvent);
121
+ delete updatableEvent;
122
+
123
+ // 上报后事件属性 status 被更新为 5, price 不变
124
+ TDJSONObject jsonObject1;
125
+ jsonObject1.SetNumber("status", 5);
126
+ TDUpdatableEvent *updatableEvent1 = new TDUpdatableEvent("UPDATABLE_EVENT",jsonObject1,"test_event_id");
127
+ ThinkingAnalyticsAPI::Track(updatableEvent1);
128
+ delete updatableEvent1;
129
+ ```
130
+
131
+ #### 2.4 可重写事件
132
+
133
+ 可重写事件与可更新事件类似,区别在于可重写事件会用最新的数据完全覆盖历史数据,从效果上看相当于删除前一条数据,并入库最新的数据。AE 后台将根据事件名和事件 ID 来确定需要更新的数据。
134
+
135
+ ```
136
+ // 示例: 上报可被重写的事件,假设事件名为 OVERWRITE_EVENT
137
+ // 上报后事件属性 status 为 3, price 为 100
138
+ TDJSONObject jsonObject;
139
+ jsonObject.SetNumber("status", 3);
140
+ jsonObject.SetNumber("price", 100);
141
+ TDOverWritableEvent *event = new TDOverWritableEvent("OVERWRITE_EVENT",jsonObject,"test_event_id");
142
+ ThinkingAnalyticsAPI::Track(event);
143
+ delete event;
144
+
145
+ // 上报后事件属性 status 被更新为 5, price 属性被删除
146
+ TDJSONObject jsonObject1;
147
+ jsonObject1.SetNumber("status", 5);
148
+ TDOverWritableEvent *event1 = new TDOverWritableEvent("OVERWRITE_EVENT",jsonObject1,"test_event_id");
149
+ ThinkingAnalyticsAPI::Track(event1);
150
+ delete event;
151
+ ```
152
+
153
+ #### 2.5 公共事件属性
154
+
155
+ 公共事件属性指的就是每个事件都会上传的属性。
156
+
157
+ ##### 2.5.1 静态公共事件属性
158
+
159
+ 静态公共事件属性是低频变化且每个事件都会带有的属性,如用户会员等级。通过`setSuperProperties`设置静态公共事件属性之后,SDK将会在事件采集时获取设置的公共事件属性作为事件的属性。
160
+
161
+ ```
162
+ TDJSONObject superProperties;
163
+ superProperties.SetNumber("vip_level",2);
164
+ ThinkingAnalyticsAPI::SetSuperProperty(superProperties);
165
+ ```
166
+
167
+ 静态公共事件属性将会被保存到缓存中,无需每次启动 App 时调用。如果该属性已存在,重新设置的属性将会覆盖原有属性值;如果之前不存在该属性,则会新建属性。除了属性设置,我们也提供其他API来管理静态公共事件属性,满足日常的业务需求。
168
+
169
+ ```
170
+ //清除某个公共事件属性
171
+ TDAnalytics.*unsetSuperProperty*("Channel");
172
+ //清除所有公共事件属性
173
+ ThinkingAnalyticsAPI::ClearSuperProperties();
174
+ //获取所有公共事件属性
175
+ TDJSONObject superJson;
176
+ ThinkingAnalyticsAPI::GetSuperProperties(superJson);
177
+ ```
178
+
179
+ ##### 2.5.2 动态公共事件属性
180
+
181
+ 动态公共事件属性是高频变化且每个事件都会带有的属性,如用户的金币数量。通过 `SetDynamicSuperProperties` 设置动态公共属性类之后,SDK 将会在事件采集时自动获取属性,并添加到触发的事件中。
182
+
183
+ ```
184
+ TDJSONObject GetDynamicSuperProperties(){
185
+ TDJSONObject json;
186
+ json.SetNumber("coin",10);
187
+ return json;
188
+ }
189
+ ThinkingAnalyticsAPI::Init(config);
190
+ ThinkingAnalyticsAPI::SetDynamicSuperProperties(GetDynamicSuperProperties);
191
+ ```
192
+
193
+ #### 2.6 记录事件时长
194
+
195
+ 如果您需要记录某个事件的持续时长,可以调用 `timeEvent` 来开始计时。配置您想要计时的事件名称,当您上传该事件时,将会自动在您的事件属性中加入 `#duration` 这一属性来表示记录的时长,单位为秒。需要注意的是,同一个事件名只能有一个在计时的任务。
196
+
197
+ ```
198
+ //以下示例,完成用户在某个商品页面停留时长的统计
199
+ try {
200
+ //用户进入商品页面,开始计时
201
+ ThinkingAnalyticsAPI::TimeEvent("stay_shop");
202
+ /**do someting
203
+ .......
204
+ **/
205
+ //用户离开商品页面,计时结束,"stay_shop" 这一事件中将会带有表示事件时长的属性#duration
206
+ ThinkingAnalyticsAPI::TimeEvent("stay_shop");
207
+ } catch (JSONException e) {
208
+ e.printStackTrace();
209
+ }
210
+ ```
211
+
212
+ ### 三、用户属性
213
+
214
+ AE 平台目前支持的用户属性设置接口有: `UserSet`、`UserSetOnce`、`UserAdd`、`UserUnset`、`UserDelete`、`UserAppend`.
215
+
216
+ #### 3.1 UserSet
217
+
218
+ 对于一般的用户属性,您可以调用 `UserSset` 来进行设置。使用该接口上传的属性将会覆盖原有的属性值,如果之前不存在该用户属性,则会新建该用户属性,类型与传入属性的类型一致,此处以设置用户名为例:
219
+
220
+ ```
221
+ TDJSONObject userProperties;
222
+ userProperties.SetString("username", "TA");
223
+ ThinkingAnalyticsAPI::UserSet(userProperties);
224
+ //此时userName为TE
225
+ TDJSONObject userProperties1;
226
+ userProperties1.SetString("username", "TE");
227
+ ThinkingAnalyticsAPI::UserSet(userProperties1)
228
+ ```
229
+
230
+ #### 3.2 UserSetOnce
231
+
232
+ 如果您要上传的用户属性只要设置一次,则可以调用 `UserSetOnce` 来进行设置,当该属性之前已经有值的时候,将会忽略这条信息,以设置首次付费时间来为例:
233
+
234
+ ```
235
+ //first_payment_time为2018-01-01 01:23:45.678
236
+ TDJSONObject userProperties;
237
+ userProperties.SetString("first_payment_time","2018-01-01 01:23:45.678");
238
+ ThinkingAnalyticsAPI::UserSetOnce(userProperties);
239
+
240
+ //first_payment_time仍然为2018-01-01 01:23:45.678
241
+ TDJSONObject userProperties1;
242
+ userProperties1.SetString("first_pay_time","2018-12-31 01:23:45.678");
243
+ ThinkingAnalyticsAPI::UserSetOnce(userProperties1);
244
+ ```
245
+
246
+ #### 3.3 UserAdd
247
+
248
+ 当您要上传数值型的属性时,您可以调用 `UserAdd` 来对该属性进行累加操作,如果该属性还未被设置,则会赋值 0 后再进行计算,可传入负值,等同于相减操作。此处以累计付费金额为例:
249
+
250
+ ```
251
+ //此时total_revenue为30
252
+ TDJSONObject userProperties;
253
+ userProperties.SetNumber("total_revenue",30;
254
+ ThinkingAnalyticsAPI::UserAdd(userProperties);
255
+ //此时total_revenue为678
256
+ TDJSONObject userProperties1;
257
+ userProperties1.SetNumber("total_revenue",648);
258
+ ThinkingAnalyticsAPI::UserAdd(userProperties1);
259
+ ```
260
+
261
+ <!-- unsupported block: 34 -->
262
+
263
+ 设置的属性key为字符串,Value 只允许为数值。
264
+
265
+ #### 3.4 UserUnset
266
+
267
+ 如果您需要重置用户的某个属性,可以调用 `UserUnset` 将该用户指定用户属性的值清空,此接口支持传入字符串或者列表类型的参数:
268
+
269
+ ```
270
+ ThinkingAnalyticsAPI::UserUnset("userUnset_key");
271
+ ```
272
+
273
+ <!-- unsupported block: 34 -->
274
+
275
+ 传入值为被清空属性的 Key 值。
276
+
277
+ #### 3.5 UserDelete
278
+
279
+ 如果您要删除某个用户,可以调用 `UserDelete` 将这名用户删除,您将无法再查询该名用户的用户属性,但该用户产生的事件仍然可以被查询到。
280
+
281
+ ```
282
+ ThinkingAnalyticsAPI::UserDelete();
283
+ ```
284
+
285
+ #### 3.6 UserAppend
286
+
287
+ 您可以调用 `UserAppend` 为 `List` 类型的用户属性追加元素:
288
+
289
+ ```
290
+ TDJSONObject userProperties;
291
+ vector<string> listValue;
292
+ listValue.push_back("apple");
293
+ listValue.push_back("ball");
294
+ userProperties.SetList("user_list",listValue);
295
+ ThinkingAnalyticsAPI::UserAppend(userProperties);
296
+ ```
297
+
298
+ #### 3.7 UserUniqAppend
299
+
300
+ 您可以调用 `UserUniqAppend` 对 数组类型的用户属性进行追加操作。调用 `UserUniqAppend` 接口会对追加的用户属性进行去重, `UserAppend` 接口不做去重,用户属性可存在重复。
301
+
302
+ ```
303
+ //此时user_list的属性值为["apple","ball"]
304
+ TDJSONObject userProperties1;
305
+ vector<string> listValue1;
306
+ listValue1.push_back("apple");
307
+ listValue1.push_back("ball");
308
+ userProperties1.SetList("user_list",listValue1);
309
+ ThinkingAnalyticsAPI::UserAppend(userProperties1);
310
+
311
+ //此时user_list的属性值为["apple","apple","ball","cube"]
312
+ TDJSONObject userProperties2;
313
+ vector<string> listValue1;
314
+ listValue2.push_back("apple");
315
+ listValue2.push_back("cube");
316
+ userProperties2.SetList("user_list",listValue2);
317
+ ThinkingAnalyticsAPI::UserAppend(userProperties2);
318
+
319
+ //此时user_list的属性值为["apple","ball","cube"]
320
+ ThinkingAnalyticsAPI::UserUniqAppend(userProperties2);
321
+
322
+ ```
323
+
324
+ ### 四、加密功能
325
+
326
+ 从 v1.3.7 版本开始,SDK 支持使用AES+RSA加密数据。数据加密功能需要客户端和服务端配合完成,具体使用方法请咨询客户成功人员。
327
+
328
+ ```
329
+ TDConfig config;
330
+ config.appid = appid;
331
+ config.server_url = server_url;
332
+ config.EnableEncrypt(1,"publickKey");
333
+ ThinkingAnalyticsAPI::Init(config);
334
+ ```
335
+
336
+ ### 五、其他功能
337
+
338
+ #### 5.1 打印SDK日志
339
+
340
+ 可以通过EnableLog接口,打开SDK日志开关,打开后将会IDE控制台打印上报的数据。
341
+
342
+ ```
343
+ ThinkingAnalyticsAPI::EnableLog(true);
344
+ ```
345
+
346
+ #### 5.2 预置属性说明
347
+
348
+ **属性名**
349
+
350
+ **中文名**
351
+
352
+ **属性类型**
353
+
354
+ **说明**
355
+
356
+ #ip
357
+
358
+ IP 地址
359
+
360
+ 文本
361
+
362
+ 用户的 IP 地址,AE 将以此获取用户的地理位置信息
363
+
364
+ #country
365
+
366
+ 国家
367
+
368
+ 文本
369
+
370
+ 用户所在国家,根据 IP 地址生成
371
+
372
+ #country_code
373
+
374
+ 国家代码
375
+
376
+ 文本
377
+
378
+ 用户所在国家的国家代码(ISO 3166-1 alpha-2,即两位大写英文字母),根据 IP 地址生成
379
+
380
+ #province
381
+
382
+ 省份
383
+
384
+ 文本
385
+
386
+ 用户所在省份,根据 IP 地址生成
387
+
388
+ #city
389
+
390
+ 城市
391
+
392
+ 文本
393
+
394
+ 用户所在城市,根据 IP 地址生成
395
+
396
+ #os
397
+
398
+ 操作系统
399
+
400
+ 文本
401
+
402
+ 如 MacOS,Windows等
403
+
404
+ #device_id
405
+
406
+ 设备 ID
407
+
408
+ 文本
409
+
410
+ 用户的设备 ID
411
+
412
+ #lib
413
+
414
+ SDK 类型
415
+
416
+ 文本
417
+
418
+ 您接入 SDK 的类型,如 Android,iOS 等
419
+
420
+ #lib_version
421
+
422
+ SDK 版本
423
+
424
+ 文本
425
+
426
+ 您接入 SDK 的版本
427
+
428
+ #### 5.3 校准时间
429
+
430
+ SDK 默认会使用本机时间作为事件发生时间,如果用户手动修改设备时间会影响到您的业务分析,此时可以通过校准时间操作保证事件发生时间的准确性。我们提供`时间戳、自动`两种时间校准方式。
431
+
432
+ - 您可以使用从服务端获取的当前时间戳对 SDK 的时间进行校准。此后,所有未指定时间的调用,包括事件数据和用户属性设置操作,都会使用校准后的时间作为发生时间。
433
+ ```
434
+ // 1585633785954 为当前 unix 时间戳,单位为毫秒,对应北京时间 2020-03-31 13:49:45
435
+ ThinkingAnalyticsAPI::CalibrateTime(1585633785954);
436
+ ```
437
+
438
+ - 您也可以设置自动时间校准,之后 SDK 会尝试从 config接口中获取当前时间,并对 SDK 时间进行校准。如果未获取正确的返回结果,后续将使用本地时间上报数据。
439
+ ```
440
+ TDConfig config;
441
+ config.appid = appid;
442
+ config.server_url = server_url;
443
+ config.enableAutoCalibrated = true;
444
+ ThinkingAnalyticsAPI::Init(config);
445
+ ```
446
+
447
+ #### 5.4 立即发送数据
448
+
449
+ 在某些业务场景下,如果您期望数据立即上报到 AE 服务器,可以通过调用`flush`接口完成
450
+
451
+ ```
452
+ ThinkingAnalyticsAPI::Flush();
453
+ ```
454
+
455
+ #### 5.5 获取设备ID
456
+
457
+ 您可以通过调用 `getDeviceId` 来获取设备 ID:
458
+
459
+ ```
460
+ ThinkingAnalyticsAPI::GetDeviceId();
461
+ ```
462
+
463
+ #### 5.6 设置默认时区
464
+
465
+ 默认情况下,SDK 默认会使用接口调用时的本机时间作为事件发生时间上报。您也可以通过设置默认时区接口,指定默认的时区,这样所有的事件都将按照您设置的时区来对齐事件时间:
466
+
467
+ ```
468
+ TDConfig config;
469
+ config.appid = appid;
470
+ config.server_url = server_url;
471
+ config.zoneOffset = 5;
472
+ ThinkingAnalyticsAPI::Init(config);
473
+ ```
474
+
475
+ <!-- unsupported block: 34 -->
476
+
477
+ 注意:用指定时区对齐事件时间,会丢掉设备本机时区信息。如果需要保留设备本机时区信息,目前需要您自己为事件添加相关属性。
@@ -0,0 +1,145 @@
1
+ ---
2
+ code: client_csharp_sdk_installation
3
+ name: "C#"
4
+ wikiToken: Uicgw2qEcizaeMk7k42cWndNnAe
5
+ parentWikiToken: FTcTwinIOi3OiRkK4MPc2Ex7neg
6
+ updateTime: 1760333667000
7
+ sourceUrl: https://docs-v2.thinkingdata.cn/?version=v5.0&lan=zh-CN&code=client_csharp_sdk_installation
8
+ ---
9
+ # C#
10
+
11
+ ::: tip 提示
12
+
13
+ 在接入前, 请先阅读接入前准备。
14
+
15
+ C# SDK 支持在Windows、Mac平台运行。
16
+
17
+ :::
18
+
19
+ **最新版本:** 2.0.1
20
+
21
+ **更新时间:** 2025-10-13
22
+
23
+ **资源下载: **SDK源码 下载
24
+
25
+ ::: warning 注意
26
+
27
+ 当前文档适用于 v2.0.0 及以后的版本,历史版本请参考 C# 接入指南(旧)
28
+
29
+ :::
30
+
31
+ ### 一、集成SDK
32
+
33
+ ### 1.1 下载SDK
34
+
35
+ 下载在 GitHub 获取C# SDK 源码,将`TDAnalyticsSDK`目录下的文件添加至项目中。
36
+
37
+ SDK依赖Newtonsoft.Json框架用作json解析,如您是使用`Visual Studio`,请使用`NuGet`加入`Newtonsoft.Json`库。
38
+
39
+ ### 1.2 添加动态库
40
+
41
+ - 下载dll,然后解压(下载任意一个即可)
42
+ - github链接
43
+ - 官网链接
44
+ - Windows平台,可以找到windowswen文件夹下的dll文件,复制到项目根目录即可。(注意:如果dll和项目已有dll冲突,使用项目已有的即可)
45
+ - Mac平台
46
+ - 第一步:通过homebrew安装sqlite、curl、zlib 、openssl这4个库
47
+ - 第二步:找到macOS文件夹下的dll文件,复制到项目根目录即可
48
+ ### 二、初始化
49
+
50
+ 引入`ThinkingData.Analytics`,使用ThinkingdataAnalytics类初始化 AE 实例。
51
+
52
+ ```
53
+ using ThinkingData.Analytics;
54
+ TDAnalytics.Init(APPID,SERVER_URL)
55
+ ```
56
+
57
+ 参数说明:
58
+
59
+ - `APPID`: 您的项目的 APPID,可通过在 AE 后台项目管理页面获取
60
+ - `SERVER_URL`: 数据上传的 URL
61
+ - 如果您对接的是云服务,填入: https://global-receiver-ta.thinkingdata.cn
62
+ - 如果您使用私有化部署版本,请为数据采集地址绑定域名,并配置 HTTPS 证书:https://数据采集地址绑定域名
63
+ ### 三、常用功能
64
+
65
+ 在使用常用功能之前,建议你先了解用户识别规则;SDK默认会生成随机数作为访客ID,并持久化存储访客ID在本地;用户未登录之前,会以访客ID作为身份识别ID。注意:访客 ID 在用户重新安装 App 以及更换设备时将会变更。
66
+
67
+ #### 3.1 设置账号ID
68
+
69
+ 在用户进行登录时,可调用 `Login` 来设置用户的账号 ID, AE 平台将会以账号 ID 作为身份识别 ID,并且设置的账号 ID 将会在调用 `Logout` 之前一直保留。多次调用 `Login` 将覆盖先前的账号 ID 。
70
+
71
+ ```
72
+ TDAnalytics.`Login`("TA");
73
+ ```
74
+
75
+ `Login` 可以多次调用,每次调用会判断传入的账号 ID 与先前保存的 ID 是否一致,一致则忽略调用,不一致则会覆盖先前的 ID。
76
+
77
+ <!-- unsupported block: 34 -->
78
+
79
+ **该方法不会上传登录事件**
80
+
81
+ #### 3.2 发送事件
82
+
83
+ 您可以调用 `track` 来上传事件,建议您根据先前梳理的埋点文档来设置事件的属性以及发送信息的条件,此处以用户购买某商品作为范例:
84
+
85
+ ```
86
+ Dictionary<string, object> dic = new Dictionary<string, object>();
87
+ dic.Add("channel", "ta");//字符串
88
+ dic.Add("id", 618834);//数字
89
+ dic.Add("isSuccess", true);//布尔
90
+ dic.Add("create_date", Convert.ToDateTime("2019-7-8 20:23:22"));//时间
91
+ List<string> arr = new List<string>();
92
+ arr.Add("value");
93
+ dic.Add("arr", arr);//数组
94
+ TDAnalytics.Track("product_buy", dic);
95
+ ```
96
+
97
+ - 事件的名称是字符串类型,只能以字母开头,可包含数字,字母和下划线 "_",长度最大为 50 个字符。
98
+ - 事件的属性为Dictionary类型
99
+ - Key 为该属性的名称,为字符串类型,规定只能以字母开头,包含数字,字母和下划线 "_",长度最大为 50 个字符,对字母大小写不敏感,AE 会统一转化为小写字母
100
+ - Value 为该属性的值,支持字符串、数字、布尔、时间、对象
101
+ <!-- unsupported block: 34 -->
102
+
103
+ **用户属性的要求与事件属性保持一致**
104
+
105
+ #### 3.3 设置用户属性
106
+
107
+ 对于一般的用户属性,您可以调用 `UserSet`来进行设置,使用该接口上传的属性将会覆盖原有的属性值,如果之前不存在该用户属性,则会新建该用户属性,类型与传入属性的类型一致,此处以设置用户名为例:
108
+
109
+ ```
110
+ TDAnalytics.UserSet(new Dictionary<string, object>(){{"user_name", "TA"}});
111
+ ```
112
+
113
+ ### 四、最佳实践
114
+
115
+ 以下示例代码包含以上所有操作,我们推荐按照如下步骤使用:
116
+
117
+ ```
118
+ using ThinkingData.Analytics;
119
+ //初始化SDK
120
+ TDAnalytics.Init(APPID,SERVER_URL)
121
+ //如果用户已登录,可以设置用户的账号ID作为身份唯一标识
122
+ TDAnalytics.Login("TA");
123
+ //发送事件
124
+ Dictionary<string, Object> dic = new Dictionary<string, object>();
125
+ dic.Add("channel", "ta");//字符串
126
+ dic.Add("id", 618834);//数字
127
+ dic.Add("isSuccess", true);//布尔
128
+ dic.Add("create_date", Convert.ToDateTime("2019-7-8 20:23:22"));//时间
129
+ List<string> arr = new List<string>();
130
+ arr.Add("value");
131
+ dic.Add("arr", arr);//数组
132
+ TDAnalytics.Track("product_buy", dic);
133
+ // 复杂数据对象
134
+ Dictionary<string, object> json = new Dictionary<string, object>();
135
+ json.Add("key", "value");
136
+ dic.Add("object", json);
137
+ // 复杂数据对象组
138
+ List<Dictionary<string, object>> arr1 = new List<Dictionary<string, object>>();
139
+ Dictionary<string, object> json1 = new Dictionary<string, object>();
140
+ json1.Add("key", "value");
141
+ arr1.Add(json1);
142
+ dic.Add("objects", arr1);
143
+ //设置用户属性
144
+ TDAnalytics.UserSet(new Dictionary<string, object>(){{"user_name", "TA"}});
145
+ ```