2016-10-02 65 views
5

我正在研究使用核心数据的应用程序,因为我认为我可以使用iCloud的核心数据提供的同步功能在iPad和iPhone之间同步数据,现在已弃用。如何访问iCloud作为iCloud的核心数据已弃用

我遇到了CloudKit,但它主要是创建和管理可由最终用户社区使用的数据,但不只是像聊天应用程序之类的数据。我的应用程序仅适用于单用户,以便用户可以在他们的Apple eco系统设备之间同步他们的数据。

我是iOS开发新手,因此了解哪种技术可以满足我的要求会很有帮助。

总之,你可以请建议我应该怎么用

  1. 如果必须存储在手机上的数据以供离线使用
  2. 然后它同步跨设备,如果用户有说iPhone,iPad和IWATCH

PS您能否请您提供一些不需要用户在保存数据时签入iCloud的内容。

回答

2

你应该看看最新的WWDC视频。 这里有一些关于CloudKit Best Practiceswhats new in cloud kit CloudKit确实有一些不错的开箱即用解决方案,您不必担心安全问题。此外,最新的功能使您能够使用通知来同步使用相同Apple ID甚至更远的应用程序,因为用户现在可以选择共享某些数据。

根据您要同步的数据量,NSUbiquitousKeyValueStore.default()也是一个选项。但只有非常少的数据

+0

我同意这一点,但用户需要在保存数据的同时登录到iCloud吗?如果是,那么这将是一个问题,如果用户没有登录 – leaner122

+0

这是真的,但我们也适用于所有其他苹果aps,如照片,信息,网页等 – user1700737

+0

我的应用程序提供图像和文字在用户选择的应用程序本身中,他们不需要与外部环境进行交互,所以我正在考虑设计它,以便它们可以在离线状态下使用。稍后与iPad或iWatch同步。为了满足这些要求,您认为Core Data + CloudKit将完成这项工作,因为不推荐使用Core Data + iCloud。 – leaner122

3

iOS10/macOS Sierra中不推荐使用CoreData/iCloud集成,并且没有替代品(至少目前为止)。

前进的道路至今:

请注意,CoreData/iCloud集成将仍然在未来的一段时间工作。正在使用它的应用程序不会突然停止工作。

+0

但是,这些都需要iCloud,因为用户需要登录到iCloud才能保存数据? – leaner122

+1

@ learner122 CloudKit确实需要用户拥有一个iCloud帐户。它为您处理所有的安全问题。 ICloud本身不被弃用。只有核心数据集成框架。对于乐团,我不知道。但Ensembles允许用户将同步数据存储到iCloud或Dropbox或其他服务。所以我的猜测是它使用了所选的服务安全和身份验证。 –

+0

所以我正在考虑使用Core Data + CloudKit来满足我编辑的问题中提到的要求。你怎么看? – leaner122