从Safari应用程序扩展关闭选项卡

从Safari应用程序扩展关闭选项卡,safari,tabs,safari-extension,safari-app-extension,Safari,Tabs,Safari Extension,Safari App Extension,我很难从Safari应用程序扩展中找到关闭选项卡的方法 我可以用它打开一个选项卡 SFSafariApplication.getActiveWindow(completionHandler: { $0?.openTab(with: url, makeActiveIfPossible: true) }) 但是,返回的SFSafariTab和SFSafariWindow都没有close()(或performClose()) 我可以向扩展的JS端发送一条友好消息,并运行window.cl

我很难从Safari应用程序扩展中找到关闭选项卡的方法

我可以用它打开一个选项卡

SFSafariApplication.getActiveWindow(completionHandler: { 
    $0?.openTab(with: url, makeActiveIfPossible: true) 
})
但是,返回的SFSafariTab和SFSafariWindow都没有
close()
(或
performClose()

我可以向扩展的JS端发送一条友好消息,并运行
window.close(),但这仅限于通过Javascript创建的选项卡。用户打开的任何选项卡或
target=“\u blank”
均被禁用


第三个选项似乎是不推荐使用的SafariJS扩展API。我还没有成功地完成这项工作,把时间投入到这样一个死胡同里让人觉得很恶心。

现在在safari 12.1中有关闭当前选项卡的功能

/// Closes this tab. If this is the last tab in its window, the window is also closed.
- (void)close SF_AVAILABLE_MAC_SAFARI(12_1);

现在在safari 12.1中,有关闭当前选项卡的功能

/// Closes this tab. If this is the last tab in its window, the window is also closed.
- (void)close SF_AVAILABLE_MAC_SAFARI(12_1);