iOS中使用iCloud一些需要注意的地方(Xcode7.2)

本文详细介绍了如何在iOS应用中使用iCloud进行文件管理与存储,包括解决TeamID无效的问题、如何在iOS设备上查看iCloud中文件的实际名称等关键信息。通过将文件放入iCloud容器根目录下的Documents文件夹下,可以实现更清晰地查看文件名。本文旨在帮助初次接触iCloud的开发者解决常见问题并提供实用指导。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处.
如果觉得写的不好请多提意见,如果觉得不错请多多支持点赞.谢谢! hopy ;)


在自己的App中如何使用iCloud有很多文章可以查阅,这里把本猫遇到的一些问题着重提一下,希望可以帮助到初次接触的童鞋们.

1.使用TeamId无效的解决

一些文章指出在调用NSFileManager的实例方法URLForUbiquityContainerIdentifier:时,可以传递一个组合的容器ID,也可以传递nil.如果传递nil则表示取得iCloud中第一个容器的URL(如果你有多个容器的话).

如果传递一个实际的容器ID则apple希望你按照TeamID.BundleID的组合方式生成该ID(这是某本书上说的).但实际操作下来,用此方法返回的容器URL总是为nil,TeamID是从开发者网站中的开发者ID描述页面获得的.

但是如果按上所述参数传递nil则可以获取到容器URL.

这时打开Xcode为你生成的.entitlements文件可以看到其中的TeamID不是所谓的TeamID,而仅仅是字符串”iCloud”:

这里写图片描述

所以我们在代码中将TeamID改为iCloud就可以了,另外我尝试直接在Xcode的Capabilities中修改其前缀:

这里写图片描述

但是编译时提示出错,大概意思是iCloud前缀必须以iCloud开头.

但我不排除有其他方法可以做到修改该前缀.

2.如何内在iOS设备上看到iCloud中实际的文件名

大家知道在iOS设备上,比如iPhone的iCloud设置里可以看到每个使用iCloud的App,其中我们可以看到App在iCloud中保存的文件.

但是有些童鞋可能发现自己写的App在iCloud中看不到对应的文件名,而只是显示一个笼统的大小:

这里写图片描述

那么如何让其显示特定的文件呢?

其实很简单,只要将你的文件夹或是文件放到iCloud容器根目录下的Documents文件夹下即可.

这里写图片描述

如上图所示,我在Documents文件夹中建立了MyString.txt文件和Tools文件夹.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值