2015-04-25 24 views
5

Şimdi bir süredir CloudKit ile uğraşmaktayım, ancak CKRecordZone'un nasıl kullanılacağı hakkında gerçek bir örnek bulamıyorum. Onların kabiliyetlerini anlıyorum (özellikle abonelikler için kayıtları gruplandırma), fakat birisinin bunları kullanma konusunda gerçek bir deneyimi var mı ve hangi kavramı eşleştiriyor? Eğer belirli bir rekor bölgedeki tüm kayıtları izleyen bir CKSubscription oluşturmak istediğinizdeCloudKit CKRecordZone

Teşekkür

+2

Kendi bölgenizi oluşturmak yalnızca özel veritabanında desteklenir. Tek ek kullanım, birden fazla kaydı tek atomlu işlem olarak yazabilmenizdir. Bu dezavantaj, o bölge dışındaki kayıtlara referans verememeniz olurdu. Öyleyse ... Bunu kullanmak için iyi bir örnek düşünen var mı? –

+0

Bölgeleri kullanmadan CKModifyRecordOperation kullanarak birden çok kayıt yazabilirsiniz. –

+1

Doğru, ancak belgeler, bir bölge kullandığınızda bunların yalnızca atomik olduğunu öne sürüyor gibi görünüyor. –

cevap

5

CloudKit rekor bölgeleri size üç temel avantajı vermek:

  1. yapabilirsiniz, böylece
  2. Bu yetenekleri senkronize verir size atomik işlemleri yapmak (tüm veya değişikliklerin hiçbiri uygulanır alacak) verir Sunucuyla her konuştuğunuzda kayıtların tam listesini indirmenin tersine, bir önceki zaman noktasındaki kayıt değişikliklerini (bir değişiklik belirteciyle) getir.
  3. Birbirine ait kayıtları mantıksal olarak gruplamak için kullanışlıdır.
+1

Böyle kayıtların mantıksal olarak gruplandırılmasının yararlı olacağı bir örnek verebilir misiniz? – Prasanna

5

Ayrıca, (bölge tabanlı sorgu tabanlı yerine,) yararlı olabilir.

4

Apple News uygulaması, kullanıcının bilgileri için özel veritabanında iki bölge kullanır: Okuma ve Okuma Okuma. ReadingList, işaretlenmiş olan makale makale kimliklerini saklar; ReadingHistory, okunan haber makalesi kimliklerini saklar. Makale kimliklerini iki farklı bölgeye ayırarak, bunların verimli bir şekilde senkronize edilmesini sağlar. Örneğin, bir makale yalnızca bir aygıtta (ve işaretli değil) okunduğunda, diğer aygıt, ReadingHistory bölgesinin değiştiğine dair bir bildirim alırsa, yalnızca bu bölgeyi her ikisini birden eşitlemek zorundadır. Daha fazla bilgi için, Haber uygulamasının senkronizasyon davranışı here'daki tüm yazımı okuyabilirsin.

İlgili konular