鉴于它的路径,我想获取应用程序的捆绑标识符。
例如:
NSString* vlcFilePath = @"/Applications/VLC.app"
如果它是活动应用程序,我知道如何获取捆绑标识符NSWorkspace
,但在这种情况下,它不一定是活动应用程序。
鉴于它的路径,我想获取应用程序的捆绑标识符。
例如:
NSString* vlcFilePath = @"/Applications/VLC.app"
如果它是活动应用程序,我知道如何获取捆绑标识符NSWorkspace
,但在这种情况下,它不一定是活动应用程序。
NSBundle 有一个bundleIdentifier
方法。如果尚未加载/运行,这将不会运行或加载应用程序:
NSString *vlcFilePath = @"/Applications/VLC.app";
NSBundle *bundle = [NSBundle bundleWithPath:vlcFilePath];
NSLog (@"%@", [bundle bundleIdentifier]);
打开应用程序包的 plist 文件并从那里读取它:
NSDictionary *plistInfo = [NSDictionary dictionaryWithContentsOfFile:[vlcPath stringByAppendingPathComponent:@"Contents/Info.plist"]];
NSLog(@"VLC bundle identifier = %@", [plistInfo objectForKey:@"CFBundleIdentifier"]);