#iOS
共 10 篇文章
NavigationStack 点链接没反应:排查 no matching navigationDestination
NavigationLink 点了不跳转,按注册位置、值类型、懒容器和导航栈上下文排查 no matching navigationDestination,并统一类型化路径。
URLSession 返回 -1022:排查 ATS 拦截并缩小 HTTP 例外范围
URLSession 返回 -1022 时,先检查实际失败 URL、HTTPS 与证书配置;确需访问旧 HTTP 服务时,只为必要域名配置 ATS 例外,并核对最终应用包。
UITableView 报 invalid number of rows:让数据源与批量更新保持一致
UITableView 插入或删除行时报 invalid number of rows,核对数据源数量、旧新索引路径和批量更新顺序,避免在 cellForRowAt 中插行或混用 reloadData。
SwiftUI ForEach 提示重复 ID:为什么列表会错用其他行的状态
ForEach 出现重复 ID、行状态错位时,检查唯一且稳定的元素身份,区分记录 ID、显示值、数组下标及每次重建的 UUID。
Xcode 报 Multiple commands produce Info.plist:找出重复写入同一产物的步骤
Info.plist 同时被复制和处理时会出现重复产物。按构建日志移除资源复制关系,核对生成模式、INFOPLIST_FILE 和各配置覆盖,再检查最终 App 清单。
SwiftUI task 被取消后还更新界面,或刚进入 loading 就失败怎么办
SwiftUI task 刚进入 loading 就取消,或取消后继续更新界面,检查任务附着位置、id 变化、try? 吞错与协作式取消检查点。
真机能编译,iOS 模拟器却提示链接了 iOS 库:检查 XCFramework 的平台切片
真机构建成功、模拟器报平台不匹配或缺库时,核对 XCFramework 的平台与架构切片,分别归档并统一打包,明确旧库临时排除 arm64 的限制。
Swift 提示 Main actor-isolated initializer:让创建位置与 UI 隔离一致
初始化 UI 模型时报 Main actor-isolated initializer,核对创建方与模型的隔离,通过 MainActor 声明或可等待调用修复,并检查 SwiftUI SDK 和任务时序。
SwiftUI 父视图更新后 ViewModel 状态归零:检查对象由谁创建
父页面变化后输入或计数归零,检查模型创建位置、StateObject 所有权、视图身份及 iOS 17 Observation 的适用边界。
iOS 打开相机就崩溃:补齐 NSCameraUsageDescription 并检查授权状态
相机入口出现 privacy-sensitive data 崩溃时,检查运行 target 的 NSCameraUsageDescription、最终 Info.plist、授权状态与设备可用性,分别处理拒绝和受限分支。


