繁体   English   中英

在不显示Safari UI的情况下,在后台使用URL打开Safari应用程序

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM