我可以在调用该方法后向用户显示该URL.但是,在文件发布(而不是更改)后,是否还有一种方法可以获得相同的URL?例如,如果用户想在另一台设备上看到该URL?
是的我可以再次调用URLForPublishingUbiquitousItemAtURL,但我怎么知道文件是否已经发布?
我的第一个想法是在iCloud中创建某种键值数据,其中包含所有文件(具有公共URL)的URL.但我无法相信没有更简单的方法……
谢谢!
丹尼尔
如果是这种情况,那么使用URLForPublishingUbiquitousItemAtURL:expirationDate:error:
它返回一个URL,可以通过电子邮件发送给用户下载文件.
- (NSURL *)URLForPublishingUbiquitousItemAtURL:(NSURL *)url expirationDate:(NSDate**)outDate error:(NSError **)error
参数:
> url – 指定云中要使用的项目的URL
分享. URL必须以从中返回的基本URL作为前缀
URLForUbiquityContainerIDentifIEr :(第61页)对应的方法
到项目的位置.
> outDate – 输入时,指向日期对象变量的指针.上
输出,此参数包含项目为no之后的日期
返回的URL可用的时间更长.您可以为此指定nil
参数如果您对日期不感兴趣
> error – 输入时,指向NSError对象的变量的指针.如果
发生错误时,此指针设置为包含的NSError对象
有关错误的信息.您可以为此参数指定nil
如果您不想要错误信息.
回报价值
用户可以使用URL在URL上下载项目的副本.如果由于任何原因无法创建URL,则返回nil.
讨论
此方法创建指定文件的快照,并将该副本放在临时iCloud位置
其他用户可以使用返回的URL访问它.快照反映了文件的内容
生成URL的时间,并且在对原始文件进行后续更改时不会更新
用户的iCloud存储.快照文件在指定的URL中保持可用,直到指定的日期为止
outDate参数,之后会自动删除.
您的应用程序必须能够访问网络才能成功进行此调用.
因此,如果您说,您需要检查它是否已成功发布,请检查错误.
资料来源:NSFileManagerClass @ Developer.Apple.com
总结以上是内存溢出为你收集整理的objective-c – iCloud:获取文件的现有公共URL全部内容,希望文章能够帮你解决objective-c – iCloud:获取文件的现有公共URL所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)