## 背景 偏好设置 → 权限 目前只列了「摄像头」(iOS 投屏用)和 Android 工具链,**没有麦克风**。但麦克风当前就在被使用: - `Info.plist` 有 `NSMicrophoneUsageDescription`,entitlements 有 `com.apple.security.device.audio-input` - 录制走 `AVAudioRecorder` 采 Mac 麦克风,经 #10 改造后拒权限会静默降级为纯截图录制 缺口:用户发现"录出来没声音"时,在权限面板里找不到麦克风状态可查/可管理。摄像头都列了,实际在用的麦克风反而没列,不一致。 ## 需要做 1. `PermissionType` 从只有 `.camera` 扩为 `.camera` / `.microphone` 2. 权限组新增一行麦克风权限(状态检查 / 打开系统设置 / 撤销) 3. 修复现有 handler 的"摄像头写死"问题,改为按类型分发: - `checkCameraPermission()` → 通用化,麦克风查 `AVCaptureDevice.authorizationStatus(for: .audio)` - `openSystemPreferences(_:)` 现无视 sender 永远开 `Privacy_Camera`,需按类型开 `Privacy_Microphone` - `revokePermission(_:)` 现无视 `sender.tag` 永远弹摄像头提示,需按 tag 分发 4. 补本地化文案(name / desc / revoke 提示 × 中英) ## 注意 文案用中性表述(如"录制时用于采集麦克风音频"),避免与 #17(麦克风降级为可选旁白轨)冲突,#17 落地后无需返工。 ## 相关 - 地基改造: #10 (PR #16) - 音源方向: #17
背景
偏好设置 → 权限 目前只列了「摄像头」(iOS 投屏用)和 Android 工具链,没有麦克风。但麦克风当前就在被使用:
Info.plist有NSMicrophoneUsageDescription,entitlements 有com.apple.security.device.audio-inputAVAudioRecorder采 Mac 麦克风,经 录制强依赖音频:无麦克风/拒绝权限时无法录制与回放 #10 改造后拒权限会静默降级为纯截图录制缺口:用户发现"录出来没声音"时,在权限面板里找不到麦克风状态可查/可管理。摄像头都列了,实际在用的麦克风反而没列,不一致。
需要做
PermissionType从只有.camera扩为.camera/.microphonecheckCameraPermission()→ 通用化,麦克风查AVCaptureDevice.authorizationStatus(for: .audio)openSystemPreferences(_:)现无视 sender 永远开Privacy_Camera,需按类型开Privacy_MicrophonerevokePermission(_:)现无视sender.tag永远弹摄像头提示,需按 tag 分发注意
文案用中性表述(如"录制时用于采集麦克风音频"),避免与 #17(麦克风降级为可选旁白轨)冲突,#17 落地后无需返工。
相关