有一个#if targetEnvironment(simulator)
编译器指令,如果有一种方法可以告诉运行在设备上的应用是否从Xcode启动并已连接到调试器,这将非常有用。
有没有办法在应用程序中检测到这一点?
使用调试/发布版本和DEBUG
变量不太适合我们的情况。
答案 0 :(得分:0)
是的,您可以将启动参数放在您的方案(编辑方案->运行->参数)中,该方案仅在从xcode启动时适用,如果是通过点击应用程序图标启动或从应用程序商店下载的,则这些启动参数将不会出现,因此您将能够知道该应用程序是否从Xcode启动。
您可以通过以下方式获取启动参数
if NSProcessInfo.processInfo().environment["ARGUMENT_NAME"] != nil {
// launched from Xcode
}