LESSON 36 / 575 分钟
相机、地图、媒体与机器学习
把需求映射到系统框架,能显著减少 AI 重造已有能力的机会。
用你的前端经验理解
你仍然从“用户动作 → 能力 → 数据 → UI”拆解需求,只是许多基础设施由系统提供。
01 / 理解问题
为什么需要它
苹果系统框架覆盖相机、地图、媒体和机器学习,但学习策略应围绕功能边界。先明确输入是什么、输出是什么、哪些条件会失败,再查看最小 API 路径。系统提供 UI 的场景优先评估现成组件,这通常能减少权限、可访问性和平台适配工作。
它是怎样工作的
例如图片选择、实时摄像、照片库浏览是三个不同需求,不应一律使用同一重型流程。机器学习模型运行也不代表推断永远正确:输入尺寸、预处理、设备性能和置信度都会影响结果。需要持续资源的能力,应明确开始、暂停和释放时机,避免页面消失后仍占用摄像头或播放音频。
02 / 掌握要点
把关键概念连起来
1
常用能力
PhotosUI 选择照片;AVFoundation 处理音视频采集与底层媒体;AVKit 提供播放 UI;MapKit 地图,Core Location 定位。
2
垂直能力
HealthKit 健康,Core Bluetooth 蓝牙,PencilKit 手写,EventKit 日历,WebKit 嵌入网页。按设备、平台与授权筛选。
3
AI 与图形
Core ML 运行模型,Vision 做视觉分析;Foundation Models 可使用支持设备上的系统模型,需运行时检查可用性;RealityKit/Metal 面向空间和图形需求。
03 / 案例推演
给文章增加图片文字识别
- 用户主动选图,应用加载受支持格式并处理过大或损坏文件,不在主界面渲染路径做重型解码。
- 将识别工作交给合适的 Vision 能力,展示处理中与失败状态,避免用户误以为按钮无效。
- 把识别结果作为可编辑草稿,允许修正,不自动覆盖用户已有标题;取消后不再提交过时结果。
这里需要你亲自判断
框架存在不等于所有设备都支持;系统模型也不是任意模型或云 API 的无条件替代。
04 / 动手验证
做一个小练习
给“从照片识别文字并保存到清单”选择照片选择、文字识别、持久化三个框架。
- 选择一项框架能力,列出输入限制、授权条件、失败输出与释放时机。
- 为识别无文字和结果不准确设计不同处理。
展开参考思路与验收标准
系统 API 帮你执行能力,产品仍负责结果解释。AI 可以协助接入样板代码,但资源生命周期、错误路径和用户确认边界需要开发者审查。
05 / 检查理解
应用需要地图展示,首先应该了解什么?
答对理解题后即可标记完成