16#ifndef __HIVE_ANALYTICS_H__
17#define __HIVE_ANALYTICS_H__
25class AnalyticsAdRevenue;
30class IAnalyticsSpecific;
33#define HIVE_SDK_ANALYTICS_CONSENT_TYPE_AD_STORAGE "ad_storage"
34#define HIVE_SDK_ANALYTICS_CONSENT_TYPE_AD_USER_DATA "ad_user_data"
35#define HIVE_SDK_ANALYTICS_CONSENT_TYPE_AD_PERSONALIZATION "ad_personalization"
36#define HIVE_SDK_ANALYTICS_CONSENT_TYPE_ANALYTICS_STORAGE "analytics_storage"
37#define HIVE_SDK_ANALYTICS_CONSENT_GRANTED "granted"
38#define HIVE_SDK_ANALYTICS_CONSENT_DENIED "denied"
71 typedef std::function<void(
ResultAPI const & result, std::vector<ConsentStatus>
const & consentStatus)> onShowConsentMode;
166 static unsigned int getRemainAnalyticsLogCount();
210 static void sendUserEntryFunnelsLogs(std::string funnelTrack, std::string optionTag);
222 static void setConsent(std::string providerName, std::map<std::string, std::string> settings);
231 static std::map<std::string, std::string> getConsent(std::string providerName);
247 static void showConsentModeIfRequire(
bool checkCmp, ConsentMode* consentMode, onShowConsentMode listener);
262 static void showConsentMode(ConsentMode* consentMode, onShowConsentMode listener);
266 static void executeEngine(picojson::value jsonParam);
269class HIVESDK_DLLEXPORT AnalyticsAdRevenue
275 std::string adPlatform;
277 std::string adUnitId;
281 std::string adPlacement;
283 std::string currency;
285 AnalyticsAdRevenue();
287 AnalyticsAdRevenue(
double revenue, std::string adPlatform, std::string adUnitId, std::string adType, std::string adPlacement, std::string currency);
289 AnalyticsAdRevenue(picojson::value jsonParam);
291 picojson::object toJson()
const;
293 std::string toString()
const;
296class HIVESDK_DLLEXPORT ConsentStatus {
298 std::string providerName;
299 std::string consentForDataUsage;
300 std::string consentForPersonalization;
305 ConsentStatus(picojson::value jsonParam);
307 picojson::object toJson()
const;
308 std::string toString()
const;
311class HIVESDK_DLLEXPORT ConsentForm {
313 std::string providerName;
315 std::string dataUsageTitle;
316 std::string dataUsageDescription;
317 std::string personalizationTitle;
318 std::string personalizationDescription;
321 ConsentForm(picojson::value jsonParam);
323 picojson::object toJson()
const;
324 std::string toString()
const;
327class HIVESDK_DLLEXPORT ConsentMode {
330 std::string companyName;
331 std::string privacyPolicy;
332 ConsentForm* mainForm;
333 std::vector<ConsentForm> formList;
337 ConsentMode(picojson::value jsonParam);
339 picojson::object toJson()
const;
340 std::string toString()
const;
351 picojson::object customAttributes;
352 picojson::object moduleSpecificAttributes;
356 void addCustomAttribute(
const std::string& key,
const picojson::value& value);
357 void addModuleSpecificAttribute(
const IAnalyticsSpecific& specific);
359 virtual picojson::object toJson()
const;
360 virtual std::string toString()
const;
365class HIVESDK_DLLEXPORT IAnalyticsSpecific
368 std::string providerName;
370 IAnalyticsSpecific();
372 virtual picojson::object toJson()
const;
373 virtual std::string toString()
const;
375 virtual ~IAnalyticsSpecific() =
default;
387 picojson::object semanticAttributes;
391 void setSemanticAction(
const std::string& value);
392 void setSemanticLabel(
const std::string& value);
393 void setSemanticValue(
const double value);
394 void addSemanticAttribute(
const std::string& key,
const picojson::value& value);
395 picojson::object toJson()
const override;
396 std::string toString()
const override;
Analytics 추가 데이터 (Airbridge 추가 데이터 포함)
Definition: HIVE_Analytics.h:385
Analytics 추가 데이터
Definition: HIVE_Analytics.h:349
A collection of features for tracking and analyzing apps and users (User Tracking Tool Wrapper & Cal...
Definition: HIVE_Analytics.h:52
Definition: HIVE_ResultAPI.h:64
static void sendEvent(std::string eventName)
Send event for user analysis.
static void setEnableTrackerWithName(std::string name, bool isEnable)
Set whether to use User Information Tracker for user analysis.
static bool sendAnalyticsLog(picojson::object &logData)
Send log for analysis.
TrackingType
Tracker type for user analysis.
Definition: HIVE_Analytics.h:64
static void sendEventWithAttributes(std::string eventName, AnalyticsAttributes const &attributes)
Send event for user analysis.
static void setEnableTracker(TrackingType trackingType, bool isEnable)
Set whether to use User Information Tracker for user analysis.
static void sendAdRevenueEvent(AnalyticsAdRevenue analyticsAdRevenue)
Send events for ad revenue measurement.