ข้ามไปที่เนื้อหา

การติดตามเหตุการณ์ด้วยตนเอง

นอกจากการติดตั้ง, เปิด, อัปเดต, และการซื้อ (การซื้อในแอป) ซึ่งถูกติดตามโดยอัตโนมัติโดย Hive SDK คุณสามารถติดตามเหตุการณ์ที่จำเป็นที่คุณต้องการได้ด้วยตนเอง เพื่อทำเช่นนี้ คุณต้องลงทะเบียนเหตุการณ์ในแดชบอร์ดของแต่ละการอ้างอิง ตัวอย่างเช่น คุณสามารถติดตามเหตุการณ์เฉพาะเช่นการเสร็จสิ้นการสอนเกมของคุณ (TutorialComplete) หรือการเสร็จสิ้นวัตถุประสงค์ของภารกิจ (MissionClear) คุณควรดำเนินการติดตามเหตุการณ์ด้วยตนเองหลังจากเสร็จสิ้นการตั้งค่าการติดตามเหตุการณ์อัตโนมัติ

การติดตามเหตุการณ์ด้วยตนเองด้วย Adjust

  1. เพื่อติดตามเหตุการณ์ที่กำหนดเองด้วยตนเอง ลงทะเบียนเหตุการณ์บนแดชบอร์ด Adjust และรับแอปโทเค็นและเหตุการณ์โทเค็น แอปโทเค็นสามารถรับได้จากหน้าแดชบอร์ดหลัก และเหตุการณ์โทเค็นจากแดชบอร์ด > การตั้งค่าทั้งหมด > เหตุการณ์ อ้างอิงจาก คู่มือแดชบอร์ด Adjust เพื่อเรียนรู้วิธีการรับโทเค็น
  2. เพิ่มแอปโทเค็นและเหตุการณ์โทเค็นของแต่ละเหตุการณ์ใน hive_config.xml สำหรับรายละเอียดเพิ่มเติม ดูตัวอย่างโค้ดด้านล่าง
  3. เพื่อป้องกันการปลอมแปลงแอปแดชบอร์ด Adjust มี SDK Signature เพื่อใช้ฟีเจอร์นี้ คุณต้องตรวจสอบรายละเอียดสัญญา Adjust เพื่อใช้ฟีเจอร์นี้ รับคีย์ที่จำเป็นและเพิ่มลงใน hive_config.xml (secretId, info1, info2, info3, info4).

    <providers>
    <!-- (skipped) -->
    <!-- อย่าตั้งค่าฟิลด์ id ของโหนด Adjust. -->
    <!-- ฟิลด์ name ของโหนด Adjust ถูกกำหนดให้เป็น "Adjust." -->
    <!-- ฟิลด์ name ของโหนด event ถูกกำหนดโดยสตูดิโอเกม แต่เมื่อมันถูกตั้งค่าแล้ว มันควรจะเหมือนกันสำหรับฟิลด์ name ของการอ้างอิงการตลาดอื่น ๆ สำหรับคำขอ sendEvent() -->
    <Adjust name="Adjust" id="unused" key="APP_TOKEN" secretId="1" info1="5432112345" info2="334123" info3="555333" info4="111333">
            <events>
                    <event name="TutorialComplete" value="TutorialComplete_EVENT_TOKEN"/>
                    <event name="MissionClear" value="MissionClear_EVENT_TOKEN"/>
            </events>
    <!-- (skipped) -->
    </Adjust>
    </providers>
    
  4. เรียกใช้ Analytics API sendEvent() เพื่อส่งเหตุการณ์ ใช้ event name ใน hive_config.xml เมื่อคุณส่งเหตุการณ์ name จะถูกใช้เป็นพารามิเตอร์คำขอสำหรับ sendEvent() และ value ที่คุณตั้งค่าจะแสดงผลในแดชบอร์ดของแต่ละการกำหนดค่า

    • Analytics.sendEvent("TutorialComplete");
    • Analytics.sendEvent("MissionClear");

