mac重启后意外的-psn_0_65552命令行参数

时间:2017-11-14 12:09:04

标签: macos cocoa

当我重新启动我的mac时,如果我正在开发的应用程序在重新启动期间运行,则macos在使用“-psn_0_65552”参数重新启动后立即启动该应用程序。我假设这与重新启动提示时启用的“重新登录时重新打开窗口”复选框有关。我试图找到关于这个论点的任何文档,但都失败了。所以,我的问题:

  1. 这种行为是否记录在某处?
  2. 我的应用程序应该能够处理的任何其他奇怪的命令行参数?
  3. 我可以在mac重新启动后避免重新打开应用程序吗?

1 个答案:

答案 0 :(得分:0)

没有其他人提供过任何东西,所以也许这会有所帮助:

  
      
  1. 这种行为是否记录在某处?
  2.   

状态保存和恢复机制至少部分通过您可以调用参与其中的方法进行记录,例如: NSWindow' restorable& encodeRestorableStateWithCoder:NSWindowDelegate' s window:willEncodeRestorableState:NSApplication' s restoreWindowWithIdentifier:state:completionHandler:等。然而,各种AppKit类如何保留和恢复所有信息没有公开记录(在某处的文档中有相应的声明)。

  
      
  1. 我的应用程序应该能够处理的任何其他奇怪的命令行参数?
  2.   

任何人的猜测。

  
      
  1. 我可以在mac重新启动后避免重新打开应用程序吗?
  2.   

也许。一些应用程序不会重新启动重新启动,无论他们的作者是控制它还是偶然发生,我都不知道。

这里有一个建议:给自己写一个非常基本的GUI应用程序,只需保存参数和环境(你可以使用NSProcessInfo来获取所有这些)在启动时到用户默认值。从Xcode,Finder和Terminal午餐。打开时重新启动。查看用户默认值(查看其沙箱并在Xcode中打开.plist)。注意什么?想要依靠吗?你的电话。

您能想到其他方式来跟踪您的应用启动和用户启动的退出吗?也许在用户默认设置中设置和删除标志?玩得开心!

HTH