Objective c 使用SBApplication在Safari中打开URL?
我正在尝试使用SBApplication告诉几个浏览器(Safari和Chrome)打开给定的URL。然而,这些应用程序只是将其视为一个文件url。下面是我正在使用的伪/JSTalk代码:Objective c 使用SBApplication在Safari中打开URL?,objective-c,cocoa,Objective C,Cocoa,我正在尝试使用SBApplication告诉几个浏览器(Safari和Chrome)打开给定的URL。然而,这些应用程序只是将其视为一个文件url。下面是我正在使用的伪/JSTalk代码: var safari = [SBApplication applicationWithBundleIdentifier:@"com.apple.Safari"]; var url = [NSURL URLWithString:@"http://apple.com/"]; [safari open:url];
var safari = [SBApplication applicationWithBundleIdentifier:@"com.apple.Safari"];
var url = [NSURL URLWithString:@"http://apple.com/"];
[safari open:url]; // results in opening "file:///http/::apple.com:"
有什么提示吗?用sdp(sdef/Applications/Safari.app | sdp-fh--basename“Safari”)创建一个Safari.h文件对查看我能做什么并没有多大帮助。只需阅读您希望使用多个浏览器打开URL即可。因此,我的回答在这里毫无帮助: 我建议让NSWorkspace打开URL:
// make an URL
NSURL *someUrl = [NSURL URLWithString:@"http://my.server.vom/" ];
if ([[NSWorkspace sharedWorkspace] openURL:someURL]) {
NSLog(@"Fine. URL opened.");
} else {
// shouldn't happen
}
关于您的问题:您是否尝试将字符串传递给Safari,而不是NSURL?强制用户使用特定浏览器确实很糟糕。