Unity için Google Analytics Eklentisi - API Referansı

Bu belgede verilerin nasıl gönderileceği açıklanmakta ve Unity için Google Analytics Eklentisi'ne yönelik tüm yöntemler listelenmektedir.

Giriş

Unity için GA Eklentisi'ni kullanarak Google Analytics'e veri gönderirken Temel veya Builder yöntemini kullanabilirsiniz. İsabetlere kampanya parametreleri, özel boyutlar veya metrikler eklemek istiyorsanız Builder yöntemleri gereklidir. İsabetler, bu iki yöntemden biri yerine kullanılarak gönderilebilir.

Projenizde Unity için Google Analytics Eklentisi'ni kurmak ve yapılandırmak üzere Geliştirici Kılavuzu'ndaki talimatları uygulayın.

Genel

Sevkiyat İsabetleri

Ağ bağlantısı varsa isabetleri (görüntüleme, etkinlikler vb.) Google Analytics'e gönderir.

public void DispatchHits();

İlgili kaynaklar:

Oturum Kontrolü

Bir oturum, kullanıcının oyununuzla etkileşim kurduğu tek bir dönemi temsil eder. Oturumlar; ekran görüntülemeleri, etkinlikler ve e-ticaret işlemlerini içeren ölçülen etkinliklerin yararlı kapsayıcıları olarak işlev görür.

Bir oturumun başlatılmasını veya sonlandırılmasını zorunlu kılmak için aşağıdaki yöntemler kullanılabilir.

// 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();

İlgili kaynaklar:

Ekranlar

Google Analytics'teki ekranlar, kullanıcıların oyununuzda görüntülediği içeriği temsil eder. Ekran görüntüleme, Google Analytics raporlarınızda ekran adı olarak kullanılacak tek bir dize alanından oluşur.

Temel

public void LogScreen(string title);

Derleyici

public void LogScreen(AppViewHitBuilder builder);

Örnek

googleAnalytics.LogScreen("Main Menu");

//Builder Hit with all App View parameters (all parameters required):
googleAnalytics.LogScreen(new AppViewHitBuilder()
    .SetScreenName("Main Menu"));

İlgili kaynaklar:

Etkinlikler

Etkinlikler, bir kullanıcının oyununuzun etkileşimli bileşenleriyle etkileşimi (belirli bir öğenin kullanımı gibi) hakkında veri toplamak için yararlı bir yöntemdir. Bir etkinlik, bir kullanıcının oyununuzla etkileşimini açıklamak için kullanabileceğiniz dört alandan oluşur.

Temel

public void LogEvent(string eventCategory,
    string eventAction,
    string eventLabel,
    long value);

Derleyici

public void LogEvent(EventHitBuilder builder);

Örnek

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"));

İlgili kaynaklar:

Çökmeler ve İstisnalar

Kilitlenme ve istisna ölçümü, oyununuzda meydana gelen hem yakalanan hem yakalanmamış kilitlenmelerin ve istisnaların sayısını ve türünü ölçmenize olanak tanır.

Temel

public void LogException(string exceptionDescription, bool isFatal);

Derleyici

public void LogException(ExceptionHitBuilder builder);

Örnek

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());

İlgili kaynaklar:

Kullanıcı Zamanlamaları

Kullanıcı zamanlamalarını ölçmek, Google Analytics'te belirli bir süreyi ölçmek için yerel bir yol sağlar. Örneğin bu, kaynak yükleme sürelerini ölçmek için yararlı olabilir.

Temel

public void LogTiming(string timingCategory,
    long timingInterval,
    string timingName,
    string timingLabel);

Derleyici

public void LogTiming(TimingHitBuilder builder);

Örnek

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));

İlgili kaynaklar:

Sosyal Medya Etkileşimleri

Sosyal medya etkileşimi ölçümü, bir kullanıcının içeriğinize yerleştirilmiş çeşitli sosyal ağ paylaşımı ve öneri widget'larıyla olan etkileşimlerini ölçmenize olanak tanır.

Temel

public void LogSocial(string socialNetwork,
    string socialAction,
    string socialTarget);

Derleyici

public void LogSocial(SocialHitBuilder builder);

Örnek

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"));

İlgili kaynaklar:

E-Ticaret

E-ticaret ölçümü, oyun içi satın alma işlemlerini ve satışları Google Analytics'e göndermenize olanak tanır. Google Analytics'teki e-ticaret verileri, paylaşılan bir işlem kimliğiyle ilişkili işlem ve öğe isabetlerinden oluşur.

gerektirir.

İşlemler

Temel

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);

Derleyici

public void LogTransaction(TransactionHitBuilder builder);

Örnek

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));

Öğe sayısı

Temel

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);

Derleyici

public void LogItem(ItemHitBuilder builder);

Örnek

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));

İlgili kaynaklar:

Özel Boyutlar ve Metrikler

Özel boyutlar, Google Analytics'te meta verilerin isabetler, kullanıcılar ve oturumlarla ilişkilendirilmesini sağlar. Özel metrikler ise Google Analytics'te kendi metriklerinizi oluşturmanıza ve artırmanıza olanak tanır.

Özel Boyutlar ve Özel Metrikleri kullanmadan önce oluşturmanız ve yapılandırmanız gerekir. Veriler, yapılandırıldıktan sonra Builder yöntemi kullanılarak herhangi bir isabetin parçası olarak gönderilebilir.

Derleyici

// Custom Dimension.
public T SetCustomDimension(int dimensionNumber, string value);
// Custom Metric.
public T SetCustomMetric(int metricNumber, float value);

Örnek

// 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, 81.5));

İlgili kaynaklar:

Kampanyalar

Google Analytics'te kampanyaların ölçülmesi, kampanyaların ve trafik kaynaklarının oyununuzdaki kullanıcı etkinliğiyle ilişkilendirilmesini sağlar.

Kampanya parametreleri, Builder yöntemi kullanılarak herhangi bir isabetin parçası olarak gönderilebilir.

Derleyici

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);

Örnek

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");

İlgili kaynaklar:

Gelişmiş

Bu yöntemler, yalnızca izleyici kavramlarına aşina olan deneyimli Google Analytics kullanıcıları için önerilir.

SetOnTracker

İzleyicide, diğer isabetlerle birlikte gönderilecek değerleri ayarlayın.

fieldName parametresi için Assets/Eklentiler/Fields.cs'deki değişkenleri kullanın (ör. Fields.SCREEN_NAME).

public void SetOnTracker(Field fieldName, object value);

Örnek

googleAnalytics.SetOnTracker(Fields.SCREEN_NAME, "Main Menu");

At

Yönetilen kaynakları boşaltın ve izleyiciyi sıfırlayın.

Silme işlemi bir sonraki izleme isabeti olarak adlandırılırsa yeni bir izleyici oluşturmak gerekir. Bu nedenle, bu yöntemi yalnızca izlemeyle tamamen işiniz bittiğinde çağırmanız önerilir. Örneğin, kullanıcı oyununuzdan çıktığında yürütülen bir onDispose() yönteminde.

public void Dispose();

Örnek

googleAnalytics.Dispose();