Как включить расширение приложения Safari программным способом?
Я разрабатываю расширение приложения Safari внутри приложения macOS. Когда пользователь устанавливает это приложение, расширение добавляется в Safari, но по умолчанию оно отключено. Мы можем определить состояние расширения с помощью класса SFSafariExtensionManager через его метод getStateOfSafariExtension.
Теперь я хочу включить состояние расширения программно, если оно отключено. Как я могу этого достичь? Или у кого-нибудь есть идеи, где хранятся настройки предпочтений / расширений приложения в macOS?
1 ответ
Вы можете создать кнопку, например "Открыть настройки расширения", чтобы отобразить настройки Safari непосредственно для вашего расширения, после чего пользователь мог бы включить его.
Код для вашего приложения:
import SafariServices
func enableExtension () {
SFSafariApplication.showPreferencesForExtension(withIdentifier: YOUR_EXTENSION_IDENTIFIER) { (error) in
NSLog("Error \(String(describing: error))")
}
}
SFSafariApplication
может использоваться только в приложении Какао (не расширение).