@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.
- package/README.md +1 -16
- package/README.zh.md +1 -16
- package/dist/{auth-H2376DEF.js → auth-DYC2BGLM.js} +2 -2
- package/dist/{auth-5NSDQFQB.js → auth-GHBMJ5ZR.js} +31 -12
- package/dist/{chunk-CLJF7MQA.js → chunk-2DUEAXV3.js} +1 -1
- package/dist/chunk-5OC7CYCG.js +98 -0
- package/dist/{chunk-SRJIAOBN.js → chunk-6W4QOZAL.js} +10 -0
- package/dist/{chunk-LU7SXK4Q.js → chunk-BJX3GXWC.js} +2 -2
- package/dist/{chunk-WCHI7725.js → chunk-DMMEPCST.js} +47 -6
- package/dist/{chunk-IMBKVXKY.js → chunk-EGEIXA2Z.js} +82 -10
- package/dist/{chunk-AD5V3ZPJ.js → chunk-I5CRVM2S.js} +98 -10
- package/dist/chunk-NOO24N7W.js +11 -0
- package/dist/{chunk-GSJGPNKK.js → chunk-PN3OS34E.js} +1 -1
- package/dist/{chunk-CAQYQA4R.js → chunk-RSHMZ3LG.js} +15 -1
- package/dist/{client-FCMK3XEK.js → client-2UJ63MVQ.js} +3 -3
- package/dist/{config-64G36TJL.js → config-NCUGK6NS.js} +3 -3
- package/dist/index.js +2549 -29
- package/dist/{model-EZ6K7FXI.js → model-SJSOZTRS.js} +5 -7
- package/dist/{raw-VEF3D6UD.js → raw-7NVWSVJP.js} +4 -4
- package/dist/{sync-NRODEVNH.js → sync-GRVO4K3U.js} +120 -23
- package/dist/{te-agent-7U7JLJKU.js → te-agent-KZRIEN4N.js} +468 -47
- package/dist/{te-analysis-A2OSGHQ4.js → te-analysis-VAR4KUOK.js} +145 -28
- package/dist/{te-audience-LI67PPGO.js → te-audience-KMKYI2YJ.js} +23 -14
- package/dist/{te-common-35WVU3C5.js → te-common-WNCZB7R7.js} +5 -4
- package/dist/{te-community-LEAP6PWT.js → te-community-JEEFXPB3.js} +11 -10
- package/dist/{te-dataops-N2LGZBOX.js → te-dataops-GD3XBYCS.js} +33 -32
- package/dist/{te-engage-H7C72Z46.js → te-engage-4XHCTS6I.js} +5 -4
- package/dist/{te-kb-I2OKTBAI.js → te-kb-B62KFP2A.js} +97 -7
- package/dist/{te-meta-HBTIEDRO.js → te-meta-EPZGQN56.js} +10 -9
- package/dist/{te-team-EM5OWRQL.js → te-team-YY24VORI.js} +16 -12
- package/dist/tracking/i18n/resources/cli/en.json +153 -0
- package/dist/tracking/i18n/resources/cli/ja.json +153 -0
- package/dist/tracking/i18n/resources/cli/ko.json +153 -0
- package/dist/tracking/i18n/resources/cli/zh.json +153 -0
- package/package.json +9 -3
- package/skills/ae-agent/SKILL.md +66 -26
- package/skills/ae-analysis/SKILL.md +108 -8
- package/skills/ae-analysis/references/cancel_query.md +39 -0
- package/skills/ae-analysis/references/drilldown_user_events.md +4 -2
- package/skills/ae-analysis/references/drilldown_users.md +4 -2
- package/skills/ae-analysis/references/get_bi_panel_detail.md +35 -0
- package/skills/ae-analysis/references/list_alerts.md +1 -1
- package/skills/ae-analysis/references/list_bi_panels.md +35 -0
- package/skills/ae-analysis/references/list_cluster_members.md +4 -1
- package/skills/ae-analysis/references/list_dashboards.md +1 -1
- package/skills/ae-analysis/references/list_entities.md +1 -1
- package/skills/ae-analysis/references/list_events.md +1 -1
- package/skills/ae-analysis/references/list_metrics.md +1 -1
- package/skills/ae-analysis/references/list_project_mark_times.md +1 -1
- package/skills/ae-analysis/references/list_properties.md +1 -1
- package/skills/ae-analysis/references/list_public_access_links.md +1 -1
- package/skills/ae-analysis/references/list_reports.md +1 -1
- package/skills/ae-analysis/references/list_tag_members.md +4 -1
- package/skills/ae-analysis/references/query_adhoc.md +6 -5
- package/skills/ae-analysis/references/query_bi_panel_data.md +58 -0
- package/skills/ae-analysis/references/query_dashboard_report_data.md +4 -1
- package/skills/ae-analysis/references/query_entity_details.md +5 -2
- package/skills/ae-analysis/references/query_event_details.md +4 -1
- package/skills/ae-analysis/references/query_report_data.md +2 -2
- package/skills/ae-analysis-global/SKILL.md +3 -1
- package/skills/ae-analysis-intent/SKILL.md +132 -0
- package/skills/ae-data-integration-helper/SKILL.md +242 -0
- package/skills/ae-data-integration-helper/references/android_sdk_faq.md +179 -0
- package/skills/ae-data-integration-helper/references/c_sdk_compilation.md +83 -0
- package/skills/ae-data-integration-helper/references/c_sdk_faq.md +416 -0
- package/skills/ae-data-integration-helper/references/cocoscreator_sdk_faq.md +123 -0
- package/skills/ae-data-integration-helper/references/cpp_server_sdk_faq.md +365 -0
- package/skills/ae-data-integration-helper/references/index.md +56 -0
- package/skills/ae-data-integration-helper/references/ios_sdk_faq.md +118 -0
- package/skills/ae-data-integration-helper/references/java_sdk_faq.md +406 -0
- package/skills/ae-data-integration-helper/references/javascript_sdk_faq.md +129 -0
- package/skills/ae-data-integration-helper/references/logbus2_guide.md +309 -0
- package/skills/ae-data-integration-helper/references/logbus2_parser_plugin.md +348 -0
- package/skills/ae-data-integration-helper/references/minigame_sdk_faq.md +115 -0
- package/skills/ae-data-integration-helper/references/miniprogram_sdk_faq.md +118 -0
- package/skills/ae-data-integration-helper/references/python_sdk_faq.md +232 -0
- package/skills/ae-data-integration-helper/references/restful_api_notes.md +74 -0
- package/skills/ae-data-integration-helper/references/sdk_log_guide.md +316 -0
- package/skills/ae-data-integration-helper/references/sdk_usage_notes.md +107 -0
- package/skills/ae-data-integration-helper/references/unity_sdk_faq.md +115 -0
- package/skills/ae-generate-tracking-code/SKILL.md +629 -0
- package/skills/ae-generate-tracking-code/references/autotrack-enum.md +183 -0
- package/skills/ae-generate-tracking-code/references/client-sdk-insert.md +202 -0
- package/skills/ae-generate-tracking-code/references/datax-config.md +43 -0
- package/skills/ae-generate-tracking-code/references/debug-script.md +102 -0
- package/skills/ae-generate-tracking-code/references/logbus-config.md +200 -0
- package/skills/ae-generate-tracking-code/references/modes.md +83 -0
- package/skills/ae-generate-tracking-code/references/restful-call.md +36 -0
- package/skills/ae-generate-tracking-code/references/sdk-index.md +128 -0
- package/skills/ae-generate-tracking-code/references/server-sdk-insert.md +206 -0
- package/skills/ae-generate-tracking-code/references/snippet-delivery.md +394 -0
- package/skills/ae-generate-tracking-code/references/te-api.md +181 -0
- package/skills/ae-generate-tracking-plan/SKILL.md +1083 -0
- package/skills/ae-generate-tracking-plan/references/autotrack-events.md +273 -0
- package/skills/ae-generate-tracking-plan/references/business-dimension-mapping.md +425 -0
- package/skills/ae-generate-tracking-plan/references/te-api.md +100 -0
- package/skills/ae-generate-tracking-plan/references/xlsx-schema.md +152 -0
- package/skills/ae-kb/SKILL.md +38 -5
- 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
- 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
- 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
- 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
- package/tracking-plan-template/RPG/347/261/273/345/237/213/347/202/271/346/250/241/346/235/277_v1.md +72 -0
- package/tracking-plan-template/RPG/347/261/273/345/237/213/347/202/271/346/250/241/346/235/277_v1.xlsx +0 -0
- 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
- 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
- package/tracking-plan-template/Slots/345/237/213/347/202/271/346/250/241/346/235/277_v1.md +80 -0
- package/tracking-plan-template/Slots/345/237/213/347/202/271/346/250/241/346/235/277_v1.xlsx +0 -0
- 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
- 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
- package/tracking-plan-template/TE/345/256/230/346/226/271/346/250/241/346/235/277_dataTrackSample.md +40 -0
- package/tracking-plan-template/TE/345/256/230/346/226/271/346/250/241/346/235/277_dataTrackSample.xlsx +0 -0
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- package/wiki/te-docs/index.md +225 -0
- package/wiki/te-docs/raw/advanced-data-type/first-event-check.md +66 -0
- package/wiki/te-docs/raw/advanced-data-type/updated-event.md +87 -0
- package/wiki/te-docs/raw/advanced-data-type.md +16 -0
- package/wiki/te-docs/raw/data-ingestion-guide/about-gdpr.md +55 -0
- package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/android/android-advanced/automatic-event-tracking.md +431 -0
- package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/android/android-advanced/debugging-and-logging.md +49 -0
- package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/android/android-advanced/multi-instance.md +66 -0
- package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/android/android-advanced/preset-properties.md +466 -0
- package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/android/android-advanced/third-party-integration.md +127 -0
- package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/android/android-advanced.md +513 -0
- package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/android/compliance.md +24 -0
- package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/android/release-notes.md +177 -0
- package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/android.md +228 -0
- package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/c/c-advanced.md +419 -0
- package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/c/release-notes.md +45 -0
- package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/c.md +110 -0
- package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/client-side-sdk-faq.md +52 -0
- package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/cpp/cpp-advanced.md +366 -0
- package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/cpp/release-notes.md +103 -0
- package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/cpp.md +201 -0
- package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/cross-platform/flutter/compliance.md +26 -0
- package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/cross-platform/flutter/flutter-advanced/automatically-track-events.md +117 -0
- package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/cross-platform/flutter/flutter-advanced/debugging-and-logging.md +47 -0
- package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/cross-platform/flutter/flutter-advanced/preset-properties.md +52 -0
- package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/cross-platform/flutter/flutter-advanced.md +267 -0
- package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/cross-platform/flutter/release-notes.md +82 -0
- package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/cross-platform/flutter.md +139 -0
- package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/cross-platform/react-native/compliance.md +26 -0
- package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/cross-platform/react-native/reactnative-advanced/automatically-track-events.md +121 -0
- package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/cross-platform/react-native/reactnative-advanced/debugging-and-logging.md +54 -0
- package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/cross-platform/react-native/reactnative-advanced/preset-properties.md +18 -0
- package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/cross-platform/react-native/reactnative-advanced.md +305 -0
- package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/cross-platform/react-native/release-notes.md +79 -0
- package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/cross-platform/react-native.md +137 -0
- package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/cross-platform/uni-app/release-notes.md +24 -0
- package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/cross-platform/uni-app/uniapp-advanced/automatically-track-events.md +54 -0
- package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/cross-platform/uni-app/uniapp-advanced/debugging-and-logging.md +53 -0
- package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/cross-platform/uni-app/uniapp-advanced/multi-instance.md +42 -0
- package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/cross-platform/uni-app/uniapp-advanced/preset-properties.md +119 -0
- package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/cross-platform/uni-app/uniapp-advanced/support-native.md +81 -0
- package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/cross-platform/uni-app/uniapp-advanced.md +331 -0
- package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/cross-platform/uni-app.md +156 -0
- package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/cross-platform.md +12 -0
- package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/cocos2d-x/cocos2d-x-advanced/automatic-event-tracking.md +29 -0
- package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/cocos2d-x/cocos2d-x-advanced/debugging-and-logging.md +47 -0
- package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/cocos2d-x/cocos2d-x-advanced/multi-instance.md +21 -0
- package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/cocos2d-x/cocos2d-x-advanced/preset-properties.md +249 -0
- package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/cocos2d-x/cocos2d-x-advanced.md +301 -0
- package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/cocos2d-x/compliance.md +24 -0
- package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/cocos2d-x/release-notes.md +51 -0
- package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/cocos2d-x.md +281 -0
- package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/cocoscreator/cocoscreator-advance/automatic-event-tracking.md +70 -0
- package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/cocoscreator/cocoscreator-advance/debugging-and-logging.md +57 -0
- package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/cocoscreator/cocoscreator-advance/native-support.md +104 -0
- package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/cocoscreator/cocoscreator-advance/preset-properties.md +91 -0
- package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/cocoscreator/cocoscreator-advance.md +374 -0
- package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/cocoscreator/compliance.md +35 -0
- package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/cocoscreator/release-notes.md +109 -0
- package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/cocoscreator.md +170 -0
- package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/corona/compliance.md +28 -0
- package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/corona/corona-advanced/automatic-event-tracking.md +29 -0
- package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/corona/corona-advanced/debugging-and-logging.md +58 -0
- package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/corona/corona-advanced/preset-properties.md +43 -0
- package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/corona/corona-advanced.md +204 -0
- package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/corona/release-notes.md +29 -0
- package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/corona.md +269 -0
- package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/unity/compliance.md +24 -0
- package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/unity/release-notes.md +177 -0
- package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/unity/unity-advanced/automatic-event-tracking.md +119 -0
- package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/unity/unity-advanced/debugging-and-logging.md +47 -0
- package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/unity/unity-advanced/multi-instance.md +50 -0
- package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/unity/unity-advanced/native-pluggable.md +43 -0
- package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/unity/unity-advanced/preset-properties.md +212 -0
- package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/unity/unity-advanced/third-party-integration.md +77 -0
- package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/unity/unity-advanced.md +396 -0
- package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/unity.md +176 -0
- package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/unreal/compliance.md +24 -0
- package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/unreal/release-notes.md +81 -0
- package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/unreal/unreal-advanced/automatic-event-tracking.md +79 -0
- package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/unreal/unreal-advanced/debugging-and-logging.md +31 -0
- package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/unreal/unreal-advanced/preset-properties.md +25 -0
- package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/unreal/unreal-advanced/third-party-integrations.md +141 -0
- package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/unreal/unreal-advanced.md +278 -0
- package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine/unreal.md +190 -0
- package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/game-engine.md +14 -0
- package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/h5-and-app-sdk-connection.md +147 -0
- package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/instant-app-and-game.md +24 -0
- package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/ios/compliance.md +24 -0
- package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/ios/ios-advanced/automatic-event-tracking.md +272 -0
- package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/ios/ios-advanced/debugging-and-logging.md +77 -0
- package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/ios/ios-advanced/multi-instance.md +142 -0
- package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/ios/ios-advanced/preset-properties.md +484 -0
- package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/ios/ios-advanced/third-party-integrations.md +132 -0
- package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/ios/ios-advanced.md +682 -0
- package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/ios/release-notes.md +163 -0
- package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/ios.md +304 -0
- package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/javascript/compliance.md +29 -0
- package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/javascript/javascript-advanced/automatic-event-tracking.md +136 -0
- package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/javascript/javascript-advanced/debugging-and-logging.md +48 -0
- package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/javascript/javascript-advanced/multi-instance.md +50 -0
- package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/javascript/javascript-advanced/preset-properties.md +132 -0
- package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/javascript/javascript-advanced.md +462 -0
- package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/javascript/release-notes.md +107 -0
- package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/javascript.md +208 -0
- package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/macos/macos-advanced/debugging-and-logging.md +62 -0
- package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/macos/macos-advanced/preset-properties.md +118 -0
- package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/macos/macos-advanced.md +556 -0
- package/wiki/te-docs/raw/data-ingestion-guide/client-sdk/macos.md +231 -0
- package/wiki/te-docs/raw/data-ingestion-guide/client-sdk.md +25 -0
- package/wiki/te-docs/raw/data-ingestion-guide/data-import-tools/filebeat-logstash-user-guide.md +610 -0
- package/wiki/te-docs/raw/data-ingestion-guide/data-import-tools/logbus2-user-guide.md +1215 -0
- package/wiki/te-docs/raw/data-ingestion-guide/data-import-tools/ta-datax-writer-plugin-user-guide.md +278 -0
- package/wiki/te-docs/raw/data-ingestion-guide/data-import-tools.md +15 -0
- package/wiki/te-docs/raw/data-ingestion-guide/privacy-policy.md +38 -0
- package/wiki/te-docs/raw/data-ingestion-guide/restful-api-user-guide.md +155 -0
- package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/c/c-advanced/debugging-and-logging-FM9Cwz.md +37 -0
- package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/c/c-advanced/debugging-and-logging-RSyfw7.md +41 -0
- package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/c/c-advanced/debugging-and-logging.md +89 -0
- package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/c/c-advanced/preset-properties-OxzWw.md +126 -0
- package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/c/c-advanced/preset-properties-VuE3wr.md +126 -0
- package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/c/c-advanced/preset-properties.md +126 -0
- package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/c/c-advanced-IauKwI.md +175 -0
- package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/c/c-advanced-YAilwk.md +210 -0
- package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/c/c-advanced.md +211 -0
- package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/c/release-notes-PVazwa.md +62 -0
- package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/c/release-notes-TADbwY.md +50 -0
- package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/c/release-notes.md +69 -0
- package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/c-V2W3wv.md +131 -0
- package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/c-Zf9Jwl.md +179 -0
- package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/c.md +189 -0
- package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/erlang/erlang-advanced/debugging-and-logging.md +38 -0
- package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/erlang/erlang-advanced/preset-properties.md +126 -0
- package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/erlang/erlang-advanced.md +113 -0
- package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/erlang/release-notes.md +34 -0
- package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/erlang.md +155 -0
- package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/golang/golang-advanced/debugging-and-logging.md +42 -0
- package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/golang/golang-advanced/preset-properties.md +126 -0
- package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/golang/golang-advanced.md +157 -0
- package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/golang/release-notes.md +72 -0
- package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/golang.md +148 -0
- package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/java/java-advanced/debugging-and-logging.md +49 -0
- package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/java/java-advanced/preset-properties.md +126 -0
- package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/java/java-advanced.md +223 -0
- package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/java/release-notes.md +88 -0
- package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/java.md +174 -0
- package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/lua/lua-advanced/debugging-and-logging.md +46 -0
- package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/lua/lua-advanced/preset-properties.md +126 -0
- package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/lua/lua-advanced.md +182 -0
- package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/lua/release-notes.md +61 -0
- package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/lua.md +121 -0
- package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/nodejs/nodejs-advanced/debugging-and-logging.md +55 -0
- package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/nodejs/nodejs-advanced/preset-properties.md +126 -0
- package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/nodejs/nodejs-advanced.md +225 -0
- package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/nodejs/release-notes.md +45 -0
- package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/nodejs.md +141 -0
- package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/php/php-advanced/debugging-and-logging.md +41 -0
- package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/php/php-advanced/preset-properties.md +126 -0
- package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/php/php-advanced.md +216 -0
- package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/php/release-notes.md +45 -0
- package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/php.md +173 -0
- package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/python/python-advanced/debugging-and-logging.md +40 -0
- package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/python/python-advanced/preset-properties.md +126 -0
- package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/python/python-advanced.md +206 -0
- package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/python/release-notes.md +51 -0
- package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/python.md +116 -0
- package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/ruby/release-notes.md +44 -0
- package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/ruby/ruby-advanced/debugging-and-logging.md +47 -0
- package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/ruby/ruby-advanced/preset-properties.md +126 -0
- package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/ruby/ruby-advanced.md +189 -0
- package/wiki/te-docs/raw/data-ingestion-guide/server-sdk/ruby.md +142 -0
- package/wiki/te-docs/raw/data-ingestion-guide/server-sdk.md +22 -0
- package/wiki/te-docs/raw/data-ingestion-guide/thinkingdata-privacy-policy.md +37 -0
- package/wiki/te-docs/raw/data-ingestion-guide.md +48 -0
- package/wiki/te-docs/raw/preparations-before-data-ingestion/data-rules.md +396 -0
- package/wiki/te-docs/raw/preparations-before-data-ingestion/preset-properties-and-system-fields.md +957 -0
- package/wiki/te-docs/raw/preparations-before-data-ingestion/user-identification-rules.md +723 -0
- package/wiki/te-docs/raw/preparations-before-data-ingestion.md +203 -0
- 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
- 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
- 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
- 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
- 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
- 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
- package/wiki/te-docs/raw//345/256/242/346/210/267/347/253/257-sdk/openharmony.md +172 -0
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- package/wiki/te-docs/schema.md +16 -0
- package/wiki/te-docs/synthesis/batch-ingest-comparison.md +324 -0
- package/wiki/te-docs/synthesis/js-sdk-cheatsheet.md +538 -0
- package/wiki/te-docs/synthesis/restful-api-reference.md +363 -0
- package/wiki/te-docs/synthesis/sdk-selection.md +372 -0
- package/wiki/te-docs/synthesis/server-sdk-overview.md +449 -0
- package/dist/chunk-KAEZTSXN.js +0 -99
- package/dist/chunk-OJDNO5QY.js +0 -63
|
@@ -0,0 +1,281 @@
|
|
|
1
|
+
---
|
|
2
|
+
code: cocos2d-x_sdk_installation
|
|
3
|
+
name: "Cocos2d-x"
|
|
4
|
+
wikiToken: D4l8wlZzuifeHUkWUXbcnUuYnM6
|
|
5
|
+
parentWikiToken: FgrswqlHEiE45HkQve4cU0NFnbd
|
|
6
|
+
updateTime: 1774251978000
|
|
7
|
+
sourceUrl: https://docs-v2.thinkingdata.cn/?version=v6.0&lan=en-US&code=cocos2d-x_sdk_installation
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
::: tip
|
|
11
|
+
Before you begin, please read [<text color="purple" underline="true">Preparation before Data Ingestion</text>](https://thinkingdata.feishu.cn/wiki/OhD8we9iai6Xk5kM1QNc8ITRnQe)
|
|
12
|
+
Supports platforms : Android, iOS, Windows, MacOS . and the size is about 6.8 M
|
|
13
|
+
:::
|
|
14
|
+
**Latest version: **v2.0.4
|
|
15
|
+
**Update time:** 02/04, 2025
|
|
16
|
+
**Resource download: **[SDK](https%3A%2F%2Fdownload.thinkingdata.cn%2Fclient%2FCocos2d-x%2Fta_cocos2dx_sdk_v2.0.4.zip), [Source Code](https%3A%2F%2Fgithub.com%2FThinkingDataAnalytics%2Fcocos2dx-sdk%2Ftags)
|
|
17
|
+
::: warning Notice
|
|
18
|
+
The current documentation applies to v2.0.0 and later versions. For historical versions, please refer to the [Data Ingestion Guide - Cocos2d-x (V1)](https%3A%2F%2Fdocs.thinkingdata.cn%2Fta-manual%2Fv4.1%2Fen%2Finstallation%2Finstallation_menu%2Fclient_sdk%2Fgame_engine_sdk_installation%2Fcocos2d-x_sdk_installation%2Fcocos2d-x_sdk_installation.html), [SDK Download (v1.3.5)](https%3A%2F%2Fdownload.thinkingdata.cn%2Fclient%2FCocos2d-x%2Fta_cocos2dx_sdk_v1.3.5.zip).
|
|
19
|
+
:::
|
|
20
|
+
## **1. ****SDK**** Integration**
|
|
21
|
+
1. Download and unzip the [Cocos2d-x SDK](https%3A%2F%2Fdownload.thinkingdata.cn%2Fclient%2Frelease%2Fta_cocos2dx_sdk.zip) Source Code, Add `ThinkingAnalytics` files into your project `Classes` folder
|
|
22
|
+
2. Add the following configuration to `CMakeLists.txt`
|
|
23
|
+
```cpp
|
|
24
|
+
list(APPEND GAME_SOURCE
|
|
25
|
+
Classes/ThinkingAnalytics/Common/TDJSONObject.cpp
|
|
26
|
+
)
|
|
27
|
+
list(APPEND GAME_HEADER
|
|
28
|
+
Classes/ThinkingAnalytics/Common/TDJSONObject.h
|
|
29
|
+
Classes/ThinkingAnalytics/Common/TDAnalytics.h
|
|
30
|
+
)
|
|
31
|
+
if(ANDROID)
|
|
32
|
+
list(APPEND GAME_SOURCE
|
|
33
|
+
Classes/ThinkingAnalytics/Android/TDAnalytics.cpp
|
|
34
|
+
)
|
|
35
|
+
elseif(WINDOWS)
|
|
36
|
+
list(APPEND GAME_HEADER
|
|
37
|
+
Classes/ThinkingAnalytics/Other/ThinkingSDKObject.h
|
|
38
|
+
)
|
|
39
|
+
list(APPEND GAME_SOURCE
|
|
40
|
+
Classes/ThinkingAnalytics/Other/TDAnalytics.cpp
|
|
41
|
+
)
|
|
42
|
+
elseif(MACOSX)
|
|
43
|
+
list(APPEND GAME_HEADER
|
|
44
|
+
Classes/ThinkingAnalytics/Other/ThinkingSDKObject.h
|
|
45
|
+
)
|
|
46
|
+
list(APPEND GAME_SOURCE
|
|
47
|
+
Classes/ThinkingAnalytics/Other/TDAnalytics.cpp
|
|
48
|
+
)
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
3. Configuration for Android
|
|
52
|
+
- Add the `libs` folder to your project directory in `proj.android`, and add **TDAnalytics.aar**、**TDCore.aar**、**TDThirdparty.aar** into the `libs` folder
|
|
53
|
+
- Add the following configuration to `build.gradle` in your project directory in `proj.android`
|
|
54
|
+
```cpp
|
|
55
|
+
dependencies {
|
|
56
|
+
implementation fileTree(dir: 'libs', include: ['*.jar','*.aar'])
|
|
57
|
+
}
|
|
58
|
+
```
|
|
59
|
+
|
|
60
|
+
<image token="CDPnbOv4moAvFmxBZWncuUM3nxe" width="1544" height="860" align="center"/>
|
|
61
|
+
|
|
62
|
+
4. Configuration for iOS
|
|
63
|
+
Compile the iOS project using the ios.toolchain.cmake tool.
|
|
64
|
+
- Add iOS-related configurations to CMakeLists.txt
|
|
65
|
+
```typescript
|
|
66
|
+
list(APPEND GAME_SOURCE
|
|
67
|
+
Classes/ThinkingAnalytics/Common/TDJSONObject.cpp
|
|
68
|
+
)
|
|
69
|
+
list(APPEND GAME_HEADER
|
|
70
|
+
Classes/ThinkingAnalytics/Common/TDJSONObject.h
|
|
71
|
+
Classes/ThinkingAnalytics/Common/TDAnalytics.h
|
|
72
|
+
)
|
|
73
|
+
if(ANDROID)
|
|
74
|
+
list(APPEND GAME_SOURCE
|
|
75
|
+
Classes/ThinkingAnalytics/Android/TDAnalytics.cpp
|
|
76
|
+
)
|
|
77
|
+
elseif(WINDOWS)
|
|
78
|
+
list(APPEND GAME_HEADER
|
|
79
|
+
Classes/ThinkingAnalytics/Other/ThinkingSDKObject.h
|
|
80
|
+
)
|
|
81
|
+
list(APPEND GAME_SOURCE
|
|
82
|
+
Classes/ThinkingAnalytics/Other/TDAnalytics.cpp
|
|
83
|
+
)
|
|
84
|
+
elseif(IOS)
|
|
85
|
+
//iOS configuration
|
|
86
|
+
list(APPEND GAME_HEADER
|
|
87
|
+
Classes/ThinkingAnalytics/iOS/TDAnalyticsCocosAPI.h
|
|
88
|
+
)
|
|
89
|
+
list(APPEND GAME_SOURCE
|
|
90
|
+
Classes/ThinkingAnalytics/iOS/TDAnalytics.mm
|
|
91
|
+
Classes/ThinkingAnalytics/iOS/TDAnalyticsCocosAPI.m
|
|
92
|
+
)
|
|
93
|
+
elseif(MACOSX)
|
|
94
|
+
list(APPEND GAME_HEADER
|
|
95
|
+
Classes/ThinkingAnalytics/Other/ThinkingSDKObject.h
|
|
96
|
+
)
|
|
97
|
+
list(APPEND GAME_SOURCE
|
|
98
|
+
Classes/ThinkingAnalytics/Other/TDAnalytics.cpp
|
|
99
|
+
)
|
|
100
|
+
|
|
101
|
+
if(IOS)
|
|
102
|
+
//iOS configuration
|
|
103
|
+
set(CMAKE_EXE_LINKER_FLAGS -ObjC)
|
|
104
|
+
endif()
|
|
105
|
+
```
|
|
106
|
+
|
|
107
|
+
- Open the iOS project in Xcode, and drag and drop the `ThinkingSDK.framework` and `TAThirdParty.framework` files from the iOS folder under ThinkingAnalytics into the Classes/ThinkingAnalytics/iOS directory of your Xcode project, as shown in the image below.
|
|
108
|
+
<image token="XloUbOXwwopBzvxm8BxcORponmb" width="1280" height="605" align="center"/>
|
|
109
|
+
|
|
110
|
+
- Configuration complete. If your version is lower than 2.0.2, you need to manually modify the header file of Classes/ThinkingAnalytics/iOS/TDAnalyticsCocosAPI.m to include it.
|
|
111
|
+
```typescript
|
|
112
|
+
#import "ThinkingAnalyticsSDK.h"
|
|
113
|
+
//Change to the following
|
|
114
|
+
#import <ThinkingSDK/ThinkingSDK.h>
|
|
115
|
+
```
|
|
116
|
+
|
|
117
|
+
Open the Xcode project in proj.ios_mac
|
|
118
|
+
- Open the iOS project in Xcode, and drag and drop the Common and iOS folders from the ThinkingAnalytics folder into the Classes directory of your Xcode project, as shown in the image below.
|
|
119
|
+
<image token="QgHubSgALogac5xRUnNcsIhqnQf" width="1280" height="612" align="center"/>
|
|
120
|
+
|
|
121
|
+
- Add -ObjC in Build Settings -> Other Linker Flags
|
|
122
|
+
<image token="W0pVbOS17ocss5xbwZTcdL0nnbg" width="1075" height="368" align="center"/>
|
|
123
|
+
|
|
124
|
+
- Add in Build Setting - Framework Search Paths "$(SRCROOT)/../Classes/ThinkingAnalytics/iOS"
|
|
125
|
+
<image token="Sy9lbem73onzWLxDsg2cQoM2npd" width="1280" height="901" align="center"/>
|
|
126
|
+
|
|
127
|
+
- Build Phases - Link Binary With Libraries
|
|
128
|
+
WebKit.framework, GameController.framework, MediaPlayer.framework
|
|
129
|
+
<image token="M3g7bhvBvo10tIxBoFUcs5tQnCg" width="1280" height="901" align="center"/>
|
|
130
|
+
|
|
131
|
+
- Configuration complete. If your version is lower than 2.0.2, you need to manually modify the header file of Classes/ThinkingAnalytics/iOS/TDAnalyticsCocosAPI.m to include it.
|
|
132
|
+
```typescript
|
|
133
|
+
#import "ThinkingAnalyticsSDK.h"
|
|
134
|
+
//Change to the following
|
|
135
|
+
#import <ThinkingSDK/ThinkingSDK.h>
|
|
136
|
+
```
|
|
137
|
+
|
|
138
|
+
## **2. Initialization**
|
|
139
|
+
```cpp
|
|
140
|
+
#include "./ThinkingAnalytics/Common/TDAnalytics.h"
|
|
141
|
+
using namespace thinkingdata::analytics;
|
|
142
|
+
//Initialize SDK in the main thread
|
|
143
|
+
//Method 1
|
|
144
|
+
TDAnalytics::init(TE_APP_ID, TE_SERVER_URL);
|
|
145
|
+
//Method 2
|
|
146
|
+
TDConfig config(TE_APP_ID, TE_SERVER_URL);
|
|
147
|
+
TDAnalytics::init(config);
|
|
148
|
+
```
|
|
149
|
+
|
|
150
|
+
Instruction on parameters:
|
|
151
|
+
- `APPID`: The APPID of your project, which can be found on the project management page of TE.
|
|
152
|
+
- `SERVER_URL`:
|
|
153
|
+
- If you are using a SaaS version, please check the receiver URL on this page
|
|
154
|
+
- If you use the private deployment version, you can customize the data tracking URL .
|
|
155
|
+
<quote-container>
|
|
156
|
+
Since Android 9.0+ restricts HTTP requests by default, please use HTTPS protocol only.
|
|
157
|
+
</quote-container>
|
|
158
|
+
|
|
159
|
+
## **3. Common Features**
|
|
160
|
+
We suggested that you read [User Identification Rules](https://thinkingdata.feishu.cn/wiki/Pov9wECdsi2QQsk4NN9cEPsvnyc) before using common features; SDK would generate a random number that would be used as the distinct ID, and save the ID locally. Before the user logs in, the distinct ID would be used as the identification ID. Note: The distinct ID would change after the user reinstalled the App or used the APP with a new device.
|
|
161
|
+
### **3.1 Login**
|
|
162
|
+
When the users log in , `Login` could be called to set the account ID of the user. TE would use the account ID as the identification ID, and this ID would be saved before `Logout` is called. The previous account ID would be replaced if `Login` has been called multiple times.
|
|
163
|
+
```cpp
|
|
164
|
+
// The login unique identifier of the user, corresponding to the #account_id in data tracking. #Account_id now is TE
|
|
165
|
+
TDAnalytics::login("TE");
|
|
166
|
+
```
|
|
167
|
+
|
|
168
|
+
<quote-container>
|
|
169
|
+
**Login events wouldn't be uploaded in this method.**
|
|
170
|
+
</quote-container>
|
|
171
|
+
|
|
172
|
+
### 3.2 **Super Properties**
|
|
173
|
+
Super Properties refer to properties that each event might have. You can call `setSuperProperties` to set Super Properties. It is recommended that you set Super Properties first before sending data. Some important properties (e.g., the membership class of users, source channels, etc.) should be set in each event. At this time, you can set these properties as Super Properties.
|
|
174
|
+
```cpp
|
|
175
|
+
TDJSONObject superProperties;
|
|
176
|
+
superProperties.setString("channel", "TE");//string
|
|
177
|
+
superProperties.setNumber("age",1);//number
|
|
178
|
+
superProperties.setBool("isSuccess",true);//boolean
|
|
179
|
+
superProperties.setDateTime("birthday","2020-01-02 10:52:52.290");//time
|
|
180
|
+
|
|
181
|
+
TDJSONObject object;
|
|
182
|
+
object.setString("key", "value");
|
|
183
|
+
superProperties.setJsonObject("object", object);// object
|
|
184
|
+
|
|
185
|
+
TDJSONObject object1;
|
|
186
|
+
object1.setString("key", "value");
|
|
187
|
+
vector<TDJSONObject> arr;
|
|
188
|
+
arr.push_back(object1);
|
|
189
|
+
superProperties.setList("object_arr", arr); // array object
|
|
190
|
+
|
|
191
|
+
vector<string> arr1;
|
|
192
|
+
arr1.push_back("value");
|
|
193
|
+
superProperties.setList("arr",arr1);//array
|
|
194
|
+
|
|
195
|
+
TDAnalytics::setSuperProperties(superProperties);
|
|
196
|
+
```
|
|
197
|
+
|
|
198
|
+
Super Properties would be saved in local storage, and will not need to be called every time the App is opened. If the Super Properties set previously are uploaded after calling `setSuperProperties`, previous properties would be replaced.
|
|
199
|
+
- The event property is of type `TDJSONObject`.
|
|
200
|
+
- Key is the name of the property and refers to the string type. It must start with a character, and contain numbers, characters (insensitive to case, and upper cases would be transformed into lower cases by TE) and underscores "_", with a maximum length of 50 characters.
|
|
201
|
+
- Value, the value of the property, supports string, numbers, Boolean, time, object, array object, and array
|
|
202
|
+
<quote-container>
|
|
203
|
+
**The requirements for event properties and user properties are the same with that for Super Properties**
|
|
204
|
+
</quote-container>
|
|
205
|
+
|
|
206
|
+
### **3.3 Automatically Track Events**
|
|
207
|
+
The following code is an example of tracking installation, open_app and close_app events. To get more information about the automatic tracking of SDK, please refer to the [Detailed introduction of automatic tracking function](https://thinkingdata.feishu.cn/wiki/GC8pwAeGLiW2vlkR44WcNoJfnId)
|
|
208
|
+
```cpp
|
|
209
|
+
TDAnalytics::enableAutoTrack();
|
|
210
|
+
```
|
|
211
|
+
|
|
212
|
+
### **3.4 Sending Events**
|
|
213
|
+
You can call `Track` to upload events. It is suggested that you set event properties based on the data tracking plan drafted previously. Here is an example of a user buying an item:
|
|
214
|
+
```cpp
|
|
215
|
+
TDJSONObject eventProperties;
|
|
216
|
+
eventProperties.setString("product_name", "product name");
|
|
217
|
+
TDAnalytics::track("product_buy",eventProperties);
|
|
218
|
+
```
|
|
219
|
+
|
|
220
|
+
The event name is string type. It could only start with a character and could contain figures, characters, and an underline "_", with a maximum length of 50 characters.
|
|
221
|
+
### **3.5 User Properties**
|
|
222
|
+
You can set general user properties by calling `userSet` API. The original properties would be replaced by the properties uploaded via this API. The data type of newly-created user properties must be the same as the uploaded properties. User name setting is taken as the example here:
|
|
223
|
+
```cpp
|
|
224
|
+
//the username now is TA
|
|
225
|
+
TDJSONObject properties;
|
|
226
|
+
properties.setString("username", "TA");
|
|
227
|
+
TDAnalytics::userSet(properties);
|
|
228
|
+
//the username now is TE
|
|
229
|
+
TDJSONObject newProperties;
|
|
230
|
+
newProperties.setString("username", "TE");
|
|
231
|
+
TDAnalytics::userSet(newProperties);
|
|
232
|
+
```
|
|
233
|
+
|
|
234
|
+
## **4. Best Practice**
|
|
235
|
+
The following sample code covers all the above-mentioned operations. It is recommended that the SDK be used in the following steps:
|
|
236
|
+
```cpp
|
|
237
|
+
#include "./ThinkingAnalytics/Common/TDAnalytics.h"
|
|
238
|
+
using namespace thinkingdata::analytics;
|
|
239
|
+
if (privacy policy is authorized) {
|
|
240
|
+
TDAnalytics::init(TE_APP_ID, TE_SERVER_URL);
|
|
241
|
+
//if the user has logged in, the account ID of the user could be set as the unique identifier
|
|
242
|
+
TDAnalytics::login("TE");
|
|
243
|
+
|
|
244
|
+
|
|
245
|
+
//After setting super properties, each event would have super properties
|
|
246
|
+
TDJSONObject superProperties;
|
|
247
|
+
superProperties.setString("channel", "TE");//string
|
|
248
|
+
superProperties.setNumber("age",1);//number
|
|
249
|
+
superProperties.setBool("isSuccess",true);//boolean
|
|
250
|
+
superProperties.setDateTime("birthday","2020-01-02 10:52:52.290");//time
|
|
251
|
+
|
|
252
|
+
TDJSONObject object;
|
|
253
|
+
object.setString("key", "value");
|
|
254
|
+
superProperties.setJsonObject("object", object);// object
|
|
255
|
+
|
|
256
|
+
TDJSONObject object1;
|
|
257
|
+
object1.setString("key", "value");
|
|
258
|
+
vector<TDJSONObject> arr;
|
|
259
|
+
arr.push_back(object1);
|
|
260
|
+
superProperties.setList("object_arr", arr); // array object
|
|
261
|
+
|
|
262
|
+
vector<string> arr1;
|
|
263
|
+
arr1.push_back("value");
|
|
264
|
+
superProperties.setList("arr",arr1);//array
|
|
265
|
+
//set super properties
|
|
266
|
+
TDAnalytics::setSuperProperties(superProperties);
|
|
267
|
+
|
|
268
|
+
//Enable auto-tracking
|
|
269
|
+
TDAnalytics::enableAutoTrack();
|
|
270
|
+
|
|
271
|
+
//upload events
|
|
272
|
+
TDJSONObject eventProperties;
|
|
273
|
+
eventProperties.setString("product_name", "product name");
|
|
274
|
+
TDAnalytics::track("product_buy",eventProperties);
|
|
275
|
+
|
|
276
|
+
//Set user properties
|
|
277
|
+
TDJSONObject userProperties;
|
|
278
|
+
userProperties.setString("username", "TE");
|
|
279
|
+
TDAnalytics::userSet(userProperties);
|
|
280
|
+
}
|
|
281
|
+
```
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
---
|
|
2
|
+
code: cocoscreator_sdk_autotrack
|
|
3
|
+
name: "Automatic Event Tracking"
|
|
4
|
+
wikiToken: KS9vw7Yq6i5BcwkLJhdczOskn4e
|
|
5
|
+
parentWikiToken: DHMrw6JkgiGcwxkzyPKc55VJn0c
|
|
6
|
+
updateTime: 1774249140000
|
|
7
|
+
sourceUrl: https://docs-v2.thinkingdata.cn/?version=v6.0&lan=en-US&code=cocoscreator_sdk_autotrack
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
## **1. Introduction **
|
|
11
|
+
CocosCreator SDK support auto-tracking Mini Game Event:
|
|
12
|
+
1. Open Mini Game, including activiting Mini Game and resuming Mini Game from the background
|
|
13
|
+
2. Close Mini Game: including disabling the Mini Game
|
|
14
|
+
## **2. Enable Auto-Tracking**
|
|
15
|
+
Configing before SDK initialization to enable auto-tracking:
|
|
16
|
+
```javascript
|
|
17
|
+
var config = {
|
|
18
|
+
appid: "YOUR_APPID",
|
|
19
|
+
server_url: "YOUR_SERVER_URL",
|
|
20
|
+
autoTrack: {
|
|
21
|
+
appShow: true,
|
|
22
|
+
appHide: true,
|
|
23
|
+
properties: {
|
|
24
|
+
callback: (eventType:any) =>{
|
|
25
|
+
if (eventType === 'appShow')
|
|
26
|
+
{
|
|
27
|
+
return { appShowKey: 'appShowValue' };
|
|
28
|
+
}
|
|
29
|
+
else if (eventType === 'appHide')
|
|
30
|
+
{
|
|
31
|
+
return { appHideKey: 'appHideValue' };
|
|
32
|
+
}
|
|
33
|
+
else {
|
|
34
|
+
return {};
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
};
|
|
39
|
+
TDAnalytics.init(config);
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
- appShow: enable auto-tracking open Mini Game
|
|
43
|
+
- appHide: enable auto-tracking close Mini Game
|
|
44
|
+
- properties: auto-tracking events properties
|
|
45
|
+
- callback: auto-tracking events callback
|
|
46
|
+
If you need the first automatically collected event to include the account, visitor, and static public attributes, you can pass in the following configuration during initialization:
|
|
47
|
+
```javascript
|
|
48
|
+
TDAnalytics.init(config, () => {
|
|
49
|
+
TDAnalytics.login("TA")
|
|
50
|
+
TDAnalytics.setDistinctId("DIS_TA")
|
|
51
|
+
TDAnalytics.setSuperProperties({
|
|
52
|
+
key: "value"
|
|
53
|
+
});
|
|
54
|
+
});
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
## **3. Instructions**
|
|
58
|
+
### **3.1 Open Mini Game**
|
|
59
|
+
Mini Game started event would be triggered when the user enables the Mini Game or resumes the Mini Game from the background. A detailed description of the start event is as follows:
|
|
60
|
+
- Event Name:ta_mg_show
|
|
61
|
+
- Auto-tracking Event Properties:
|
|
62
|
+
- `#scene`, game scene name
|
|
63
|
+
### **2.2 Close Mini Game**
|
|
64
|
+
Mini Game end event would be triggered when the user disables the Mini Game or moves the Mini Game to the background. Detailed description of the end event is as follows:
|
|
65
|
+
- Event Name:ta_mg_hide
|
|
66
|
+
- Auto-tracking Event Properties:
|
|
67
|
+
- `#scene`, game scene name
|
|
68
|
+
- `#duration`, numeric type, indicating the duration of each Mini Game (unit: second)
|
|
69
|
+
|
|
70
|
+
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
---
|
|
2
|
+
code: cocoscreator_sdk_debug
|
|
3
|
+
name: "Debugging and Logging"
|
|
4
|
+
wikiToken: QxtFwT2LAi8sJdk2mUEc9mo7nCb
|
|
5
|
+
parentWikiToken: DHMrw6JkgiGcwxkzyPKc55VJn0c
|
|
6
|
+
updateTime: 1774251983000
|
|
7
|
+
sourceUrl: https://docs-v2.thinkingdata.cn/?version=v6.0&lan=en-US&code=cocoscreator_sdk_debug
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
Debugging and Logging
|
|
11
|
+
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.
|
|
12
|
+
## **1. Printing Log**
|
|
13
|
+
```java
|
|
14
|
+
var config = {
|
|
15
|
+
appId: "YOUR_APPID",
|
|
16
|
+
serverUrl: "YOUR_SERVER_URL",
|
|
17
|
+
enableLog:true//enable printing logs, default is false
|
|
18
|
+
};
|
|
19
|
+
TDAnalytics.init(config);
|
|
20
|
+
```
|
|
21
|
+
|
|
22
|
+
<quote-container>
|
|
23
|
+
After opening the log, you can check data tracking of SDK by filtering logs related to ThinkingAnalytics in IDE.
|
|
24
|
+
</quote-container>
|
|
25
|
+
|
|
26
|
+
## **2. Debugging**
|
|
27
|
+
You need to follow the following two steps to enable the Debug mode:
|
|
28
|
+
1. Enable the debug mode at the client side
|
|
29
|
+
The sample code for enabling the Debug mode on the client side is as follows:
|
|
30
|
+
```java
|
|
31
|
+
/*
|
|
32
|
+
Set the operation mode as the Debug mode
|
|
33
|
+
none 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
|
|
34
|
+
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
|
|
35
|
+
debugOnly mode: data would be verified without being stored; it is not recommended to use the DebugOnly mode in an online environment
|
|
36
|
+
*/
|
|
37
|
+
var config = {
|
|
38
|
+
appId: "YOUR_APPID",
|
|
39
|
+
serverUrl: "YOUR_SERVER_URL",
|
|
40
|
+
debugMode: "debug" // set debug mode
|
|
41
|
+
};
|
|
42
|
+
// initialize SDK
|
|
43
|
+
TDAnalytics.init(config);
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
2. Add Device
|
|
47
|
+
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.
|
|
48
|
+
<image token="BEWEbHQVVogmtuxJFJTcYbCgnOd" width="2782" height="1284" align="left"/>
|
|
49
|
+
|
|
50
|
+
|
|
51
|
+
Device ID could be obtained by the following three means:
|
|
52
|
+
- #Device_id property in the event data of TE
|
|
53
|
+
- Client-side log: DeviceID would be printed as log after SDK is initialized
|
|
54
|
+
- Call API:[Device ID](https://thinkingdata.feishu.cn/wiki/DHMrw6JkgiGcwxkzyPKc55VJn0c)
|
|
55
|
+
<quote-container>
|
|
56
|
+
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.
|
|
57
|
+
</quote-container>
|
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
---
|
|
2
|
+
code: cocoscreator_sdk_native_support
|
|
3
|
+
name: "Native Support"
|
|
4
|
+
wikiToken: XykzwwmelizphXkdA8Yc98pYnUe
|
|
5
|
+
parentWikiToken: DHMrw6JkgiGcwxkzyPKc55VJn0c
|
|
6
|
+
updateTime: 1774249145000
|
|
7
|
+
sourceUrl: https://docs-v2.thinkingdata.cn/?version=v6.0&lan=en-US&code=cocoscreator_sdk_native_support
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
## **1. ****iOS**** Native Support**
|
|
11
|
+
Building the iOS project for the first time, it will create native project file to ./build/ios/ and ./native/engine/ios/, and then you can start configuring the iOS project.
|
|
12
|
+
### **1.1 Manual Configuration**
|
|
13
|
+
- Add iOS project files
|
|
14
|
+
- `CocosCreatorProxyApi.h`
|
|
15
|
+
- `CocosCreatorProxyApi.mm`
|
|
16
|
+
- `ThinkingSDK.framework`
|
|
17
|
+
- `ThinkingDataCore.framework`
|
|
18
|
+
- Build Phases
|
|
19
|
+
- Add `ThinkingSDK.framework` to `Link Binary With Libraries`
|
|
20
|
+
- Build Settings
|
|
21
|
+
- Add `ThinkingSDK.framework` path, e.g. `"$(SRCROOT)/../Classes"`, to `Framework Search Paths`
|
|
22
|
+
- Add `-ObjC` to `Other Linker Flags`
|
|
23
|
+
### **1.2 CMakeList Configuration**
|
|
24
|
+
<quote-container>
|
|
25
|
+
1. `CMakeList` file path is `./native/engine/ios/CMakeLists.txt`
|
|
26
|
+
2. The `CMakeList` file will be created after the iOS project is built for the first time, and it will take effect when it is built again after configuration
|
|
27
|
+
3. Copy iOS files to project, e.g. `./native/engine/common/Classes/ThinkingAnalytics/ios/`, and config `CMakeList`
|
|
28
|
+
</quote-container>
|
|
29
|
+
|
|
30
|
+
- Add iOS project files
|
|
31
|
+
```c
|
|
32
|
+
# find the following code
|
|
33
|
+
set(PROJ_COMMON_SOURCES
|
|
34
|
+
${CMAKE_CURRENT_LIST_DIR}/../common/Classes/Game.h
|
|
35
|
+
${CMAKE_CURRENT_LIST_DIR}/../common/Classes/Game.cpp
|
|
36
|
+
# add the following code
|
|
37
|
+
${CMAKE_CURRENT_LIST_DIR}/../common/Classes/ThinkingAnalytics/ios/CocosCreatorProxyApi.h
|
|
38
|
+
${CMAKE_CURRENT_LIST_DIR}/../common/Classes/ThinkingAnalytics/ios/CocosCreatorProxyApi.mm
|
|
39
|
+
${CMAKE_CURRENT_LIST_DIR}/../common/Classes/ThinkingAnalytics/ios/ThinkingSDK.framework
|
|
40
|
+
${CMAKE_CURRENT_LIST_DIR}/../common/Classes/ThinkingAnalytics/ios/ThinkingDataCore.framework
|
|
41
|
+
)
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
- Build Phases
|
|
45
|
+
```c
|
|
46
|
+
# find the following code
|
|
47
|
+
target_link_libraries(${LIB_NAME} cocos2d)
|
|
48
|
+
# add the following code
|
|
49
|
+
target_link_libraries(${LIB_NAME} ${CMAKE_CURRENT_LIST_DIR}/../common/Classes/ThinkingAnalytics/ios/ThinkingSDK.framework)
|
|
50
|
+
target_link_libraries(${LIB_NAME} ${CMAKE_CURRENT_LIST_DIR}/../common/Classes/ThinkingAnalytics/ios/ThinkingDataCore.framework)
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
- Build Settings
|
|
54
|
+
```c
|
|
55
|
+
# find the following code
|
|
56
|
+
set(PRODUCT_NAME ${APP_NAME})
|
|
57
|
+
# add the following code
|
|
58
|
+
set(CMAKE_EXE_LINKER_FLAGS -ObjC)
|
|
59
|
+
```
|
|
60
|
+
|
|
61
|
+
<quote-container>
|
|
62
|
+
Cocos Creator v2.x does not support the CMake configuration mode, and needs to be configured manually.
|
|
63
|
+
</quote-container>
|
|
64
|
+
|
|
65
|
+
## **2. Android Native Support**
|
|
66
|
+
Build and config the Android project.
|
|
67
|
+
- Open Android project with Android Studio and switch to Android mode. Add `CocosCreatorProxyApi.java` to `com.cocos.game` , like this:
|
|
68
|
+
<grid cols="2">
|
|
69
|
+
<column width="37">
|
|
70
|
+
<image token="T0UKbNL5Gotpljxuet8c1ABVnhg" width="440" height="397" align="center"/>
|
|
71
|
+
|
|
72
|
+
</column>
|
|
73
|
+
<column width="62">
|
|
74
|
+
<image token="HXnZbUTJJoRFQHxzLDCcrXRGnrc" width="953" height="517" align="center"/>
|
|
75
|
+
|
|
76
|
+
</column>
|
|
77
|
+
</grid>
|
|
78
|
+
|
|
79
|
+
- Find the file proguard-rules.pro in `/app`, and add obfuscated code
|
|
80
|
+
```plaintext
|
|
81
|
+
-keep public class com.cocos.game.CocosCreatorProxyApi {*;}
|
|
82
|
+
```
|
|
83
|
+
|
|
84
|
+
- Create a directory named libs, and copy `TDAnalytics.aar`、`TDCore.aar` to libs
|
|
85
|
+
- Add code to `build.gradle` of `Module`
|
|
86
|
+
```plaintext
|
|
87
|
+
dependencies {
|
|
88
|
+
...
|
|
89
|
+
implementation fileTree(dir: 'libs', include: ['*.aar'])
|
|
90
|
+
}
|
|
91
|
+
```
|
|
92
|
+
|
|
93
|
+
## **3. Enable Native Support**
|
|
94
|
+
When initializing the SDK, add **enableNative: true** to enable Native support
|
|
95
|
+
```javascript
|
|
96
|
+
// SDK config object
|
|
97
|
+
var config = {
|
|
98
|
+
appId: "YOUR_APPID", // APP ID
|
|
99
|
+
serverUrl: "YOUR_SERVER_URL", // server URL
|
|
100
|
+
enableNative: true// enable call Native code
|
|
101
|
+
};
|
|
102
|
+
|
|
103
|
+
TDAnalytics.init(config);
|
|
104
|
+
```
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
---
|
|
2
|
+
code: cocoscreator_sdk_preset_properties
|
|
3
|
+
name: "Preset Properties"
|
|
4
|
+
wikiToken: A8nOwRZOfizsfHk3MUvcwifEnuh
|
|
5
|
+
parentWikiToken: DHMrw6JkgiGcwxkzyPKc55VJn0c
|
|
6
|
+
updateTime: 1774251983000
|
|
7
|
+
sourceUrl: https://docs-v2.thinkingdata.cn/?version=v6.0&lan=en-US&code=cocoscreator_sdk_preset_properties
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
<quote-container>
|
|
11
|
+
Preset Properties will have differences on different platforms, for details: [Android](https://thinkingdata.feishu.cn/wiki/MBnZwHrO0ibkd9ksCSBc7dxEnic), [iOS](https://thinkingdata.feishu.cn/wiki/Ny61w1VIbi5Qeok94fRcJhulned).
|
|
12
|
+
</quote-container>
|
|
13
|
+
|
|
14
|
+
## **1. Preset Properties of All Events**
|
|
15
|
+
All Events in CocosCreator SDK(including auto-tracking events) would have the following preset property.
|
|
16
|
+
<sheet token="ZZxTsxoqIhrEtrtbnY5cBMHknhc_Wzqqhd"/>
|
|
17
|
+
|
|
18
|
+
## **2. Preset Properties of Auto-tracking Event**
|
|
19
|
+
The following preset properties are the properties set specially for each auto-tracking event
|
|
20
|
+
- Preset properties of Mini Game end event (tg_mg_hide)
|
|
21
|
+
|
|
22
|
+
<lark-table rows="2" cols="4" column-widths="143,137,138,335">
|
|
23
|
+
|
|
24
|
+
<lark-tr>
|
|
25
|
+
<lark-td>
|
|
26
|
+
** Property name **
|
|
27
|
+
</lark-td>
|
|
28
|
+
<lark-td>
|
|
29
|
+
** Display name **
|
|
30
|
+
</lark-td>
|
|
31
|
+
<lark-td>
|
|
32
|
+
** Property type **
|
|
33
|
+
</lark-td>
|
|
34
|
+
<lark-td>
|
|
35
|
+
** Instruction **
|
|
36
|
+
</lark-td>
|
|
37
|
+
</lark-tr>
|
|
38
|
+
<lark-tr>
|
|
39
|
+
<lark-td>
|
|
40
|
+
#duration
|
|
41
|
+
</lark-td>
|
|
42
|
+
<lark-td>
|
|
43
|
+
Event duration
|
|
44
|
+
</lark-td>
|
|
45
|
+
<lark-td>
|
|
46
|
+
Numeric value
|
|
47
|
+
</lark-td>
|
|
48
|
+
<lark-td>
|
|
49
|
+
Indicates the duration from starting(ta_mg_show) to hiding (ta_mg_hide) this time, in seconds
|
|
50
|
+
</lark-td>
|
|
51
|
+
</lark-tr>
|
|
52
|
+
</lark-table>
|
|
53
|
+
|
|
54
|
+
## **3.** **Getting Preset Properties**
|
|
55
|
+
If you need to use the preset properties of the client SDK when tracking events on the server, then you can use `getPresetProperties` to get these properties and upload them to the server.
|
|
56
|
+
```javascript
|
|
57
|
+
//get preset properties object
|
|
58
|
+
var presetProperties = TDAnalytics.getPresetProperties();
|
|
59
|
+
|
|
60
|
+
//get all preset properties
|
|
61
|
+
var properties = presetProperties.toEventPresetProperties();
|
|
62
|
+
/*
|
|
63
|
+
{
|
|
64
|
+
"#device_model":"iPhone 5",
|
|
65
|
+
"#device_id":"3204487163-1624513721217",
|
|
66
|
+
"#screen_width":320,
|
|
67
|
+
"#screen_height":568,
|
|
68
|
+
"#os":"iOS",
|
|
69
|
+
"#os_version":"10.0.1",
|
|
70
|
+
"#network_type":"wifi",
|
|
71
|
+
"#zone_offset":8,
|
|
72
|
+
"#manufacturer":"Apple"
|
|
73
|
+
}
|
|
74
|
+
*/
|
|
75
|
+
|
|
76
|
+
//get a preset property
|
|
77
|
+
var os = presetProperties.os;//os name, e.g. Android
|
|
78
|
+
var osVersion = presetProperties.osVersion;//os version
|
|
79
|
+
var networkType = presetProperties.networkType;//network type
|
|
80
|
+
var manufacture = presetProperties.manufacture;//device manufacture name
|
|
81
|
+
var deviceModel= presetProperties.deviceModel;//device mode
|
|
82
|
+
var screenWidth = presetProperties.screenWidth;//screen width
|
|
83
|
+
var screenHeight = presetProperties.screenHeight;//screen height
|
|
84
|
+
var deviceId = presetProperties.deviceId;//device ID
|
|
85
|
+
var zoneOffset = presetProperties.zoneOffset;//time zone offset
|
|
86
|
+
|
|
87
|
+
```
|
|
88
|
+
|
|
89
|
+
<quote-container>
|
|
90
|
+
IP, nation and city information are parsed and generated by the server. The client shall not provide the interface to get such properties
|
|
91
|
+
</quote-container>
|