本文說明如何傳送資料,並列出 Unity 適用的 Google Analytics (分析) 外掛程式的所有方法。
引言
使用 Unity 適用的 GA 外掛程式將資料傳送至 Google Analytics (分析) 時,您可以使用基本方法或建構工具方法。 如要將命中參數或自訂維度或指標附加至命中,就必須使用 Builder 方法。您可使用任一方法互傳命中。
請依照開發人員指南,為您的專案設定及設定 Unity 適用的 Google Analytics (分析) 外掛程式。
一般
調度命中
連上網路時,將命中 (檢視、事件等) 調派至 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);
Builder
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"));
相關資源:
Events
事件有助於收集使用者與遊戲互動元件的互動資料,例如使用特定項目。 事件包含四個欄位,可用於描述使用者與您遊戲的互動。
基本版
public void LogEvent(string eventCategory, string eventAction, string eventLabel, long value);
Builder
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);
Builder
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);
Builder
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);
Builder
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 (分析) 中的電子商務資料包含交易和商品命中,與共用交易 ID 有關。
交易
基本版
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);
Builder
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);
Builder
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 方法將資料傳送至任何命中。
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 方法,在任何命中傳送廣告活動參數。
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 (分析) 進階使用者採用這些方法。
SetOnTracker
在追蹤器上設定要隨著其他命中傳送的值。
使用 Assets/Plugins/Fields.cs 中的變數做為 fieldName
參數 (例如 Fields.SCREEN_NAME
)。
public void SetOnTracker(Field fieldName, object value);
範例
googleAnalytics.SetOnTracker(Fields.SCREEN_NAME, "Main Menu");
處理中
釋出代管資源並重設追蹤器。
如果呼叫棄置,下一個追蹤命中就必須建立新的追蹤器,因此建議僅在追蹤完成時才呼叫此方法。舉例來說,onDispose()
方法會在使用者關閉遊戲時執行。
public void Dispose();
範例
googleAnalytics.Dispose();