首页 > 解决方案 > 当可可应用程序已经启动时,Objective-C 从终端发送参数

问题描述

我正在尝试在应用程序已经启动时通过终端命令将一些参数传递给基于 UI 的程序(可可应用程序)。例如:

open appName.app -openUI                         // Shows App UI
open appName.app -forceQuit 5                    // Force quit App after 5 seconds
open appName.app -sendMsg "Hello World."         // Add "Hello World" to UNUserNotificationCenter

如果有人能指导我如何实现这一点,我将不胜感激,谢谢。

标签: objective-ccocoacommand-line

解决方案


如果您以这种方式指定参数,它们将被发送到open无法识别它们的命令。

您需要--args在它们前面放一个以告知open将所有以下参数传递给启动的应用程序,例如

open appName.app --args -openUI

更新

如果应用程序已经在运行,open将使用正在运行的应用程序。如果要新建窗口,需要提供-n参数:

open appName.app -n --args -openUI


推荐阅读