UIDocumentPickerViewController の次のコールバックで startAccessingSecurityScopedResource が常に NO を返す理由:
- (void)documentPicker:(UIDocumentPickerViewController*)in_documentPickerViewController didPickDocumentAtURL:(NSURL*)in_pickedDocumentAtURL
{
BOOL l_bStartAccessingWorked = [in_pickedDocumentAtURL startAccessingSecurityScopedResource];
....
void(^l_coordinateReadingAccessor)(NSURL*) = ^(NSURL* in_coordinateReadingURL)
{
....
};
NSFileCoordinator* l_fileCoordinator = [[[NSFileCoordinator alloc] init] autorelease];
NSError* l_error = nil;
[l_fileCoordinator coordinateReadingItemAtURL:in_pickedDocumentAtURL
options:0
error:&l_error
byAccessor:l_coordinateReadingAccessor];
[in_pickedDocumentAtURL stopAccessingSecurityScopedResource];
}
私は自分の App と Apple の NewBox の例の両方を試し、いくつかのデバイスで試しましたが、常に NO になりました。ただし、後続の「coordinateReadingItemAtURL」は問題なく機能します。