TAGManager Sınıf Referansı


Genel Bakış

Google Etiket Yöneticisi'nin (GTM) mobil uygulaması olan bir sınıf.

Örnek kullanım:

      TAGContainer *container =
          [[TAGManager instance] openContainerById:myContainerId];
      NSString *value = [container stringForKey:@"myKey"];
      TAGDataLayer *dataLayer =
          [[TAGManager instance] dataLayer];
      [dataLayer push:@{@"event": @"openScreen",
                        @"screenName": @"Main Page"}];

Kapsayıcı; makrolar, kurallar ve etiketlerden oluşan bir koleksiyondur. GTM uygulaması (http://www.google.com/tagmanager) içinde oluşturulur ve kendisine bir kapsayıcı kimliği atanır. Bu kapsayıcı kimliği, bu API'de kullanılan kimliktir.

TAGContainer sınıfı, makro adına verilen makro değerlerini almak için yöntemler sağlar. booleForKey: (TAGContainer), doubleForKey: (TAGContainer), int64ForKey: (TAGContainer), stringForKey: (TAGContainer) rutinleri, kapsayıcıda ilgili makroyla ilişkili kurallara bağlı olarak değer koleksiyonu makro adının geçerli değerini döndürür.

Örneğin, kapsayıcınızda "hız" anahtarı bulunan bir değer toplama makrosu varsa değeri 32 olan ve etkinleştirme kuralı Dil "en" olan; ve bir anahtar "hız" anahtarı içeren başka bir değer koleksiyonu makrosu değeri 45 olan ve etkinleştirme kuralı Dil "en" değil ise aşağıdaki çağrı yapılır:

     [container longForKey:@"speed"]
 

cihazın mevcut dili İngilizce ise 32, İngilizce değilse 45 değerini döndürür.

Veri katmanı, uygulama hakkında genel bilgilerin bulunduğu bir haritadır. TAGDataLayer sınıfı, veri katmanından veri aktarmak ve bu verileri almak için yöntemler sunar. Veri katmanına event anahtarı aktarıldığında, bu etkinlikle eşleşen etiketler tetiklenir.

Kapsayıcının ilk sürümü, uygulamayla birlikte gelir. containerId adlı pakete bir kaynak olarak yerleştirilmelidir. Burada containerId, bu API'de kullanacağınız kapsayıcı kimliğiyle aynıdır. openContainerById:callback: (TAGManager) çağrısı yaptığınızda, kapsayıcı bu gruplandırılmış kurallar/etiketlerle/makrolarla döndürülür. Kapsayıcıyı kullanıcı arayüzünde oluşturacak ve indirmek için İndir düğmesini kullanacaksınız.

Kapsayıcıyı kullanıcı arayüzünde değiştirebilir ve yeni bir sürüm yayınlayabilirsiniz. Bu durumda mobil uygulama, kapsayıcıyı ağdan tekrar yenilediğinde (şu anda her 12 saatte bir) yeni sürümü alır. Get... rutinlerinden birini çağırdığınızda, değer en son kurallar kullanılarak hesaplanır.

İndirilen kapsayıcı yerel olarak kaydedilir. openContainerById:callback: (TAGManager) çağrılarını yaptığınızda, ilk olarak varsayılan kapsayıcıyı, ardından kayıtlı kapsayıcıları eşzamansız olarak yükler. Herhangi bir uygulama bulunmazsa veya ağ 12 saatten daha eskiyse ağdan daha yeni bir sürüm almaya çalışır. Bu eşzamansız yüklemelerin durumunu, openContainerById:callback: (TAGManager) için bir TAGContainerCallback ileterek bulabilirsiniz.

Bazen, varsayılan olmayan bir kapsayıcı kullanılabilir olana ya da yakın zamanda yeni bir kapsayıcı kullanıma sunulana kadar engelleme yapmak isteyebilirsiniz. Bu işlemi openContainerById:callback: (TAGManager) içinde geri çağırma yaparak veya TAGContainerOpener kullanarak yapabilirsiniz.

Bir kapsayıcıyla işiniz bittiğinde close (TAGContainer) işlevini çağırın.

Ortak Üye İşlevleri

(TAGContainer *)- openContainerById:callback:
 Bir kapsayıcı döndürür.
(TAGContainer *)- getContainerById:
 Belirtilen containerId ile ilişkili kapsayıcıyı döndürür; kapsayıcı henüz açık değilse nil değerini döndürür.
(BOOL)- previewWithUrl:
 Uygulamayı giriş URL'siyle önizler.
(geçersiz)- görev
 Etiketler (isteğe bağlı pikseller, analiz işaretçileri vb.) tarafından oluşturulan beklemedeki ağ trafiğini gönderir.
(geçersiz)- dispatchWithCompletionHandler:
 Sırada bekleyen sonraki ağ trafiğini gönderir, istek gönderildiğinde (kTAGDispatchGood değerini döndürür) veya bir hata oluştuğunda (kTAGDispatchError hatası döndürülür) completeHandler çağrılır.

Statik Ortak Üye İşlevleri

(TAGManager *)+ örnek
 Gerekirse TAGManager sınıfının tekil örneğini alır.

Tesisler

id < TAGLogger >logger
 Google Etiket Yöneticisi SDK'sı için kullanılacak günlük sağlayıcı.
TAGRefreshModerefreshMode
 Google Etiket Yöneticisi SDK'sı için kullanılan yenileme modu.
TAGDataLayer *dataLayer
 Etkinlikleri ve diğer verileri aktarmak için push: (TAGDatalayer) yöntemini çağırın.
NSTimeIntervaldispatchInterval
 Bu değer pozitifse izleme bilgileri, her dispatchInterval saniyede otomatik olarak gönderilir.

Üye İşlevi Belgeleri

- (TAGContainer *) openContainerById: (NSString *) containerId
geri arama: (kimlik< TAGContainerCallback >) geri arama

Bir kapsayıcı döndürür.

Döndürülen kapsayıcı genellikle boş olur, ancak yükleme eşzamansız olarak gerçekleşir. Bu nedenle, döndürülen kapsayıcı döndürülmeden önce, döndürüldükten sonra yenilenebilir veya örneğin, kapsayıcının kullanım süresi boyunca ağ bağlantısı olmaması durumunda hiçbir zaman yenilenemez.

Kapsayıcıyla ilgili çeşitli durumlar yaşandığında geri çağırma çağrılır. openContainerById:callback:, en azından kapsayıcının kayıtlı bir sürümünü yüklemeyi dener. Kayıtlı bir sürüm yoksa veya kayıtlı sürüm eskiyse ağdan yüklenmeye çalışılır.

openContainerById:callback: Bir containerId için ikinci kez çağrılırsa, önceden açılan kapsayıcı daha önce kapatılmadığı sürece nil döndürülür.

Parametreler:
containerIdAçılacak kapsayıcının kimliği.
geri çağırmaYükleme işlemi sırasında çeşitli yöntemleri çağrılacak bir nesne. Yöntemlerin farklı ileti dizilerinden çağrılabileceğini unutmayın. Ayrıca, openContainerById:callback: geri gelmeden önce çağrılabilirler.
Şunu döndürür:
Açılan kapsayıcı
- (TAGContainer *) getContainerById: (NSString *) containerId

Belirtilen containerId ile ilişkili kapsayıcıyı döndürür; kapsayıcı henüz açık değilse nil değerini döndürür.

- (BOOL) previewWithUrl: (NSURL *) url

Uygulamayı giriş URL'siyle önizler.

Geçerli URL şununla başlamalıdır:

 tagmanager.c.<app_name>://preview/p?id=

burada <app_name> uygulama adıdır.

Parametreler:
urlÖnizleme URL'si.
Şunu döndürür:
URL geçerli bir tagmanager önizleme URL'siyse EVET.

Gerekirse TAGManager sınıfının tekil örneğini alır.

Şunu döndürür:
TAGManager'ın tekil örneği.
- (geçersiz) görev dağıtımı

Etiketler (isteğe bağlı pikseller, analiz işaretçileri vb.) tarafından oluşturulan beklemedeki ağ trafiğini gönderir.

- (geçersiz) dispatchWithCompletionHandler: (TAGDispatchResult) completionHandler

Sırada bekleyen sonraki ağ trafiğini gönderir, istek gönderildiğinde (kTAGDispatchGood değerini döndürür) veya bir hata oluştuğunda (kTAGDispatchError hatası döndürülür) completeHandler çağrılır.

Ağ bağlantısı yoksa veya gönderilecek veri yoksa kTAGDispatchNoData döndürülür.

Bu yöntemin nil completeHandler ile çağrılması, sevk uygulamasını çağırmakla aynıdır.

Bu yöntem iOS 7.0 veya sonraki sürümlerde arka plan veri getirme işlemi için kullanılabilir.

Başvurudan çıkılırken, gönderilmemiş takip bilgilerinin gönderilmesini başlatmak için bu yöntemi çağırmak mantıklı olacaktır.


Mülk Belgeleri

- (id<TAGLogger>) logger [read, write, assign]

Google Etiket Yöneticisi SDK'sı için kullanılacak günlük sağlayıcı.

Varsayılan olarak, Google Etiket Yöneticisi hata/uyarı mesajlarını günlüğe kaydeder ve bilgi/hata ayıklama/ayrıntılı mesajları yok sayar. Bu özelliği ayarlayarak kendi özelleştirilmiş günlük kaydedicinizi kullanabilirsiniz.

- (TAGRefreshMode) refreshMode [read, write, assign]

Google Etiket Yöneticisi SDK'sı için kullanılan yenileme modu.

Bunun kTAGRefreshModeDefaultContainer olarak ayarlanması, yenileme yönteminin geliştirme amacıyla yalnızca varsayılan kapsayıcıyı kullanmasına izin verir. Varsayılan değer kTAGRefreshModeStandard'dır.

- (TAGDataLayer*) dataLayer [read, assign]

Etkinlikleri ve diğer verileri aktarmak için push: (TAGDatalayer) yöntemini çağırın.

- (NSTimeInterval) dispatchInterval [read, write, assign]

Bu değer pozitifse izleme bilgileri, her dispatchInterval saniyede otomatik olarak gönderilir.

Aksi takdirde, takip bilgilerinin sevk edilerek manuel olarak gönderilmesi gerekir.

Bu değer varsayılan olarak "120" değerine ayarlanır. Bu, takip bilgilerinin 120 saniyede bir otomatik olarak gönderileceğini gösterir.