การติดตามเหตุการณ์ด้วยตนเองด้วย Airbridge

  1. รับโทเค็นที่จำเป็น สำหรับข้อมูลเกี่ยวกับวิธีการรับโทเค็น โปรดดูที่ คู่มือแดชบอร์ด Airbridge.
    • รับ App SDK Token และ App Name จากแดชบอร์ด > การตั้งค่า > การจัดการโทเค็น.
  2. เพิ่มโทเค็น ชื่อแอป และการตั้งค่าเหตุการณ์ลงใน hive_config.xml โปรดดูที่ ตัวอย่างโค้ด hive_config.xml ด้านล่าง บน Windows การตั้งค่าโทเค็นและชื่อแอปไม่จำเป็น แต่การตั้งค่าคอนโซล Hive เป็นสิ่งที่จำเป็น.
  3. Airbridge มี SDK Signature เพื่อป้องกันการปลอมแปลงแอป เพื่อใช้ฟังก์ชันที่เกี่ยวข้อง คุณต้องตรวจสอบเงื่อนไขสัญญากับ Airbridge ก่อน รับคีย์และเพิ่มเป็น secretId และ secret ใน hive_config.xml. สำหรับข้อมูลเพิ่มเติมเกี่ยวกับข้อมูลความปลอดภัยของ SDK signature โปรดดูที่ คู่มือ Airbridge. รองรับเฉพาะ Android และ iOS เท่านั้น ไม่รองรับบน Windows.
  4. หากคุณกำลังใช้ Windows, Android, และ iOS ร่วมกัน โปรดติดต่อ Airbridge เพื่อขอพรีเซ็ต.
  5. ส่งเหตุการณ์โดยการเรียกใช้ Analytics API sendEvent(). เมื่อส่งเหตุการณ์ ให้ใช้ name และ value ของแท็ก event< ที่เพิ่มลงใน hive_config.xml. name จะถูกใช้เป็นพารามิเตอร์เมื่อเรียกใช้ API และ value สามารถตรวจสอบได้ในแดชบอร์ดของแต่ละการอ้างอิง.
    • Analytics.sendEvent("TutorialComplete");
    • Analytics.sendEvent("MissionClear");

hive_config.xml ตัวอย่างโค้ด

<providers>
    <Airbridge name="Airbridge" key="APP_SDK_TOKEN" appName="APP_NAME" secretId="SECRET_ID" secret="SECRET">
                <events>
                        <event name="TutorialComplete" value="Tutorial Complete" />
                        <event name="MissionClear" value="Mission Clear" />
                </events>
        </Airbridge>
</providers>

