-2

我正在尝试构建一个使用第三方可可 API 的可可应用程序(它还需要响应 URL 方案)。我希望我的应用程序尽可能简单,并充当其他应用程序的“助手”应用程序。

似乎对我来说最好的方法是让应用程序从带有参数的命令行启动,然后在退出之前将一些输出直接写入 CLI 或一些中间文件(如 plist)。

我怎样才能最好地产生输出(假设我只是将它转储到命令行),和/或有没有更好的方法来解决这个问题?

4

1 回答 1

1

仅提供一般建议,“最佳”是主观的!

如果您要生成多个“blob”(这是一个技术术语;-))输出,请使用 C 的标准 I/O 函数,如果您只想输出一个 blob,则可以使用write. 基本方法是:

  1. 产生你的输出NSString- 不管你喜欢
  2. 使用(或转换为其他字符集编码)的方法产生一个CUTF8String字符串NSString
  3. 将 C 字符串输出到stdoutwith等或使用fputs文件描述符1write

如果您多次执行此操作,请将上述内容包装为一种方法,该方法根据需要采用格式字符串/参数等。

您会看到一些 CLI 应用程序以 plist 格式向终端输出输出,这对于将成为助手的应用程序很有用 - 调用应用程序可以通过管道读取输出并将 plist 转换为字典/数组,就像阅读一样.plist 文件。这是一种比将 plist 写入文件然后再读回更直接的方法。

但是助手不需要 CLI 或 GUI,您可以使用各种形式的 IPC 启动并与他们通信。如果您的应用程序将被沙盒化,则应考虑使用 XPC 助手。

高温高压

于 2013-04-04T19:59:37.797 回答