【发布时间】:2012-12-07 08:47:46
【问题描述】:
我的应用程序正在安装在应用程序文件夹中。但我可以复制这个 .app 文件并将其粘贴到我的桌面上。当我尝试在我的桌面上运行这个 .app 文件时,我的系统上正在运行两个实例。如何防止这种情况发生?
【问题讨论】:
标签: macos cocoa multiple-instances .app
我的应用程序正在安装在应用程序文件夹中。但我可以复制这个 .app 文件并将其粘贴到我的桌面上。当我尝试在我的桌面上运行这个 .app 文件时,我的系统上正在运行两个实例。如何防止这种情况发生?
【问题讨论】:
标签: macos cocoa multiple-instances .app
有很多方法,
我想到的第一个方法是查看runningApplications 中的NSWorkspace。这将返回一个 NSArray,其中包含每个启动的应用程序的字典。您可以遍历数组以查看您要查找的应用程序是否已在运行。
NSMutableArray *applications=[NSMutableArray new];
[applications addObjectsFromArray:[[NSWorkspace new] runningApplications]];
NSLog(@"--> %@",applications);
【讨论】: