【问题标题】:List of default SystemSoundID默认 SystemSoundID 列表
【发布时间】:2020-09-10 17:51:01
【问题描述】:

我正在尝试实现AudioServicesPlaySystemSound(SystemSoundID(****)),因此我需要Apples SystemSounds 的现有ID 列表。搜索各种帖子,我在 GitHub 上找到了 this。为了我的目的,我在这个列表中找不到合适的声音。由于此存储库自 2013 年以来未更新,我不确定它是否是最新的。我想知道是否有更新的 SystemSounds 列表。

【问题讨论】:

    标签: swift xcode soundeffect system-sounds


    【解决方案1】:

    首先,您找到的列表不是由 Apple 发布的。 不知道作者是自己研究的还是自己收集的,但这种行为被认为是逆向工程,在开发者协议中是禁止的。

    我在这个列表中找不到适合我的声音。

    您可能需要找到一个声音资源而不是 SystemSoundID,然后使用AudioServicesCreateSystemSoundID 注册它并为其创建一个 SystemSoundID。

    我想知道是否有更新的 SystemSounds 列表。

    最新公开 SystemSoundID 列表为here

    警报声音标识符

    常量

    • kSystemSoundID_Vibrate

      在 iPhone 上,将此常量与 AudioServicesPlayAlertSound 函数调用一个简短的振动。在 iPod touch 上,什么都不做。

    • kSystemSoundID_UserPreferredAlert

      在桌面上,将此常量与 AudioServicesPlayAlertSound 播放声音首选项窗格中指定的警报的函数。

    • kSystemSoundID_FlashScreen

      在桌面上,将此常量与 AudioServicesPlayAlertSound 在屏幕上显示闪光的功能。

    • kUserPreferredAlert

      已弃用。请改用kSystemSoundID_UserPreferredAlert

    (其中一些仅适用于 macOS。)


    使用其他SystemSoundID,可视为使用私有API。

    Apple 开发者论坛中来自 Apple 开发者的一些 cmets:

    Does this count as a private API?

    在 API 中使用未记录的任意值是不合适的,因此我建议您在提交时不要这样做。

    Haptic feedback for force touch?

    对于要被视为 API 的固定 SystemSoundID 值,它必须在标头中具有符号常量。传入其他固定值是不行的。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-11-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-09-19
      • 2013-03-10
      • 1970-01-01
      • 2015-05-22
      相关资源
      最近更新 更多