[英]Open the Safari app with URL in background without showing the Safari UI
我想从Safari中当前的Cocoa应用程序中打开一个URL,但事实是我不希望Safari UI对用户可见。 即Safari应该在后台执行,而不显示其中发生了什么。 可能吗 ?
如果是,请告诉方法。
您可以使用WebView
类在Web视图中打开URL,如果不是强制性的,则不要使WebView对用户可见。
要么
您可以使用Scripting Bridge
框架来最小化应用程序的浏览器,或者在打开URL后使用头文件Safari.h
其他方法在后台运行它。 您可以通过此链接来了解有关Scripting Bridge的更多信息。 对于您的任务,请执行以下步骤:
使用以下终端命令为野生动物园生成头文件:
sdef /Applications/Safari.app | sdp -fh --basename Safari
现在,检查您的主文件夹或从中执行终端cmd的当前目录,以查看文件Safari.h
将此文件拖放到您的项目中。 将ScriptingBridge.Framework添加到您的项目。
导入头:
#import <ScriptingBridge/ScriptingBridge.h>
#import "Safari.h"
现在,在打开网址后,使用下面的代码隐藏野生动物园:
SafariApplication* sfApp = [SBApplication applicationWithBundleIdentifier:@"com.apple.Safari"];
SafariWindow* win = [[sfApp windows]objectAtIndex:0];
[win setVisible:FALSE];
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.