如何以编程方式启用Safari App Extension?

问题描述 投票:0回答:1

我正在开发一个macOS应用程序内的Safari App Extension。当用户安装此应用程序时,该扩展程序将添加到Safari,但默认情况下已禁用。我们可以通过其getStateOfSafariExtension方法使用SFSafariExtensionManager类来检测扩展状态。

现在我想以编程方式启用扩展状态,如果它被禁用。我怎样才能做到这一点?或者有人知道首选项/应用扩展程序设置存储在macOS中的哪些位置?

safari macos-high-sierra safari-app-extension
1个回答
0
投票

您可以创建一个按钮,例如“打开扩展程序首选项”,直接为您的扩展程序显示Safari偏好设置,然后用户就可以启用它。

您的应用的代码:

import SafariServices

func enableExtension () {
    SFSafariApplication.showPreferencesForExtension(withIdentifier: YOUR_EXTENSION_IDENTIFIER) { (error) in
        NSLog("Error \(String(describing: error))")
    }
}

SFSafariApplication只能在Cocoa app中使用(不能扩展)。

© www.soinside.com 2019 - 2024. All rights reserved.