【问题标题】:Give a new url to the browser with Swift macOS使用 Swift macOS 为浏览器提供一个新的 url
【发布时间】:2019-09-14 14:16:12
【问题描述】:

我可以找到一种打开特定浏览器的方法(使用 macOS 和 Swift):

@IBAction func frx(_ sender: NSButton) {
      NSWorkspace.shared.open(URL(fileURLWithPath: "/Applications/Firefox.app"))
}

是否可以在稍后给那个 Firefox 窗口一个新的 url 并重新加载页面? (不是在我启动应用程序时提供地址,而是稍后提供)

【问题讨论】:

  • @Willeke。谢谢你。这个问题是不同的,并不能解决我的问题。我对 macOS 和 Swift 很陌生。据我了解,该代码似乎很旧,因为它给出了很多错误。另一方面,我需要稍后提供地址,而不是在我启动应用程序时。所以,我的第一个问题是保存该窗口以便稍后返回。
  • 有人发布了另一个问题的答案,应该可以解决您的问题:stackoverflow.com/a/41431381/6782707
  • @Edric。谢谢,但作为另一种情况,即打开带有 url 的浏览器,但我正在寻找的是更改已经打开的浏览器的 url。

标签: swift macos


【解决方案1】:
struct Firefox {
    static func open(path: String) {
        let ff_url = NSURL(fileURLWithPath: "/Applications/Firefox.app", isDirectory: true) as URL

        if let www_url = URL(string: path) {
            NSWorkspace.shared.open([www_url], withApplicationAt: ff_url, configuration: NSWorkspace.OpenConfiguration()) { app, error in
                if let error = error {
                    // handle error
                }
                if let _ = app {
                    // handle success
                }
            }
        } else {
            // handle error
        }
    }
}

【讨论】:

    猜你喜欢
    • 2015-10-24
    • 1970-01-01
    • 2020-05-06
    • 1970-01-01
    • 2018-08-18
    • 2016-01-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多