是否可以使用Scripting Bridge打开应用程序,但将其移至后台?

时间:2012-12-06 06:15:04

标签: objective-c xcode scripting-bridge

我正在尝试打开Spotify应用程序,并将其移至后台。我可以轻松打开Spotify with

SpotifyApplication *Spotify = [SBApplication applicationWithBundleIdentifier:@"com.spotify.client"];
[Spotify activate];

但Spotify走到前台,遮住我的窗户。使用iTunes,我可以使用

iTunesApplication *iTunes = [SBApplication applicationWithBundleIdentifier:@"com.apple.iTunes"];
[iTunes run];

然而,这是一种特定于iTunes的方法。这可能吗?

1 个答案:

答案 0 :(得分:2)

您是否愿意使用NSAppleScript来做这件事?

NSAppleScript *script = [[NSAppleScript alloc]
    initWithSource:@"tell app \"Spotify\" to launch"];
NSDictionary *errorInfo;
[script executeAndReturnError:&errorInfo];
if (errorInfo) {
    NSLog(@"error: %@", errorInfo);
}

您必须使用应用程序名称,而不是其包ID。