当前位置 : 主页 > 手机开发 > ios >

在iOS上保存iCloud Drive安全范围URL(UIDocumentPickerViewController)

来源:互联网 收集:自由互联 发布时间:2021-06-11
我正在尝试保存从iCloud文档选择器返回的安全范围URL(UIDocumentPickerViewController) 文件说明: If the URL is not a ubiquitous URL, save a bookmark to the file using the bookmarkDataWithOptions:includingResourceValuesF
我正在尝试保存从iCloud文档选择器返回的安全范围URL(UIDocumentPickerViewController)

文件说明:

If the URL is not a ubiquitous URL, save a bookmark to the file using
the
bookmarkDataWithOptions:includingResourceValuesForKeys:relativeToURL:error:
method and passing in the NSURLBookmarkCreationWithSecurityScope
option. Calling this method creates a bookmark containing a
security-scoped URL that you can use to open the file without further
user intervention.

但是,编译器说iOS上不支持NSURLBookmarkCreationWithSecurityScope.

谁知道这里发生了什么……?

进一步挖掘后,结果是选项:
NSURLBookmarkCreationWithSecurityScope
在 IOS中创建书签数据时根本不需要.它是OS X的一个选项.您可以为选项字段传递nil.我认为Apple的文档最让人困惑.
但是,您需要致电:
startAccessingSecurityScopedResource
在创建书签之前,确保在继续之前调用返回1(成功).否则,书签创建将失败.以下是示例代码:
if([url startAccessingSecurityScopedResource] == 1){
     NSError *错误;
     NSData * bookmark = [url bookmarkDataWithOptions:nil
                     includingResourceValuesForKeys:无
                                      relativeToURL:无
                                                误差:&安培;错误];
     如果(错误)
        //处理错误情况
     其他
        //保存你的书签
   }
 [url stopAccessingSecurityScopedResource];

苹果公司的文件再次出现了混乱!我花了很多时间才发现这一点.希望这可以帮助.

网友评论