我正在开发一个macOS应用程序内的Safari App Extension。当用户安装此应用程序时,该扩展程序将添加到Safari,但默认情况下已禁用。我们可以通过其getStateOfSafariExtension方法使用SFSafariExtensionManager类来检测扩展状态。
现在我想以编程方式启用扩展状态,如果它被禁用。我怎样才能做到这一点?或者有人知道首选项/应用扩展程序设置存储在macOS中的哪些位置?
您可以创建一个按钮,例如“打开扩展程序首选项”,直接为您的扩展程序显示Safari偏好设置,然后用户就可以启用它。
您的应用的代码:
import SafariServices
func enableExtension () {
SFSafariApplication.showPreferencesForExtension(withIdentifier: YOUR_EXTENSION_IDENTIFIER) { (error) in
NSLog("Error \(String(describing: error))")
}
}
SFSafariApplication
只能在Cocoa app中使用(不能扩展)。