Swift

2015-07-03 20 views
6

ile varsayılan olmayan Cloudkit kabına erişme Kayıtları varsayılan Cloudkit kabına başarıyla yazabilen bir IOS 8 Uygulaması var. Şimdi bu kayıtları OS X altında farklı bir Uygulamada okumak ve işlemek istiyorum. Yeni Uygulamayı iCloud erişimi ve "Özel Kapsayıcıları belirle" seçeneğini işaretli olarak ayarladım. Bu, orijinal Uygulamanın kapsayıcısını başarıyla buldu. Yetenekler arabiriminde düzeltilecek hiçbir hata yokSwift

Tüm aramalarımda "Aynı geliştirici tarafından imzalanan iki uygulamanın aynı kapsayıcıyı paylaşması olasıdır", ancak bulabildiğim öğretici belgelerin hiçbiri bana söylenmiyor Özel bir kapsayıcıdan verilere nasıl erişilir.Tüm örneklerde 'kapsayıcı = CKContainer.defaultContainer()' ile başlıyor gibi görünüyor.Ancak, varsayılan kapsayıcıdan kayıtlara erişmek istemiyorum.Özel konteyner istiyorum.

Apple belgeleri bir init kullanmayı önerir.) yapı ama bu da beni şaşırttı. Basit bir istek gibi görünüyor. Umarım birisi bana basit bir çözüm verebilir.

cevap

9

Bu, test edilmemiş koddur, ancak bu konuda anladığım kadarıyla, özel kapsayıcılar bu kapsayıcıları birden çok uygulamada paylaşmanıza olanak tanır. Yetenekler bölmesinde, bu uygulamada kullanmayı seçtiğiniz tüm diğer uygulamalarınızda bulunan tüm kapsayıcılardan hangilerini seçebilirsiniz. Varsayılan kapsayıcı, otomatik olarak seçilmesi gereken iCloud.com.MyCompany.MyApp'dur. Artık istediğiniz hangi konteynırlar belirtilen göre, artık benim init()

let container = CKContainer(identifier: "iCloud.com.MyCompany.OneOfMyApps") 

Temelde, tanımlayıcı iCloud Yetenekleri listelenen tanımlayıcıları biridir özel kaplarda altında bölmesinde kullanarak erişebilirsiniz.

+0

Bana bir süre izin verdi - teşekkürler! – brainray

+0

@ imas145 Tanımlayıcıyı programdan programlı olarak alabilir miyim? İki kez ayarlamak hiç mantıklı değil. (biri yetkilendirmede, diğeri CKContainer'da) –