【问题标题】:Debug app after device restart设备重启后调试应用
【发布时间】:2016-05-11 08:19:29
【问题描述】:

我的 iOS 应用程序出现问题,每次我重新启动我的 iOS 设备时(即在关闭并再次打开它之后)。我在前台关闭了应用程序的设备,重新启动它,然后从后台重新启动应用程序。

显然,当设备关闭时,Xcode 控制台不会显示调试消息,而且我不知道当设备重新启动时应用程序会发生什么。如果我从 Xcode 重新启动应用程序,问题就会消失,一切都会再次完美运行。

此外,当设备重新启动时,该应用似乎正在从后台重新启动。当我从多任务处理中点击应用程序图标或其屏幕时,是否可以防止这种行为并强制应用程序从头开始重新启动?

谢谢。

【问题讨论】:

标签: ios xcode debugging


【解决方案1】:

如果你想强制关闭应用程序,双击主页按钮,然后你可以刷掉后台进程。

要在重启设备并再次打开应用程序后调试进程,您应该能够将 Xcode 调试控制台附加到正在运行的进程。在 Xcode 中:

Debug > Attach to process > [select your process]

【讨论】:

  • 是的,但这必须由用户完成。我想知道我是否可以检测到设备何时关闭并以编程方式关闭应用程序。
  • 如果您总是想阻止应用程序在后台运行,请使用此处记录的UIApplicationExitsOnSuspend 键:developer.apple.com/library/ios/documentation/General/Reference/… 如果您只想在用户关闭/重新启动他们的设备时执行此操作设备,那么我认为这是不可能的。 Apple 不喜欢让您知道用户在您的应用程序之外在做什么。
  • 我的应用应该在后台运行。我应该如何将调试附加到另一个进程?我可以使用其他设备来实现这一点吗(即从 iPhone 运行我的应用程序并从 iPad 调试它)?
  • 通过电缆将您的设备连接到您的 Mac > 打开您已安装的应用程序 > 打开 Xcode > 单击顶部工具栏中的 Debug > 单击 Attach to process 并选择您的应用程序。我认为您无法从其他 iOS 设备进行调试。反正我不知道。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-08-19
  • 1970-01-01
  • 2021-04-25
相关资源
最近更新 更多