在OSX上获取App.nw位置

时间:2015-03-21 18:24:47

标签: node.js macos node-webkit

我们正在为OS X构建node-webkit / NW.js应用程序,并希望为应用程序创建更新程序,以便它自动保持最新状态。

因为我们在App.nw包中部署了nodeJS,css和html。下载新软件包并更换旧软件包并重新启动应用程序非常容易。在谷歌搜索之后,我们无法找到任何方法来获取OS X上App.nw包的位置。

我们在OS X上部署了一个node-webkit redist,但我们使用自己的CEF客户端进行Windows。在Windows上它非常简单,您只需获取NW.exe路径并从那里开始App.nw。在OS X上有没有办法做到这一点?

也可以说我们正在使用旧版本的node-webkit,版本0.8.6。这是因为许多本机模块不能在0.9+ node-webkit上工作,因为它们需要NodeJS 0.10。

2 个答案:

答案 0 :(得分:0)

当您运行应用时,您可以这样做:

var path = window.location.pathname;
path = path.substr(0, path.lastIndexOf('/'));

这将为您提供app.nw的完整路径。

答案 1 :(得分:0)

根据您是在终端(命令行)窗口还是在Finder中工作,答案会有所不同。

在OS X中,nw应用程序称为 nwjs 。您可以通过右键单击应用程序并选择显示包内容菜单项来查看应用程序包内部。导航到目录 - >资源,您将在那里看到 App.nw 文件或目录。

从命令行转到包含 nwjs 应用程序的目录。它的名称应为 nwjs.app 。从该目录中您需要的文件(或目录)是 nwjs.app/Contents/Resources/App.nw

自定义打包的应用程序时,将 nwjs.app 重命名为 your_app_name.app 是完全可以的。因此,应用程序的名称可能与 nwjs.app 不同。