跳轉至

SDK

Hive SDK 客戶端類型

Hive SDK 使得可以直接將客戶所需的格式化日誌發送到日誌收集伺服器。

decode:true">JSONObject logData = new JSONObject ();
// Sets pre-defined log
logData.AddField ("category", "hivesdk_levelup_log");
logData.AddField ("level", level);
Analytics.sendAnalyticsLog (logData);
decode:true">picojson::object logData;
// Sets pre-defined log
logData["category"] = picojson::value("hivesdk_levelup_log");
logData["level"] = picojson::value((double)level);
Analytics::sendAnalyticsLog(logData);
Map<String, Object> logData = new HashMap<String, Object>();
// Sets pre-defined log
logData.put("category", "hivesdk_levelup_log");
logData.put("level", level);
Analytics.sendAnalyticsLog(logData);
NSMutableDictionary* logData = [[NSMutableDictionary alloc] init];
// Sets pre-defined log
[logData setObject:@"hivesdk_levelup_log" forKey:@"category"];
[logData setObject:level forKey:@"level"];
[HIVEAnalytics sendAnalyticsLog:logData];</>

在遊戲入口部分發送漏斗日誌

從遊戲實現到進入遊戲大廳,Hive SDK 按區段向分析發送日誌,以便分析用戶退出遊戲的點。

Note

Hive SDK v4.11.0 及更高版本支持自动日志传输。要实现此功能,请在 Hive 控制台 > 分析 > 分析 > 漏斗分析 菜单中创建漏斗。请参阅 操作 > 分析 > 漏斗分析 页面以在 Hive 控制台上创建漏斗。

  • 收集漏斗的部分 记录游戏用户在游戏应用程序中离开以下部分的历史。每个用户在应用程序的单次启动中只记录一次漏斗日志。根据在游戏中实施 Hive SDK 的指南,您可以检查用户是否在以下指定部分离开。
入口部分 描述
400 應用程式安裝
401 Hive SDK 初始化的起始點
420 更新/通知
430 服務條款協議
500 遊戲伺服器手動選擇
600 遊戲伺服器維護彈出窗口
700 開始下載遊戲數據和資源(不同於遊戲安裝/更新)
800 下載遊戲數據和資源結束
900 登錄
1000 插頁橫幅
  • 發送遊戲數據和資源下載部分的日誌 在 Hive SDK 中準確檢查遊戲數據和資源下載的開始和結束是困難的,因此需要在遊戲端指定開始和結束並自行發送日誌。使用 Hive SDK 發送遊戲數據和資源下載的開始和結束日誌。Hive SDK 的示例代碼如下:
// 700 在下載遊戲資源和數據開始時
Analytics.sendUserEntryFunnelsLogs("700", null);
// 800 當資源和數據下載完成時
Analytics.sendUserEntryFunnelsLogs("800", null);

// 當使用 Analytics.sendAnalyticsLog() 時
JSONObject logData = new JSONObject();
// 遊戲資源和數據下載開始時的 700
logData.AddField("category", "hive_user_entry_log");
logData.AddField("sectionId", 700);
Analytics.sendAnalyticsLog(logData);;
// 700 在下載遊戲資源和數據的開始
Analytics::sendUserEntryFunnelsLogs("700", nullptr);
// 800 在下載遊戲資源和數據的結束
Analytics::sendUserEntryFunnelsLogs("800", nullptr);

// 當使用 Analytics::sendAnalyticsLog()
picojson::object logData;
// 遊戲資源和數據下載開始時的 700
logData["category"] = picojson::value("hive_user_entry_log");
logData["sectionId"] = picojson::value((double)700);
Analytics::sendAnalyticsLog(logData);
// 700 在下載遊戲資源和數據的開始
Analytics.sendUserEntryFunnelsLogs("700", null);
// 800 在下載遊戲資源和數據的結束
Analytics.sendUserEntryFunnelsLogs("800", null);

// 使用 Analytics.sendAnalyticsLog() 時
Map<String, Object> logData = new HashMap<String, Object>();
// 遊戲資源和數據下載開始時的 700
logData.put("category", "hive_user_entry_log");
logData.put("sectionId", 700);
Analytics.sendAnalyticsLog(logData);
// 下載遊戲資源和數據開始時的700
[HIVEAnalytics sendUserEntryFunnelsLogs:@"700" withOptions:nil];
// 下載遊戲資源和數據結束時的800
[HIVEAnalytics sendUserEntryFunnelsLogs:@"800" withOptions:nil];

// 當使用 HIVEAnalytics 發送分析日誌
NSMutableDictionary* logData = [[NSMutableDictionary alloc] init];
// 遊戲資源和數據下載開始時的 700
[logData setObject:@"hive_user_entry_log" forKey:@"category"];
[logData setObject:700 forKey:@"sectionId"];
[HIVEAnalytics sendAnalyticsLog:logData];