我们可以右键单击.app文件并查看其包内容。要以编程方式打开文件,我们可以使用NSWorkspace但是如何打开应用程序的包内容?
我搜索了很多,但似乎没有解决方案。如果我错过了什么,请帮忙。
答案 0 :(得分:1)
根据评论,OP似乎想要从代码中在finder中打开应用程序的内容目录。以下行将实现:
夫特:
let appName = "Safari";
let command:NSString = String(format:"open '/Applications/%@.app/Contents'", appName);
system(command.cStringUsingEncoding(NSUTF8StringEncoding))
目标-C:
NSString *appName = @"Safari";
NSString *command = [NSString stringWithFormat:@"open '/Applications/%@.app/Contents'", appName];
system([command cStringUsingEncoding:NSUTF8StringEncoding]);
替代:
NSString *appPath = @"/Applications/Safari";
NSString *command = [NSString stringWithFormat:@"open '/%@.app/Contents'", appPath];
system([command cStringUsingEncoding:NSUTF8StringEncoding]);
答案 1 :(得分:0)
应用程序只是一个目录,show package contents只允许您将应用程序作为目录访问而不是执行它。因此,您可以访问应用程序中的文件,例如
/Applications/Safari.app/Contents/Info.plist
答案 2 :(得分:0)
这似乎有效:
NSString* contentsPath = [appPath stringByAppendingPathComponent:@"Contents"];
[[NSWorkspace sharedWorkspace] selectFile: contentsPath
inFileViewerRootedAtPath: appPath];