You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

macOS应用applicationDidFinishLaunching未触发,Xcode14曾正常运行

macOS应用applicationDidFinishLaunching断点未触发排查方案

问题描述

我在macOS应用的AppDelegate.swift代码中,给func applicationDidFinishLaunching()方法顶部设置了断点,但该断点从未被触发。此方法在Xcode 14中曾可正常运行,代码如下:

func applicationDidFinishLaunching(_ aNotification: Notification)
{
    print("in applicationDidFinishLaunching" )
}

排查与解决步骤

  • 检查项目生命周期类型:如果项目使用了@main标记的SwiftUI App结构体(例如@main struct MyApp: App { ... }),系统会优先执行SwiftUI的生命周期逻辑,AppDelegate中的applicationDidFinishLaunching不会被调用。此时可将初始化逻辑移至SwiftUI App的init()方法或视图的onAppear回调,或者切换回UIKit生命周期模式。
  • 验证AppDelegate关联配置:在项目设置的「General」标签中,确认「Main Interface」已设置对应的Main.storyboard;也可打开Info.plist,检查NSApplicationDelegateClassName是否正确指向你的AppDelegate类,确保系统能正确识别并调用它。
  • 清理Xcode缓存:按下Command+Shift+K清理构建文件夹,再按Command+Option+Shift+K清理衍生数据,之后重新编译运行。缓存异常可能导致断点失效。
  • 检查断点配置:右键断点,确认「Breakpoint Condition」未设置永远不成立的条件,且「Ignore」次数设为0。
  • 确认运行环境:确保当前运行的是正确的macOS目标,且处于Debug模式(Release模式默认禁用断点)。

内容的提问来源于stack exchange,提问作者Ed Danley

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.09 15:44:57