3

所以我有一个分享扩展的应用程序,每个都有自己的目标。应用程序捆绑标识符的核心是com.company.app,共享扩展名是com.company.app.share。每个都有自己的权利文件,核心应用程序为App Groups -> group.com.company.app,并且共享扩展名相同。这两个软件包标识符都列在苹果开发者网站上,但由于某种原因,如何将文件添加到App Group共享目录?

我似乎没有写入共享private/var/mobile/Containers/Shared/AppGroup/XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX/Library/Caches/目录的权限。

该错误消息我得到的是: You don’t have permission to save the file “Caches” in the folder “Library”.

该目录正在保存这样的:

GetZipURLInItems(self.extensionContext.inputItems, ^(NSURL *url, NSError *error) { 
    if (error == nil) { 

     NSURL *containerURL = [[[NSFileManager defaultManager] containerURLForSecurityApplicationGroupIdentifier:GroupIdentifier] URLByAppendingPathComponent:@"Library/Caches"]; 
     NSLog(@"EXT: containerURL: %@", containerURL); 

     [WPZipArchive unzipFileAtPath:[url path] toDestination:[containerURL absoluteString]]; 

     [self listDirectoryAtPath:[containerURL absoluteString]]; 
    }}); 

什么我很想念这里?

+0

你打算如何写信给它?看看使用NSFileManager:containerURLForSecurityApplicationGroupIdentifier – Gruntcakes

+0

@Essenceofchickens我更新了原始问题,以显示我如何保存目录。 – kiaraRobles

+0

你有没有尝试过没有URLByAppendingPathComponent:部分? – Gruntcakes

回答

1

该问题实际上是使用[url absoluteString] vs [url path],将所有url更改为path解决了权限错误。

相关问题