การติดตามเหตุการณ์ด้วยตนเองด้วย Singular, Appsflyer, Firebase Analytics

  1. รับกุญแจที่จำเป็นจากแดชบอร์ดการให้เครดิตแต่ละแห่ง ดูคู่มือจากแดชบอร์ดการให้เครดิตแต่ละแห่งเพื่อเรียนรู้วิธีการรับกุญแจ
    • Singular: รับ SDK Key และ SDK SecretKey จากแดชบอร์ด
    • Appsflyer: ไปที่การตั้งค่า AppsFlyer > การตั้งค่าแอปเพื่อรับ Dev key
    • Firebase Analytics: ไม่ต้องใช้กุญแจ
  2. กำหนดค่า hive_config.xml ตามคู่มือด้านล่าง สำหรับรายละเอียดเพิ่มเติม ดูตัวอย่างโค้ดด้านล่าง หากคุณใช้การให้เครดิต AppsFlyer กับ Hive SDK iOS (Native, Unity, Unreal) คุณต้องตั้งค่า itunseConnectAppId สำหรับ Apple AppID.

    <providers>
            <!-- ตั้งค่าตาม Singular -->
            <!-- ฟิลด์ชื่อของโหนด Singular ถูกกำหนดให้เป็น "Singular." -->
            <!-- ฟิลด์ชื่อของโหนดเหตุการณ์ถูกกำหนดโดยสตูดิโอเกม แต่เมื่อกำหนดแล้ว ควรจะเหมือนกันสำหรับฟิลด์ชื่อของการอ้างอิงการตลาดอื่น ๆ สำหรับคำขอ sendEvent() -->
            <!-- ฟิลด์ค่าในโหนดเหตุการณ์ถูกกำหนดโดยสตูดิโอเกม -->
            <Singular name="Singular" id="SDK_KEY" key="SDK_SECRET_KEY">
                    <events>
                            <event name="TutorialComplete" value="Tutorial Complete"/>
                            <event name="MissionClear" value="Mission Clear"/>
                    </events>
            </Singular>
    
            <!-- กำหนดค่าสำหรับ AppsFlyer -->
            <!-- ฟิลด์ชื่อของโหนด AppsFlyer ถูกกำหนดให้เป็น "AppsFlyer." -->
            <!-- อย่าตั้งค่าฟิลด์ id ของโหนด AppsFlyer. -->
            <!-- ฟิลด์ชื่อของโหนดเหตุการณ์ถูกกำหนดโดยสตูดิโอเกม แต่เมื่อมันถูกตั้งค่าแล้ว มันควรจะเหมือนกันสำหรับฟิลด์ชื่อของการอ้างอิงการตลาดอื่น ๆ ทั้งหมดสำหรับคำขอ sendEvent() -->
            <!-- ฟิลด์ค่า ของโหนดเหตุการณ์ถูกกำหนดโดยสตูดิโอเกม. -->
            <AppsFlyer name="AppsFlyer" id="unused" key="DEV_KEY" itunseConnectAppId="909923112">
                    <events>
                            <event name="TutorialComplete" value="Tutorial Complete"/>
                            <event name="MissionClear" value="Mission Clear"/>
                    </events>
            </AppsFlyer>
    
            <!-- กำหนดค่าสำหรับ Firebase Analytics -->
            <!-- ฟิลด์ชื่อของโหนดเหตุการณ์ถูกกำหนดโดยสตูดิโอเกม แต่เมื่อมันถูกตั้งค่าแล้ว มันควรจะเหมือนกันสำหรับฟิลด์ชื่อของการอ้างอิงการตลาดอื่น ๆ สำหรับคำขอ sendEvent() -->
            <!-- ฟิลด์ค่าของโหนดเหตุการณ์ถูกกำหนดโดยสตูดิโอเกม -->
            <firebase>
                    <events>
                        <event name="TutorialComplete" value="TutorialComplete"/>
                        <event name="MissionClear" value="MissionClear"/>
                    </events>
            </firebase>
    </providers>   
    
  3. เรียกใช้ API การวิเคราะห์ sendEvent() เพื่อส่งเหตุการณ์ ใช้ event name ใน hive_config.xml เมื่อคุณส่งเหตุการณ์ name จะถูกใช้เป็นพารามิเตอร์คำขอสำหรับ sendEvent() และ value ที่คุณตั้งค่าจะแสดงผลบนแดชบอร์ดของแต่ละการระบุ

    • Analytics.sendEvent("TutorialComplete");
    • Analytics.sendEvent("MissionClear");

ส่งเหตุการณ์ผ่าน sendEvent()

แนะนำให้ส่งเหตุการณ์ติดตามไปยังการระบุเฉพาะเมื่อกิจกรรมของผู้ใช้ตรงตามเงื่อนไขที่กำหนด เช่น การทำแบบฝึกหัดให้เสร็จสิ้น เรียกใช้วิธี sendEvent() ในคลาส Analytics เพื่อส่งเหตุการณ์ติดตาม ในฐานะพารามิเตอร์แรกของ sendEvent() ให้ป้อนค่าของคุณสมบัติ name จากองค์ประกอบ <event> ซึ่งกำหนดไว้ในไฟล์ hive_config.xml

ต่อไปนี้คือตัวอย่างโค้ดที่ส่งเหตุการณ์ TutorialComplete ไปยังการติดตามการตลาดเพื่อแจ้งให้ทราบว่าผู้ใช้ได้ทำการเรียนรู้เสร็จสิ้นแล้ว

API Reference: hive.Analytics.sendEvent

using hive;    
    String eventName = "TutorialComplete";    
Analytics.sendEvent(eventName);
#include "HiveAnalytics.h"

FString EventName = TEXT("TutorialComplete");
FHiveAnalytics::SendEvent(EventName);

API Reference: Analytics::sendEvent

#include <HIVE_SDK_Plugin/HIVE_CPP.h>    
    using namespace std;    
    using namespace hive;    
    string eventName = "TutorialComplete";    
Analytics::sendEvent(eventName);

API Reference: Analytics.sendEvent

import com.hive.Analytics    
    val eventName = "TutorialComplete"    
Analytics.sendEvent(eventName)

API Reference: AnalyticsInterface .sendEvent

import HIVEService    
    let eventName = "TutorialComplete"    
AnalyticsInterface.sendEvent(eventName)

API Reference: HIVEAnalytics:sendEvent

#import <HIVEService/HIVEService-Swift.h>    
    NSString eventName = @"TutorialComplete";    
[HIVEAnalytics sendEvent: eventName];