【发布时间】:2019-03-12 20:41:34
【问题描述】:
我开发了一个 macOS 应用程序,如果用户双击具有我定义的文件扩展名的文件,它将允许启动该应用程序。文件扩展名关联在 Info.plist 文件中完成。我可以双击文件以成功启动我的应用程序。但是,我似乎不知道如何获取用于启动应用程序的文件的名称。
文件名似乎没有作为argv 的一部分存储。在我的应用程序中,我希望能够获取文件的名称,执行一些初始化代码,然后在我的应用程序环境中打开文件。
【问题讨论】:
我开发了一个 macOS 应用程序,如果用户双击具有我定义的文件扩展名的文件,它将允许启动该应用程序。文件扩展名关联在 Info.plist 文件中完成。我可以双击文件以成功启动我的应用程序。但是,我似乎不知道如何获取用于启动应用程序的文件的名称。
文件名似乎没有作为argv 的一部分存储。在我的应用程序中,我希望能够获取文件的名称,执行一些初始化代码,然后在我的应用程序环境中打开文件。
【问题讨论】:
实现NSApplicationDelegate 方法func application(_ sender: NSApplication, openFile filename: String) -> Bool 或func application(_ sender: NSApplication, openFiles filenames: [String])。当您的应用被要求打开文件(或为文件启动)时,会调用此方法。
【讨论】: