我今天在想这个问题,想知道是什么在MacOS应用程序上阻止我运行,例如,一个特定应用程序的5个实例?
我认为可能是bundle_id (类似于iOS ),但当我复制并重命名应用程序(更名为appname_2)时,编辑了特定应用程序的bundle_id (更名为bundle_id_2),但它并没有启动,而只是将该应用程序放在了前台。
也许有一种方法可以检查设备的Mac地址,并且只允许每个Mac地址运行一个应用程序。
由于很难在网上找到这个应用程序的信息,我想知道是否可以在我的Mac上运行一个应用程序的多个版本。
我很确定虚拟机可以工作,但是如果我想运行100个特定应用程序的实例,那么我会运行所有的内存,这会使我的Mac在实际工作中变得无用。
提前感谢:D
发布于 2019-05-09 19:36:58
LaunchServices (查找器、NSWorkspace API等)在MacOS上,允许每个用户会话运行一个应用程序。当您不使用Launch Services时,没有什么可以阻止您再次启动应用程序。(您的假设是正确的,即LaunchServices查看BundleID以查看应用程序是否已经在运行)。
例如,当您打开两个终端窗口并在这两个窗口中启动邮件(/Applications/Mail.app/Contents/MacOS/Mail)时,您就有了两个邮件实例。open /Applications/Mail.app/不会工作两次,因为它将使用LaunchServices。
https://stackoverflow.com/questions/56057272
复制相似问题