Safari 16: system requirements for syncing extensions

Syncing Safari web extensions across devices and platforms is a new feature in Safari 16. I am attempting to investigate this feature in regards to our Safari web extensions, and I have some questions in regards to the intended behavior under various system conditions.

  • Note that I have attempted to configure our apps to play by the sync rules without success, and these questions are an attempt to narrow down the scope of the problem before upgrading and/or installing system software on multiple devices.

App Store versus Local Builds

I would like to be able to test things out with entirely local builds, but I can imagine that the "iCloud download" trigger (which I'm told is how syncing is exposed to the user) might require a Store version of the corresponding app that is properly sync-configured.

  1. Presuming everything is configured properly in my iOS and macOS apps, can I expect the syncing UI and behavior to work with purely local builds?
    • In other words, must the sync-configured apps be live in the App Store (or maybe TestFlight) in order for the syncing UI and behavior to be seen on my devices?

macOS

Safari 16 is compatible with older versions of macOS. Thus, it seems possible that extension syncing could occur when using Safari 16 on Monterey (or even Big Sur). However, reference docs for the relevant macOS Info.plist keys label them as "macOS 13.0+ Beta".

  1. Should I expect to see the "Share across devices" UI in the Extension Preferences of Safari 16 on macOS 12.6?
  2. Does the appearance of the "Share across devices" checkbox depend on the configuration of the macOS app and/or the availability of a properly configured corresponding (e.g. iOS) app? In other words, with the checkbox be hidden or disabled unless all requirements for syncing are currently satisfied?

iOS

Safari 16 is part of iOS 16 and, as such, it can only be used on devices using the latest version of iOS, which removes one variable compared to macOS. Yet, still, a question remains.

  1. Can an iOS Simulator that is logged into an iCloud account that is also being used on another device running Safari 16 (e.g. a physical macOS device) expect to be able to see the extension syncing UI and exercise the behavior (e.g install via extension prefs)?

I welcome any thoughts or answers. Thanks!

Mark Sanvitale

Answered by Engineer in 730846022

Hi Mark,

Thanks for all of the questions!

App Store versus Local Builds:

  1. The syncing UI and behavior will only work with TestFlight or App Store distributed builds - not local builds.

macOS:

  1. Extension syncing is only supported on Safari 13 on macOS Ventura. It is not supported on Safari 13 on older versions of macOS.
  2. The Share Across Devices checkbox applies to all extensions on a device, not a single extension. This means that the presence of the checkbox is based on:
  • You being on iOS 16 or macOS Ventura with Safari 16
  • Your system having an iCloud account set up
  • That iCloud account having Safari sync set up

iOS:

  • The iOS Simulator doesn't have the App Store, so I would not expect this to work.
Accepted Answer

Hi Mark,

Thanks for all of the questions!

App Store versus Local Builds:

  1. The syncing UI and behavior will only work with TestFlight or App Store distributed builds - not local builds.

macOS:

  1. Extension syncing is only supported on Safari 13 on macOS Ventura. It is not supported on Safari 13 on older versions of macOS.
  2. The Share Across Devices checkbox applies to all extensions on a device, not a single extension. This means that the presence of the checkbox is based on:
  • You being on iOS 16 or macOS Ventura with Safari 16
  • Your system having an iCloud account set up
  • That iCloud account having Safari sync set up

iOS:

  • The iOS Simulator doesn't have the App Store, so I would not expect this to work.

All questions answered! Thank you so much, @bweinstein.

Safari 16: system requirements for syncing extensions
 
 
Q