# 老司机 iOS 周报 #324 | 2025-02-24

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

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

## 新闻

### [iOS & iPadOS 18.4 Beta 1: Here’s everything new](https://9to5mac.com/2025/02/21/ios-18-4-beta-1-heres-everything-new/)

对于中国用户最期待的自然是中文版本的 Apple Intelligence 终于可以使用了，[Release Notes](https://developer.apple.com/documentation/ios-ipados-release-notes/ios-ipados-18_4-release-notes#Apple-Intelligence) 有两条相关提醒：

1. 对于中文（非英语），使用 Apple Intelligence 需要前置打开 Siri ，并允许通过任意方式唤醒 Siri 。
2. 还原设备后，可能出现 Apple Intelligence 出现 "Downloading support …" 的报错，此时重启设备后问题可能可以解决（原文用词是 might resolve ，尚不清楚是否有 bad case）。

## 文章

### 🐎 [Understanding SwiftUI Preferences](https://peterfriese.dev/blog/2025/swiftui-preferences-swift6/#what-are-preferences-in-swiftui)

[@JonyFang](https://github.com/JonyFang): 本篇主要介绍了 SwiftUI 中的 Preferences 机制，讲述了其在父子视图间传递数据的作用。 作者通过具体示例，展示了如何利用 Preferences 构建自定义视图，如表单验证功能。 此外，文章还讨论了 Swift 6 中与 Preferences 相关的问题，提供了对开发者有价值的见解。 总的来说，这篇文章为开发者深入理解和应用 SwiftUI 的 Preferences 提供了清晰的指导。

### 🐢 [The Synchronization Framework in Swift 6](https://blog.jacobstechtavern.com/p/the-synchronisation-framework)

[@DylanYang](https://github.com/Dylan19Yang)：作者为我们介绍了 Swift 6 和 iOS 18 下的新同步框架，其中主要包含了两个底层结构 Mutex 和 Atomics。作者在本文中对这两个新的能力做了较为详细的说明和性能比对。Mutex 能使得对被他包裹的数据的访问自动上锁，在性能上和手动通过代码上锁区别不大，但是相比使用 Actor 有不少提升。不过相比 Actor 的缺点自然是锁会阻塞当前线程。而 Atomic 则可以使被他包裹的操作都为原子操作不会被并发打断。从性能上看它和 Actor 比并没有较大优势，因此大多数情况下使用 Actor 已经足够。对同步框架感兴趣的读者可以花时间阅读下本文。

### 🐎 [The Framework Next Door](https://www.elkraneo.com/the-framework-next-door)

[@BluesJiang](https://github.com/BluesJiang): 这篇文章分享了他们在制作密室逃脱场景下，使用 TabletopKit 来开发一个 VisionOS 的应用。这个主要是针对桌面游戏的需求来设计的框架，支持多人互动，桌面的 Persona 布局，还有丰富的交互能力。有兴趣给 Vision Pro 开发桌面游戏的可以调研一下这个框架。

### 🐎 [解决 Xcode 16 "Waiting to reconnect to ..." 问题](https://stackoverflow.com/questions/79016653/after-upgrading-to-xcode-16-i-am-stuck-at-waiting-to-reconnect-to-when-tryi)
[@Cooper Chen](https://github.com/cjlcooper)：这篇文章主要解决了在升级到 Xcode 16 后，无法在 Apple TV（tvOS 17.7）上构建应用的问题。错误提示显示 DDI（Developer Disk Image）内容过时，导致设备无法连接。最终，运行 `xcrun devicectl manage ddis update` 命令更新 DDI 后，问题得以解决。这个方法不仅适用于 tvOS，也可以解决 iOS 开发中的类似问题，帮助开发者应对 Xcode 16 引入的新 DDI 管理方式。

### 🐢 [asm lessons](https://github.com/FFmpeg/asm-lessons)
[@老驴](https://weibo.com/u/6090610445)：很多人敲碗等待的 FFmpeg 汇编课终于来了。FFmpeg 现在基本是业界最重要的开源视频编解码库了。这种对于性能极度敏感的库，自然会有一些特殊手段来进一步优化性能。FFmpeg 团队就在库里使用了大量的汇编，按照他们的说法，可以大幅提升性能。但是现在会手写汇编语言的人也越来越少，所以很多人就敲碗让团队出一个汇编课程。这就是这个课程的来历。略微可惜的是，这个课程目前是基于 x86 的汇编，不过团队也说之后会添加 ARM 的汇编内容。鉴于 FFmpeg 在业界的地位，值得大家花一点时间来学习一下。

## 工具

### 🐎 [你的 iPhone 也可以离线运行 DeepSeek「含原理介绍」](https://mp.weixin.qq.com/s/oXfrBKwZzXIzg-k_KRQEbQ)

[@EyreFree](https://github.com/EyreFree)：本文为大家介绍了一款能在 iPhone 上运行 LLM 的应用 fullmoon，它的下载链接为 [https://apps.apple.com/app/id6727014156](https://apps.apple.com/app/id6727014156)，能直接运行 mlx-community/DeepSeek-R1-Distill-Qwen-1.5B-4bit 模型，还给出了配置步骤，其原理基于苹果的 MLX Swift 实现，iOS 开发者可通过修改 LLMEval 例子来运行 DeepSeek。作者自测 iPhone 16 Pro 能运行 1.5B 和 7B 模型，感兴趣的朋友可以下载体验。

## Tips

### 🐎 [DispatchConcurrentQueue 可用性提示](https://github.com/SwiftOldDriver/iOS-Weekly/issues/4870)

[@Damien](https://github.com/ZengyiMa)：DispatchConcurrentQueue 实际要在 iOS 17 才开始能够使用，但是 Xcode 15 标注错误并且可以通过编译检查，但是在 Runtime 期间会引发 Crash。有使用到的同学请特别注意。

Xcode 15
![image](https://github.com/user-attachments/assets/81dfa441-424a-4706-a5d2-0bda334ecc95)

Xcode 16
![image](https://github.com/user-attachments/assets/4ca77442-dd15-4131-b3db-8b564921dac7)

## 内推

重新开始更新「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）
