Safari 17 App Extensions (macOS Sonoma) API changes

Hello,

In the latest macOS Sonoma and Safari 17 update, Safari App Extensions that were previously running without any issues (for years) suddenly stopped working. Digging a little into the source code and debugger, I found out that basic API calls do not work anymore, for example:

SFSafariApplication.getActiveWindow { (window) in ... } or the async version: let window = await SFSafariApplication.activeWindow() getActiveWindow callback is never called and let window = await ... waits forever.

Is there anything updated in the security model of Safari 17 that I should be aware of? Or any API updates. I repeat, the extensions worked for 5 years without any issue and also work perfectly in Safari 16 and macOS Ventura.

Thank you.

Accepted Reply

See this bug, with workaround: https://github.com/lapcat/SafariExtensions/issues/41

  • Thanks. There is no workaround in the link, but useful to understand the issue.

  • The workaround is in the sample Xcode project.

  • Wow, incredible man, really appreciate it. Thank you a million.

Add a Comment

Replies

See this bug, with workaround: https://github.com/lapcat/SafariExtensions/issues/41

  • Thanks. There is no workaround in the link, but useful to understand the issue.

  • The workaround is in the sample Xcode project.

  • Wow, incredible man, really appreciate it. Thank you a million.

Add a Comment