我发现到目前为止发送到的路径application:openURL:sourceApplication:annotation:
是:
file://localhost/private/var/mobile/Applications/<GUID>/Documents/Inbox/file
要检查我即将执行的文件系统操作是否确实可能成功(并且给我的 url 不是沙箱之外的位置),看起来我必须这样做:
NSString* hdurl = [[@"file://localhost/private" stringByAppendingString:NSHomeDirectory()] stringByAppendingString: @"/"];
NSString* path = url.absoluteString;
if ([path hasPrefix:hdurl]) {
// now ready to e.g. call fopen on: [path substringFromIndex:@"file://localhost".length]
现在,我似乎隐约记得(这可能是错误的)过去我看到过使用file:///
样式 URL。这显然会导致此代码失败。
我怎么知道它总是会给我一个file://localhost
URL 前缀?
Apple关于 URL 的文档奇怪地缺少关于文件 URL 的部分。