Bu kılavuz, küme yayınlamayla ilgili olarak geliştiricilerin kullanabilirsiniz.
Öneri kümeleri
Küme Başlığı
Kullanıcılara tam olarak aynı hedefe sahip olmaları için benzersiz ve alakalı daha iyi fikir edinebilirsiniz.
İçeriğe göre iyi küme başlıklarına bazı örnekler:
- Alışverişle ilgili kümeler
- Yıldırım Fırsatları
- Haftalık olarak satın alınması gereken ürünler
- Pixel Buds satın almanızla ilgili
- Kadın yağmur çizmeleri
- Sağlık konulu bir dizi kitap
- Sağlık, Zihin ve gövde
- Sağlık bölümünde sizin için önerilenler
- Fitness alanında en çok satanlar
Küme İçeriği
Geliştiricilerin, öneri kümelerini yayınlarken Kullanıcı, geliştiricinin uygulamasında oturum açmıştır.
Kullanıcı oturum açtığında
Kullanıcı, geliştirici uygulamasında oturum açmışsa uygulama veya içerik kümelerinden çıkarılabilir. Çünkü kişiselleştirilmiş ve kullanıcı tarafından oluşturulan içerikler kullanıcıyla daha alakalıysa ve Google yüzeyinden geliştirici uygulamasını ziyaret edin.
- Kişiselleştirilmiş öneriler yayınlanabilir.
- Aşağıda, bazı kişiselleştirilmiş öneri örnekleri verilmiştir:
- Kullanıcının izleme geçmişine göre sizin için seçilenler.
- Kullanıcının okuma geçmişindeki kitaplara benzer kitaplar.
- Kullanıcının en sevdiği sanatçıların şarkıları.
- Aşağıda, bazı kişiselleştirilmiş öneri örnekleri verilmiştir:
- Kullanıcı tarafından oluşturulan içerik kitaplıkları yayınlanabilir.
- Kullanıcı tarafından oluşturulan içerik kitaplığına dair bazı örnekleri aşağıda bulabilirsiniz:
- Kullanıcının geliştirici uygulamasındaki izleme listesi.
- Kullanıcının geliştiriciden en sevdiği sanatçıların yer aldığı bir liste uygulamasını indirin.
- Kullanıcı tarafından oluşturulan içerik kitaplığına dair bazı örnekleri aşağıda bulabilirsiniz:
Öneri türü | İçerik güncelliği stratejisi | İçerik güncelliği kuralı |
---|---|---|
Kişiselleştirilmiş öneriler | Esnek Önerileri günde bir kez güncellemenizi öneririz. Kullanıcılar her gün yeni öneriler görebilir. |
Çünkü kullanıcılar, sitenizin nasıl bir hizmet veya içerik güncelliği nasıl sağlanacağına, yumuşak. |
Kullanıcı tarafından oluşturulan içerik kitaplıkları | Yüksek düzey Kullanıcılar sayfadan çıktıkça içerik kitaplığını güncellemenizi öneririz. geliştirici uygulaması. |
Bu içeriğin, Google Görüntülü Reklam Ağı'nda görüntülenen verilerle Google yüzeyleri. Bunun nedeni, kişiselleştirilmiş önerilerin aksine Kullanıcı da aynı içerikten ibarettir. Proje süresinde yayınlamak kullanıcıların kafasını karıştırır. Bu nedenle, içerik güncelliği stratejisi, katı olmalıdır. |
Kullanıcı oturum açmadığında
Kullanıcı geliştirici uygulamasında oturum açmamışsa yine de yayınlamanızı öneririz Chrome Web Mağazası'ndaki geliştirici uygulamasını teşekkür ederiz.
- Kişiselleştirilmemiş öneri kümeleri yayınlanmalıdır.
- Aşağıda, kişiselleştirilmemiş önerilerle ilgili bazı örnekler verilmiştir:
- Bu yıl okunan en popüler 10 kitap.
- Yeni çıkan filmler.
- Trend olan podcast'ler.
- Aşağıda, kişiselleştirilmemiş önerilerle ilgili bazı örnekler verilmiştir:
- Bir oturum açma kartı yayınlayın.
- Geliştiriciler, kullanıcıları geliştirici uygulamasında oturum açmaya teşvik etmek için bir oturum açma kartı yayınlamayı seçebilir. Bununla birlikte, öneri kümesi olabilir. Daha fazla bilgi için aşağıdaki bölüme göz atın Oturum açma kartı yayınlama.
Öneri türü | İçerik güncelliği stratejisi | İçerik güncelliği kuralı |
---|---|---|
Kişiselleştirilmemiş öneriler | Esnek Önerileri her ay bir kez güncellemenizi öneririz. değer. |
Çünkü kullanıcılar, sitenizin nasıl bir hizmet veya içerik güncelliği nasıl sağlanacağına, yumuşak. |
Oturum açma kartı önerileri | Yüksek düzey Kullanıcılar çıkış yaptıkça oturum açma kartı durumunu güncellemenizi öneririz. emin olun. Kullanıcılar oturum açtıktan sonra, geliştiricilerin
|
Oturum açma durumunun Google teşekkür ederiz. Kullanıcının Google'ın kendi sayfasında oturum açma kartını görmesi kafa karıştırıcıdır. oturum açtıklarında gösterilir. Bu nedenle, içerik güncelliği, katı olmalıdır. |
Devam kümeleri
Geliştiriciler, devamlılık kümelerini yayınlarken Kullanıcı, geliştiricinin uygulamasında oturum açmıştır.
Kullanıcı oturum açtığında
- Kullanıcı tarafından oluşturulan devam kümeleri yayınlanmalıdır.
- Kullanıcılar tarafından oluşturulan devamlılık kümelerine dair bazı örnekleri aşağıda bulabilirsiniz:
- Kullanıcının kaldığı yerden izlemeye devam edin.
- Kullanıcının kaldığı yerden okumaya devam edin.
- Kullanıcılar tarafından oluşturulan devamlılık kümelerine dair bazı örnekleri aşağıda bulabilirsiniz:
Devam türü | İçerik güncelliği stratejisi | İçerik güncelliği kuralı |
---|---|---|
Kullanıcı tarafından oluşturulan devam kümeleri | Yüksek düzey Kullanıcılar sayfadan çıktıkça içerik kitaplığını güncellemenizi öneririz. geliştirici uygulaması. |
Bu içeriğin, Google Görüntülü Reklam Ağı'nda görüntülenen verilerle Google platformlarından. Bunun nedeni, kişiselleştirilmiş önerilerin aksine Kullanıcı da aynı içerikten ibarettir. Proje süresinde yayınlamak kullanıcıların kafasını karıştırır. Bu nedenle, içerik güncelliği stratejisi, katı olmalıdır. |
Kullanıcı oturum açmadığında
Devam yolculukları, temel olarak oturum açmış kullanıcılara yöneliktir. ancak, oturumu kapalı kullanıcılar için devam kümeleri de yayınlayabilirsiniz. Uygulamanız misafir oturumlarını destekliyorsa.
Kullanıcı Yönetimi Kümesi
Kullanıcı Yönetimi Kümesinin temel amacı, kullanıcıları belirli işlemleri ekleyebilirsiniz. Oturum açma işlemi, kullanıcıları uygulama tabelasına yönlendirir Uygulamanın içerik yayınlayabilmesi (veya daha kişiselleştirilmiş bilgiler sunabilmesi) için sayfada içerik)
Oturum Açma Kartı
Özellik | Şartlar | Açıklama |
---|---|---|
İşlem URI'sı | Zorunlu | İşlem için derin bağlantı (ör. uygulamada oturum açma sayfasına gider) |
Resim | İsteğe bağlı: Sağlanmamışsa başlık belirtilmelidir |
Kartta Gösterilen Resim 1264x712 çözünürlüklü, 16x9 en boy oranında resimler |
Başlık | İsteğe bağlı: Sağlanmamışsa resim sağlanmalıdır | Karttaki Başlık |
İşlem Metni | İsteğe bağlı | CTA'da (ör. Oturum Aç) gösterilen metin |
Alt başlık | İsteğe bağlı | Kartta İsteğe Bağlı Alt Başlık |
Kotlin
var SIGN_IN_CARD_ENTITY = SignInCardEntity.Builder() .addPosterImage( Image.Builder() .setImageUri(Uri.parse("http://www.x.com/image.png")) .setImageHeightInPixel(500) .setImageWidthInPixel(500) .build()) .setActionText("Sign In") .setActionUri(Uri.parse("http://xx.com/signin")) .build() appEngagePublishClient.publishUserAccountManagementRequest( PublishUserAccountManagementRequest.Builder() .setSignInCardEntity(SIGN_IN_CARD_ENTITY) .build());
Java
SignInCardEntity SIGN_IN_CARD_ENTITY = new SignInCardEntity.Builder() .addPosterImage( new Image.Builder() .setImageUri(Uri.parse("http://www.x.com/image.png")) .setImageHeightInPixel(500) .setImageWidthInPixel(500) .build()) .setActionText("Sign In") .setActionUri(Uri.parse("http://xx.com/signin")) .build(); appEngagePublishClient.publishUserAccountManagementRequest( new PublishUserAccountManagementRequest.Builder() .setSignInCardEntity(SIGN_IN_CARD_ENTITY) .build());
Kullanıcılar oturum açtıktan sonra, geliştiricilerin
deleteUserManagementCluster()
API.
Yayınlama Durumunu Güncelle
Şirket içi işle ilgili herhangi bir nedenle kümelerden hiçbiri yayınlanmazsa yayınlama durumunu, updatePublishStatus API'si. Bu önemlidir, çünkü :
- İçerik yayınlandığında bile tüm senaryolarda durumu bildirmek (STATUS == YAYINLANDI), bunu kullanan gösterge tablolarının doldurulması için açık durumunu kullanarak entegrasyonunuzun durumunu ve diğer metriklerini aktarın.
- İçerik yayınlanmadıysa ancak entegrasyon durumu bozuk değilse (STATUS == NOT_PUBLISHED) kullanıyorsanız Google, uygulamada uyarıları tetiklemekten kaçınabilir. sağlık kontrol panelleridir. İçeriğin şu nedenden dolayı yayınlanmadığını onaylar: beklenen durumu ifade eder.
- Geliştiricilerin, verilerin ne zaman yayınlandığı ve ne zaman yayınlanmadığıyla ilgili bilgi edinmesine yardımcı olur.
- Google, kullanıcıları belirli işlemleri yapmaya teşvik etmek için uygulama içeriğini görmelerine veya içeriğin üstesinden gelmelerine yardımcı olur.
Uygun yayınlama durum kodlarının listesi şunlardır :
// Content is published
AppEngagePublishStatusCode.PUBLISHED,
// Content is not published as user is not signed in
AppEngagePublishStatusCode.NOT_PUBLISHED_REQUIRES_SIGN_IN,
// Content is not published as user is not subscribed
AppEngagePublishStatusCode.NOT_PUBLISHED_REQUIRES_SUBSCRIPTION,
// Content is not published as user location is ineligible
AppEngagePublishStatusCode.NOT_PUBLISHED_INELIGIBLE_LOCATION,
// Content is not published as there is no eligible content
AppEngagePublishStatusCode.NOT_PUBLISHED_NO_ELIGIBLE_CONTENT,
// Content is not published as the feature is disabled by the client
// Available in v1.3.1
AppEngagePublishStatusCode.NOT_PUBLISHED_FEATURE_DISABLED_BY_CLIENT,
// Content is not published as the feature due to a client error
// Available in v1.3.1
AppEngagePublishStatusCode.NOT_PUBLISHED_CLIENT_ERROR,
// Content is not published as the feature due to a service error
// Available in v1.3.1
AppEngagePublishStatusCode.NOT_PUBLISHED_SERVICE_ERROR,
// Content is not published due to some other reason
// Reach out to engage-developers@ before using this enum.
AppEngagePublishStatusCode.NOT_PUBLISHED_OTHER
İçerik, bir kullanıcının giriş yapmaması nedeniyle yayınlanmazsa Oturum Açma kartını yayınlamanızı öneririz. Sağlayıcılar herhangi bir nedenle Oturum Açma kartını yayınlayamazsa updatePublishStatus API'sini çağırmanızı öneririz. NOT_PUBLISHED_REQUIRES_SIGN_IN durum koduyla
Kotlin
client.updatePublishStatus( PublishStatusRequest.Builder() .setStatusCode(AppEngagePublishStatusCode.NOT_PUBLISHED_REQUIRES_SIGN_IN) .build())
Java
client.updatePublishStatus( new PublishStatusRequest.Builder() .setStatusCode(AppEngagePublishStatusCode.NOT_PUBLISHED_REQUIRES_SIGN_IN) .build());
Küme yayınlama için WorkManager
Şu işlemler için WorkManager'ı kullanmanızı öneririz: çünkü arka plan çalışması için önerilen çözümdür Bu yaklaşımda uygulama hem fırsata dayalı hem de garantili olmalıdır.
- WorkManager, en kısa sürede arka plan çalışmanızı gerçekleştirir.
- WorkManager, çalışmanızı çeşitli farklı alanlarla birlikte başlatmanıza (kullanıcı uygulamanızdan ayrılsa bile)
Kullanıcı uygulamadan ayrıldığında bir arka plan başlatmanızı öneririz.
öneri kümeleriyle birlikte devam kümeleri yayınlayan bir iş ilanıdır. CEVAP
bu mantığı yönetmenin en iyi yolu
Activity.onStop()
Kullanıcı uygulamadan ayrıldığında.
Önerilerimiz
PeriodicWorkRequest
kullanarak 24 saatte bir küme yayınlayan yinelenen bir iş planlayabilirsiniz. Bir
CANCEL_AND_REENQUEUE
politikası uyguluyorsanız geliştiriciler, WorkManager'ın
kullanıcı uygulamadan her ayrıldığında güncel veriler sunar. Bu sayede karşılaşılabilecek
kullanıcıların eski verileri görmesini engelleyebilir.
Aşağıdaki örnekte bu durum gösterilmektedir:
// Define the PublishClusters Worker requiring input
public class PublishClusters extends Worker {
public PublishClusters(Context appContext, WorkerParameters workerParams) {
super(appContext, workerParams);
}
@NonNull
@Override
public Result doWork() {
// publish clusters
}
...
}
public static void schedulePublishClusters(Context appContext) {
// Create a PeriodicWorkRequest to schedule a recurring job to update
// clusters at a regular interval
PeriodicWorkRequest publishClustersEntertainmentSpace =
// Define the time for the periodic job
new PeriodicWorkRequest.Builder(PublishClusters.class, 24, TimeUnit.HOURS)
// Set up a tag for the worker.
// Tags are Unique identifier, which can be used to identify that work
// later in order to cancel the work or observe its progress.
.addTag("Publish Clusters to Entertainment Space")
.build();
// Trigger Periodic Job, this will ensure that the periodic job is triggered
// only once since we have defined a uniqueWorkName
WorkManager.getInstance(appContext).enqueueUniquePeriodicWork(
// uniqueWorkName
"publishClustersEntertainmentSpace",
// If a work with the uniqueWorkName is already running, it will cancel the
// existing running jobs and replace it with the new instance.
// ExistingPeriodicWorkPolicy#CANCEL_AND_REENQUEUE
ExistingPeriodicWorkPolicy.CANCEL_AND_REENQUEUE,
// Recurring Work Request
publishClustersEntertainmentSpace);
}
Yayın amaçlarını işleme
Bir iş üzerinden publish Content API çağrıları yapmanın yanı sıra
ayarlamak için gereken
Almak için BroadcastReceiver
bir içerik yayınlama isteğidir.
Bununla birlikte, geliştiriciler yalnızca yayınlara bağlı kalmamaya dikkat etmelidir, çünkü yalnızca belirli senaryolarda (çoğunlukla uygulama için ve veri senkronizasyonunu zorunlu kılmayı öğreteceğim. Bu reklamlar yalnızca Etkileşim Hizmet, içeriğin eski olabileceğini belirler. Bu şekilde daha fazla kullanıcının yeni bir içerik deneyimi yaşayacağına dair güven uygulaması uzun süredir açılmamış.
BroadcastReceiver
aşağıdaki iki şekilde ayarlanmalıdır:
BroadcastReceiver
sınıfının bir örneğiniContext.registerReceiver()
. Bu, uygulamalardan iletişim kurulmasını hale getirebilirsiniz.<receiver>
AndroidManifest.xml
dosya Bu, uygulamanın yayın almasına izin verir amaçlarına ulaşmasını sağlar ve ayrıca uygulamanın, uygulama daha iyi olur.