我正在尝试实现AudioServicesPlaySystemSound(SystemSoundID(****))
因此我需要Apples SystemSounds的现有ID列表。搜索各种帖子,我在GitHub上找到了这个。我在此列表中找不到适合我的目的的声音。由于此存储库自 2013 年以来未更新,因此我不确定它是否是最新的。我想知道是否有更新的系统声音列表。
首先,您找到的列表不是由Apple发布的。 我不知道作者是自己研究还是只是收集了它们,但这种行为被认为是逆向工程,在开发者协议中是被禁止的。
我在此列表中找不到适合我的目的的声音。
您可能需要查找声音资源而不是 SystemSoundID,并使用AudioServicesCreateSystemSoundID
注册它并为其创建 SystemSoundID。
我想知道是否有更新的系统声音列表。
公共SystemSoundID的最新列表在这里:
警报声音标识符
常数
kSystemSoundID_Vibrate
在 iPhone 上,将此常量与 音频服务播放警报声音 函数来调用短暂振动。在iPod touch上,什么都不做。
kSystemSoundID_UserPreferredAlert
在桌面上,将此常量与 音频服务播放警报声音 函数来播放"声音"偏好设置面板中指定的提醒。
kSystemSoundID_FlashScreen
在桌面上,将此常量与 音频服务播放警报声音 在屏幕上显示闪光的功能。
kUserPreferredAlert
荒废的。请改用
kSystemSoundID_UserPreferredAlert
。
(其中一些仅适用于macOS。
使用其他 SystemSoundID 可以被视为使用私有 API。
苹果开发者在苹果开发者论坛上的一些评论:
这算不算私有 API?
在 API 中使用未记录的任意值是不合适的,因此我建议您不要在提交中这样做。
力触摸的触觉反馈?
对于要被视为 API 的固定 SystemSoundID 值,它在标头中必须具有符号常量。 传入其他固定值是不行的。