应用程序是否要求使用iCloud使用权限?

当我们需要获得访问GPS坐标的权限时,系统会自动为我们做这个。 与“应用程序内购买”类似,框架自动确认用户确实想要购买什么。

如何iCloud?

我正在开发一个应用程序拍照,我正在考虑将iCloud添加到它。 为什么不 – 如果用户可以在他/她拥有的任何设备上访问他/她的专辑,那就太酷了。 但是每张照片的尺寸都很大 200张照片和1千兆字节不见了。

你的方法是什么? 你问使用者为了使用iCloud或本地存储,或者如果它是可利用的,简单地使用iCloud?

你不需要问用户。

由于您只存储用户生成的内容,因此不存在任何问题。

请记住,用户可以从系统设置启用/禁用iCloud,并可以禁用应用程序的数据存储。
他还可以删除每个应用程序的用户数据。

如果您希望用户能够在本地存储和iCloud存储之间进行select,那么最好的办法就是检测iCloud是否可用,使用NSFileManager方法,然后,如果它启用,请确定您的应用程序是否应默认同步数据。
我想这个设置应该是默认的,因为这是一个iCloud用户的预期行为,但这取决于你

无论如何,不​​要通过一个恼人的popup窗口询问用户。 第一次启动非常烦人,有些用户可能不了解。
如果您需要提供一种configuration方式,请在您的应用程序中添加一个设置包,以便用户能够对其进行configuration。

看起来像苹果可能已经更新了他们的文件,因为其中的一些答案。 虽然我个人认为这可能会有点麻烦(不知道我看到大量的应用程序),但苹果公司build议在他们的“iClouddevise指南”中这样做。 他们甚至会给你警报本身的代码:

if (currentiCloudToken && firstLaunchWithiCloudAvailable) { UIAlertView *alert = [[UIAlertView alloc] initWithTitle: @"Choose Storage Option" message: @"Should documents be stored in iCloud and available on all your devices?" delegate: self cancelButtonTitle: @"Local Only" otherButtonTitles: @"Use iCloud", nil]; and [alert show]; }

如果用户使用您的应用程序创build或上传数据,并期望在另一台iOS或OSX设备上看到相同的数据,那么使用iCloud是有道理的。

不build议使用iCloud作为应用程序私人数据,因为您将在未经批准的情况下耗尽用户空间。

至于提示你可以询问用户是否想同步他们的数据,但是我发现这甚至比默认同步更令人困惑,因为多个设备可能没有同步而工作,并且用户不知道你的应用程序可能会处理合并。

如果用户空间不足,用户可以从设置中删除iCloud中的文件。 所以没什么大不了的