# 老司机 iOS 周报 #368 | 2026-04-13

![ios-weekly](https://github.com/SwiftOldDriver/iOS-Weekly/blob/master/assets/weekly-header/368.png?raw=true)
老司机 iOS 周报，只为你呈现有价值的信息。

你也可以为这个项目出一份力，如果发现有价值的信息、文章、工具等可以到 [Issues](https://github.com/SwiftOldDriver/iOS-Weekly/issues) 里提给我们，我们会尽快处理。记得写上推荐的理由哦。有建议和意见也欢迎到 [Issues](https://github.com/SwiftOldDriver/iOS-Weekly/issues) 提出。

## 新闻

### 🐕 [Swift 6.3 Released](https://www.swift.org/blog/swift-6.3-released/)

[@Kyle-Ye](https://github.com/Kyle-Ye): Swift 6.3 正式发布，带来了多项语言和工具链层面的重要更新。语言特性方面，新增 `@c` attribute 允许将 Swift 函数和枚举直接暴露给 C 代码并自动生成头文件，新增 `::` 模块名选择器语法解决多模块同名 API 的歧义问题，同时为库作者提供了 `@specialize`、`@inline(always)`、`@export(implementation)` 等性能控制属性。构建工具方面，Swift Package Manager 预览集成了统一的 Swift Build 引擎，并新增预编译 Swift Syntax 支持和 `swift package show-traits` 命令。平台扩展方面，Embedded Swift 在 C 互操作和调试能力上有显著改进，同时本版本也是 Swift SDK for Android 的首个正式发布版本。此外 Swift Testing 新增了 warning 级别的 issue severity 和测试取消支持，DocC 也增加了 Markdown 输出和代码块标注等实验性功能。建议所有 Swift 开发者关注并评估升级。

## 新手推荐

### 🐎 [Xcode 26.4 Simulator Paste Is Broken: Here's the Workaround](https://samwize.com/2026/03/30/xcode-simulator-paste-broken-workaround/)

[@Barney](https://github.com/BarneyZhaoooo)：这篇文章记录了 Xcode 26.4 的一个很影响调试体验的回归问题：Mac 到 iOS Simulator 的剪贴板同步失效，`Cmd + V` 没反应，长按输入框也看不到 Paste。作者尝试了重启 Simulator、切换 Automatically Sync Pasteboard、`killall pboard` 和重置权限等常见手段都无效，最后给出一个可立即落地的 workaround：直接用 `xcrun simctl pbcopy booted` 把宿主机剪贴板内容写入当前启动中的模拟器。文末还补了一个更顺手的版本 `pbpaste | xcrun simctl pbcopy booted`，基本可以当作临时替代方案。适合最近升级到 Xcode 26.4、正好被这个问题卡住的同学收藏。


## 文章

### 🐕 [Tracking token usage in Foundation Models](https://artemnovichkov.com/blog/tracking-token-usage-in-foundation-models)

[@Cooper Chen](https://github.com/cjlcooper)：这篇文章介绍了如何在 Apple Foundation Models 框架中追踪 token 使用情况，并将其作为优化大模型应用的关键指标。作者通过示例展示了如何统计指令、prompt 和完整对话的 token 消耗，并结合上下文窗口评估占用比例，判断是否接近限制。文章还总结了多种优化方法，如精简 prompt、减少冗余内容和拆分长对话，以提升性能和降低成本。同时提供可视化工具帮助开发者直观分析 token 分布。整体而言，这篇文章强调了以 token 为核心的工程优化思路，对构建高效 LLM 应用具有实用价值。

### 🐕 [Beta Preview: ComposableArchitecture 2.0](https://www.pointfree.co/blog/posts/206-beta-preview-composablearchitecture-2-0)

[@AidenRao](https://weibo.com/AidenRao)：Point-Free 在这篇 Beta Preview 里预告了 **Composable Architecture 2.0**（Composable Architecture 是 Point ‑ Free 团队开源的一套 Swift 应用架构 / 框架，用来“以一致且可理解的方式”组织业务逻辑，并把 **组合（composition）** 和 **可测试性（testing）** 当作一等公民。它既可以用于 SwiftUI，也能用于 UIKit 等场景。）：这是一次从底层模型到日常写法都“重新推倒重来”的大版本更新。它把 API 词汇刻意对齐 SwiftUI（例如 `onChange`、preferences、生命周期回调等），让你用熟悉的视图心智模型去写业务逻辑：`View` 负责“渲染什么”，而新的 `Feature` 负责“要做什么”。


### 🐕 [Xcode Build Optimization using 6 Agent Skills](https://www.avanderlee.com/xcode/xcode-build-optimization-using-6-agent-skills/)

[@阿权](https://github.com/bqlin)：作者介绍了自己的一套 AI Agent Skill，可以自动分析并优化 Xcode 项目的编译速度。原理是同城修改 Xcode 项目配置来优化编译流程。处理了影响编译速度的几个因素：代码复杂度、build phases、Swift Package 依赖、增量构建等（具体分析过程可参考 [Build performance analysis for speeding up Xcode builds](https://www.avanderlee.com/optimization/analysing-build-performance-xcode/)）。这套 skill 工作流程如下：

1. Orchestrator skill（重点关注）优化编译流水线，分析项目目录，为后续 skill 做好准备。
2. Benchmark skill 执行 3 次干净构建和增量构建，构建信息存到本地 JSON，供后续继续分析。
3. 分析阶段，Compilation Analyzer、Project Analyzer、SPM Analyzer 3 个 skill 做具体的分析，检查 Build Settings、Project Configuration、源码和依赖。
4. 展示优化改进计划。
5. 人工 review 并应用优化选项。
6. Build Fixer skill 应用优化计划。
7. 再次 benchmark 并展示最终优化结果。

文章提供了 AI Agent 提升 iOS 研效的另一种思路，希望对你有所启发。

### 🐎 [Why Your @Observable Class init() Runs Multiple Times in SwiftUI](https://livsycode.com/swiftui/why-your-observable-class-init-runs-multiple-times-in-swiftui/)

[@DylanYang](https://github.com/Dylan19Yang)：本文作者主要讲解了 SwiftUI 中被 @Observable 修饰的类初始化方法多次执行的问题，核心原因是使用 @State 存储 ViewModel 时，会随 View 频繁重建重复执行初始化逻辑，搭配 NavigationStack 导航场景会进一步加剧该问题。作者同时给出了.task 延迟赋值、将 ViewModel 托管至上层视图等解决方案，并提醒开发者不要在 init 中编写耗时操作与副作用逻辑。

### 🐕 [Swift 6.3 正式发布支持 Android，它能在跨平台发挥什么优势？](https://mp.weixin.qq.com/s/biU1GkLHAF9OH5FHRSbiVg)

[@JonyFang](https://github.com/JonyFang)：Swift 6.3 带来了首个正式的 Swift SDK for Android，这篇文章从工具链、互操作和实际落地三个角度做了比较完整的梳理。编译上，Swift 借助 LLVM 直接交叉编译出 Android 的 ELF 产物（.so），一行 swift build --swift-sdk x86_64-unknown-linux-android28 就能搞定，不依赖额外 IDE。互操作方面主要靠 swift-java 和 swift-java-jni-core 两个库：前者通过 @JavaClass、@JavaMethod 等宏让 Swift 调 Java，也能用 jextract --mode=jni 反过来生成 Thunk 让 Java 调 Swift；后者则把 JNI 底层操作（JVM 生命周期、类型桥接等）封装成了 Swift 风格的 API。落地架构上，官方推荐"Swift 写业务逻辑 + Kotlin/Jetpack Compose 写 UI"，weather-app 示例就是这个思路。不过文章也提到了现阶段的局限：没有 SwiftUI for Android 这样的 UI 层，访问 Android 系统 API 得走 Swift → JNI → Java/Kotlin → Android API 这条链路，和 KMP 能直接共享 UI（CMP）比还有差距。总的来说，Swift for Android 目前更适合把现有的 Swift 业务逻辑/算法库复用到 Android 端，后续在 UI 层和工具链上的演进值得持续关注。

## 内推

重新开始更新「iOS 靠谱内推专题」，整理了最近明确在招人的岗位，供大家参考

具体信息请移步：https://www.yuque.com/iosalliance/article/bhutav 进行查看（如有招聘需求请联系 iTDriverr）

## 关注我们

我们是「老司机技术周报」，一个持续追求精品 iOS 内容的技术公众号，欢迎关注。

**关注有礼，关注【老司机技术周报】，回复「2024」，领取 2024 及往年内参**

![](https://github.com/SwiftOldDriver/iOS-Weekly/blob/master/assets/qrcode_for_wechat.jpg?raw=true)

同时也支持了 RSS 订阅：https://github.com/SwiftOldDriver/iOS-Weekly/releases.atom 。

## 说明

🚧 表示需某工具，🌟 表示编辑推荐

预计阅读时间：🐎 很快就能读完（1 - 10 mins）；🐕 中等 （10 - 20 mins）；🐢 慢（20+ mins）
