[译]用户交互:音频

人们通过音量按钮、静音开关、耳机控制和屏幕音量滑块操控声音。许多第三方附件也包含声音控件。音频可以通过内置或外置扬声器、耳机输出,甚至可以通过启用AirPlay或蓝牙设备进行无线输出。无论声音是应用程序体验的主要方面还是点缀,您都需要知道人们如何期望声音的行为和满足这些期望。

1、静音
人们将他们的设备切换为静音,以避免被意外的声音打断,例如铃声和接收的消息声音。他们还想使非必需的声音禁用,包括键盘声音、音效、游戏音效和其他声音反馈。当设备设置为静音时,只有明确发起的声音应该出声,例如在媒体播放、警报和音频/视频消息的音频。

2、音量
无论使用物理设备按钮还是屏幕滑块,人们都期望音量的变化会影响所有的声音系统,包括音乐和应用内的声音效果。唯一的例外是铃声音量,它总是在音频没有播放时单独调整。

3、耳机
人们使用耳机去听一些私密的声音或解放双手。当插入耳机时,用户期望声音自动的继续在耳机中播放,当拔掉耳机时希望能立即暂停。

4、设计出色的音频体验
在必要时自动调整级别,但不是整体音量。你的应用程序可以调整相对独立的音量级别来实现音频的混合。但是,最终的输出应该始终被系统音量控制。

允许在适当的时候重新播放音频。人们通常想要选择一个不同的音频输出设备。例如,他们可能想通过客厅的立体声音响、汽车收音机或苹果电视来听音乐。除非有令人信服的理由,否则支持这个功能。

使用系统提供的音量视图来进行音频调整。为调整音频提供接口控制的最好方法是使用音量视图。这个视图是可定制的,包括一个音量级别的滑块,甚至还包括一个控制来重新播放音频输出。对于开发人员指南,请参阅MPVolumeView。

使用系统的声音服务来做短声音和振动。对于开发人员的指导,请参阅系统声音服务。

如果声音对你的应用程序来说是必要的,对你的音频进行分类。不同的音频类别分别允许声音被静音开关控制,与其他音频混合,或者在你的应用程序处于后台时播放。根据它的含义和设备的当前音频状态选择一个类别,并将其分配给您的音频会话。例如,如果你不需要,不要让人们停止听其他应用的音乐。一般来说,最好避免在应用程序运行时更改类别,在不同时间记录和回放的应用程序例外。对于开发者指南,请参阅音频会话编程指南。

类别 含义 行为
独奏环境 声音并非必不可少,但会使其他音频无声。例如,带有配乐的游戏。 响应静音开关。
不要与其他声音混合。
不在后台播放。
氛围音乐 声音不是必需的,它不会使其他音频无声。例如,一款游戏可以让玩家在游戏过程中播放来自其他应用的音乐,而不是游戏的配乐。 响应静音开关。
与其他声音混合。
不在后台播放。
回放 声音至关重要,可能会与其他音频混合使用。例如,教授外语的有声读物或教育应用程序,人们在离开应用程序后可能想听。 不响应静音开关。
可能会或可能不会与其他声音混合。
可以在后台播放。
录音 录音。例如,提供音频记录模式的笔记应用程序。这种性质的应用程序如果允许人们播放录制的音符,则可以将其类别切换为播放。 不响应静音开关。
不要与其他声音混合。
可以在后台录制。
播放和录制 录音和播放声音,可能同时进行。例如,音频消息或视频通话应用程序。 不响应静音开关。
可能会或可能不会与其他声音混合。
可以在后台录制和播放。

发生中断后,适时恢复音频播放。有时,当前播放的音频会被另一个应用程序的音频打断。诸如来电等临时中断被认为是可恢复的。永久中断,如由Siri发起的音乐播放列表,被视为不可恢复。当发生可恢复中断时,如果在中断开始时正在播放音频时中断结束,应用程序应该继续播放。例如,在播放音频的过程中播放音轨和媒体应用的游戏都应该恢复。

当你的应用程序结束播放临时音频时,让其他应用程序知道。如果你的应用程序可能会暂时中断其他应用程序的音频,它应该适当地标记音频会话,这样其他应用程序在安全恢复时就会得到通知。

仅在有意义时才对音频控制作出响应。无论您的应用处于前台还是后台,人们都可以控制应用界面外部的音频播放,例如控制中心或耳机上的控件。如果您的应用正在播放音频,在清晰的音频相关环境中,或者连接到支持AirPlay的设备,可以响应音频控制。否则,你的应用程序不应该停止另一个应用程序的音频,当控制被激活时它可能正在播放。

请勿重新调整音频控制。人们期望音频控制在所有应用程序中表现一致。永远不要重新定义音频控制的表意。如果你的应用不支持某些控件,那么它不应该对它们做出响应。

英文原文链接

为您推荐

发表评论

电子邮件地址不会被公开。 必填项已用*标注