我正在尝试删除放置在文件中的“com.apple.quarantine”属性
~/图书馆/容器/....../图书馆/应用程序支持。
使用 NSTask 和 xattr 会导致控制台中出现“不允许操作”消息。作为第二个选项,我使用 removexattr() 尝试了标头 xattr.h。
我还尝试将 LSFileQuarantineEnabled 添加到 Info.plist。从终端手动调用 xattr 有效。
似乎沙盒阻止 xattr 使用 Objective-C 删除属性。
我正在尝试删除放置在文件中的“com.apple.quarantine”属性
~/图书馆/容器/....../图书馆/应用程序支持。
使用 NSTask 和 xattr 会导致控制台中出现“不允许操作”消息。作为第二个选项,我使用 removexattr() 尝试了标头 xattr.h。
我还尝试将 LSFileQuarantineEnabled 添加到 Info.plist。从终端手动调用 xattr 有效。
似乎沙盒阻止 xattr 使用 Objective-C 删除属性。
在沙盒应用程序中运行辅助二进制文件...
对于第一次测试:
codesign -s <certificate A> <binary>
如果要将其发送到 Mac App Store,请使用正确的证书。
我用来启动/调用辅助二进制文件的代码如下:
NSString * resourcePath = [[NSBundle mainBundle] resourcePath];
NSTask *testbin = [[NSTask alloc] init];
NSString * path = [resourcePath stringByAppendingString:@"/testbin"];
[testbin setLaunchPath:path];
[testbin launch];
[testbin waitUntilExit];
无需复制或移动文件 ;-)