iOS

时间:2016-01-08 04:05:30

标签: ios objective-c audiotoolbox vibration

所以我在我的iPad Mini上运行,我的代码看起来像

-(void)viewDidLoad{
[super viewDidLoad]
AudioServicesPlaySystemSound(1005);
AudioServicesPlayAlertSound(kSystemSoundID_Vibrate); 
}

我导入了

#import <AudioToolbox/AudioToolbox.h>
#import <AudioToolbox/AudioServices.h>

在我的ViewController.h中。只有第一个声音播放,即使根据文档,第二个声音也应该发出哔哔声。我该如何解决这个问题?

编辑: 对于那些看着这个问题的人来说,在旧设备中,我认为这会发出哔哔声 - 文档说:

“根据特定的iOS设备,此功能会播放短音并可能会激活振动。调用此功能会在各种iOS设备上执行以下操作:

iPhone播放指定的声音。如果用户已将“设置”应用程序配置为振铃,则也会调用振动。但是,如果您的应用程序的音频会话配置了AVAudioSessionCategoryPlayAndRecord或AVAudioSessionCategoryRecord音频会话类别,则设备不会振动。这可确保振动不会干扰录音。有关音频会话类别的说明,请参阅类别快速音频角色。

iPod touch,原创 - 播放短暂的警报旋律。

iPod touch,第二代及更新版 - 播放指定的声音。“

但我认为该功能已被删除。

2 个答案:

答案 0 :(得分:1)

iPad上没有振动。 来自文档:

@constant       kSystemSoundID_Vibrate
Use this constant with the play sound APIs to vibrate the device
                    - iOS only 
                    - on a device with no vibration capability (like iPod Touch) 
                       this will do nothing

所以AudioServicesPlayAlertSound(kSystemSoundID_Vibrate);无法在iPad上做任何事情

答案 1 :(得分:0)

iPad没有支持物理振动。

您只能在iPhone和较新版本的iPod中使用这些代码。