В этом документе описывается, как отправлять данные, и перечислены все методы плагина Google Analytics для Unity.
Введение
При отправке данных в Google Analytics с помощью плагина GA для Unity вы можете использовать базовый метод или метод Builder . Методы построителя необходимы, если вы хотите добавить к обращениям параметры кампании, специальные параметры или показатели. Обращения можно отправлять любым из взаимозаменяемых методов.
Следуйте руководству разработчика , чтобы настроить плагин Google Analytics для Unity для вашего проекта.
Общий
Отправка хитов
Отправляет обращения (просмотры, события и т. д.) в Google Analytics, если доступно сетевое подключение.
public void DispatchHits();
Связанные ресурсы:
Управление сеансом
Сеанс представляет собой один период взаимодействия пользователя с вашей игрой. Сеансы служат полезными контейнерами измеряемой активности, включая просмотры экрана, события и транзакции электронной торговли.
Следующие методы можно использовать для принудительного начала или завершения сеанса.
// Start a new session. public void StartSession();
// There should be no need to end a session explicitly. However, if you do // need to indicate the end of session you can use the following method. public void StopSession();
Связанные ресурсы:
Экраны
Экраны в Google Analytics представляют контент, который пользователи просматривают в вашей игре. Представление экрана состоит из одного строкового поля, которое будет использоваться в качестве имени экрана в ваших отчетах Google Analytics.
Базовый
public void LogScreen(string title);
Строитель
public void LogScreen(AppViewHitBuilder builder);
Пример
googleAnalytics.LogScreen("Main Menu"); //Builder Hit with all App View parameters (all parameters required): googleAnalytics.LogScreen(new AppViewHitBuilder() .SetScreenName("Main Menu"));
Связанные ресурсы:
События
События — это полезный способ сбора данных о взаимодействии пользователя с интерактивными компонентами вашей игры, например об использовании определенного предмета. Событие состоит из четырех полей, которые вы можете использовать для описания взаимодействия пользователя с вашей игрой.
Базовый
public void LogEvent(string eventCategory, string eventAction, string eventLabel, long value);
Строитель
public void LogEvent(EventHitBuilder builder);
Пример
googleAnalytics.LogEvent("Achievement", "Unlocked", "Slay 10 dragons", 5); // Builder Hit with all Event parameters. googleAnalytics.LogEvent(new EventHitBuilder() .SetEventCategory("Achievement") .SetEventAction("Unlocked") .SetEventLabel("Slay 10 dragons") .SetEventValue(5)); // Builder Hit with minimum required Event parameters. googleAnalytics.LogEvent(new EventHitBuilder() .SetEventCategory("Achievement") .SetEventAction("Unlocked"));
Связанные ресурсы:
Сбои и исключения
Измерение сбоев и исключений позволяет вам измерить количество и тип обнаруженных и необнаруженных сбоев и исключений, возникающих в вашей игре.
Базовый
public void LogException(string exceptionDescription, bool isFatal);
Строитель
public void LogException(ExceptionHitBuilder builder);
Пример
googleAnalytics.LogException("Incorrect input exception", true); // Builder Hit with all Exception parameters. googleAnalytics.LogException(new ExceptionHitBuilder() .SetExceptionDescription("Incorrect input exception") .SetFatal(true)); // Builder Hit with minimum required Exception parameters. googleAnalytics.LogException(new ExceptionHitBuilder());
Связанные ресурсы:
Пользовательское время
Измерение времени пользователя обеспечивает собственный способ измерения периода времени в Google Analytics. Например, это может быть полезно для измерения времени загрузки ресурсов.
Базовый
public void LogTiming(string timingCategory, long timingInterval, string timingName, string timingLabel);
Строитель
public void LogTiming(TimingHitBuilder builder);
Пример
googleAnalytics.LogTiming("Loading", 50L, "Main Menu", "First Load"); // Builder Hit with all Timing parameters. googleAnalytics.LogTiming(new TimingHitBuilder() .SetTimingCategory("Loading") .SetTimingInterval(50L) .SetTimingName("Main Menu") .SetTimingLabel("First load")); // Builder Hit with minimum required Timing parameters. googleAnalytics.LogTiming(new TimingHitBuilder() .SetTimingCategory("Loading") .SetTimingInterval(50L));
Связанные ресурсы:
Социальные взаимодействия
Измерение социального взаимодействия позволяет измерять взаимодействие пользователя с различными виджетами обмена информацией в социальных сетях и рекомендациями, встроенными в ваш контент.
Базовый
public void LogSocial(string socialNetwork, string socialAction, string socialTarget);
Строитель
public void LogSocial(SocialHitBuilder builder);
Пример
googleAnalytics.LogSocial("twitter", "retweet", "twitter.com/googleanalytics/status/482210840234295296"); // Builder Hit with all Social parameters. googleAnalytics.LogSocial(new SocialHitBuilder() .SetSocialNetwork("Twitter") .SetSocialAction("Retweet") .SetSocialTarget("twitter.com/googleanalytics/status/482210840234295296")); // Builder Hit with minimum required Social parameters. googleAnalytics.LogSocial(new SocialHitBuilder() .SetSocialNetwork("Twitter") .SetSocialAction("Retweet"));
Связанные ресурсы:
Электронная коммерция
Измерение электронной торговли позволяет отправлять внутриигровые покупки и продажи в Google Analytics. Данные электронной торговли в Google Analytics состоят из обращений к транзакциям и товарам, связанных общим идентификатором транзакции.
Транзакции
Базовый
public void LogTransaction(string transID, string affiliation, double revenue, double tax, double shipping); public void LogTransaction(string transID, string affiliation, double revenue, double tax, double shipping, string currencyCode);
Строитель
public void LogTransaction(TransactionHitBuilder builder);
Пример
googleAnalytics.LogTransaction("TRANS001", "Coin Store", 3.0, 0.0, 0.0); googleAnalytics.LogTransaction("TRANS001", "Coin Store", 3.0, 0.0, 0.0, "USD"); // Builder Hit with all Transaction parameters. googleAnalytics.LogTransaction(new TransactionHitBuilder() .SetTransactionID("TRANS001") .SetAffiliation("Coin Store") .SetRevenue(3.0) .SetTax(0) .SetShipping(0.0) .SetCurrencyCode("USD")); // Builder Hit with minimum required Transaction parameters. googleAnalytics.LogTransaction(new TransactionHitBuilder() .SetTransactionID("TRANS001") .SetAffiliation("Coin Store") .SetRevenue(3.0) .SetTax(0) .SetShipping(0.0));
Предметы
Базовый
public void LogItem(string transID, string name, string SKU, string category, double price, long quantity); public void LogItem(string transID, string name, string SKU, string category, double price, long quantity, string currencyCode);
Строитель
public void LogItem(ItemHitBuilder builder);
Пример
googleAnalytics.LogItem("TRANS001", "Sword", "SWORD1223", "Weapon", 3.0, 2); googleAnalytics.LogItem("TRANS001", "Sword", "SWORD1223", "Weapon", 3.0, 2, "USD"); // Builder Hit with all Item parameters. googleAnalytics.LogItem(new ItemHitBuilder() .SetTransactionID("TRANS001") .SetName("Sword") .SetSKU("SWORD1223") .SetCategory("Weapon") .SetPrice(3.0) .SetQuantity(2) .SetCurrencyCode("USD")); // Builder Hit with minimum required Item parameters. googleAnalytics.LogItem(new ItemHitBuilder() .SetTransactionID("TRANS001") .SetName("Sword") .SetSKU("SWORD1223") .SetPrice(3.0) .SetQuantity(2));
Связанные ресурсы:
Специальные параметры и показатели
Специальные параметры позволяют связать метаданные с обращениями, пользователями и сеансами в Google Analytics, а специальные показатели позволяют создавать и увеличивать собственные показатели в Google Analytics.
Перед их использованием необходимо создать и настроить специальные параметры и специальные показатели . После настройки данные можно отправлять как часть любого обращения с помощью метода Builder .
Строитель
// Custom Dimension. public T SetCustomDimension(int dimensionNumber, string value);
// Custom Metric. public T SetCustomMetric(int metricNumber, string value);
Пример
// Custom Dimension. // An AppView hit example, but custom dimensions can be sent with all hit types. googleAnalytics.LogScreen(new AppViewHitBuilder() .SetScreenName("Another screen") .SetCustomDimension(1, "200")); // Custom Metric. // An Event hit example, but custom metrics can be sent with all hit types. googleAnalytics.LogEvent(new EventHitBuilder() .SetEventCategory("Achievement") .SetEventAction("Unlocked") .SetEventLabel("Slay 10 dragons") .SetEventValue(5) .SetCustomMetric(3, "200"));
Связанные ресурсы:
Кампании
Измерение кампаний в Google Analytics позволяет соотнести кампании и источники трафика с активностью пользователей в вашей игре.
Параметры кампании можно отправлять как часть любого обращения с помощью метода Builder .
Строитель
public T SetCampaignName(string campaignName); public T SetCampaignSource(string campaignSource); public T SetCampaignMedium(string campaignMedium); public T SetCampaignKeyword(string campaignKeyword); public T SetCampaignContent(string campaignContent); public T SetCampaignID(string campaignID);
Пример
googleAnalytics.LogTiming(new TimingHitBuilder() .SetTimingCategory("Loading") .SetTimingInterval(50L) .SetTimingName("Main Menu") .SetTimingLabel("First load") .SetCampaignName("Summer Campaign") .SetCampaignSource("google") .SetCampaignMedium("cpc") .SetCampaignKeyword("games") .SetCampaignContent("Free power ups") .SetCampaignId("Summer1")); // Send campaign parameters with timing hit. // Builder Hit with minimum required Campaign parameters. googleAnalytics.LogTiming(new TimingHitBuilder() .SetTimingCategory("Loading") .SetTimingInterval(50L) .SetTimingName("Main Menu") .SetTimingLabel("First load") .SetCampaignSource("google");
Связанные ресурсы:
Передовой
Эти методы рекомендуются только опытным пользователям Google Analytics, знакомым с концепциями трекеров.
СетОнТрекер
Установите значения на трекере, которые будут отправляться вместе с другими обращениями.
Используйте переменные из Assets/Plugins/Fields.cs для параметра fieldName
(например, Fields.SCREEN_NAME
).
public void SetOnTracker(Field fieldName, object value);
Пример
googleAnalytics.SetOnTracker(Fields.SCREEN_NAME, "Main Menu");
Утилизировать
Освободите управляемые ресурсы и перезагрузите трекер.
Если вызывается метод Dispose, то следующее попадание отслеживания должно будет создать новый трекер, поэтому рекомендуется вызывать этот метод только после полного завершения отслеживания. Например, в методе onDispose()
, который выполняется, когда пользователь выходит из игры.
public void Dispose();
Пример
googleAnalytics.Dispose();