假设您有应用程序的名称,Mail.app您如何以编程方式com.apple.mail从应用程序名称获取?
Dav*_*lis 17
以下方法将为命名的应用程序返回应用程序的Bundle Identifier:
- (NSString *) bundleIdentifierForApplicationName:(NSString *)appName
{
NSWorkspace * workspace = [NSWorkspace sharedWorkspace];
NSString * appPath = [workspace fullPathForApplication:appName];
if (appPath) {
NSBundle * appBundle = [NSBundle bundleWithPath:appPath];
return [appBundle bundleIdentifier];
}
return nil;
}
Run Code Online (Sandbox Code Playgroud)
对于Mail,您可以像这样调用方法:
NSString * appID = [self bundleIdentifierForApplicationName:@"Mail"];
Run Code Online (Sandbox Code Playgroud)
appID 现在包含 com.apple.mail