检查 tab/page 是否固定在 Safari App Extension 中

Check if tab/page is pinned in Safari App Extension

我正在写一个 Safari App Extension,它将所有打开的选项卡作为 url。稍后我想打开它们。 我面临的问题是我找不到用于检查选项卡(页面)是否为 pinned 的 API。 这导致打开所有收集的 url 也会打开所有固定的 url 的问题,这是不希望的。

有没有办法确定 tab/page 是否已固定?

经过进一步研究,我设法解决了这个问题。 直接回答问题 - 目前没有 API 询问是否固定了 tab/page。但是有一种解决方法可以检查这一点。

有一个讨论 here and another answer here 讨论了 SFSafariTabgetContainingWindow(completionHandler:) 将 return nil 如果标签被固定,技术上固定的标签属于所有 windows,而不是一个 window.

因此,如果选项卡被固定,nil 被 return 编辑为包含 window。