振动和警报在 iOS 中不起作用

Vibrations and alert not working in iOS

所以我 运行 在我的 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 代及更新版本——播放指定的声音。

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

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

执行任何操作

iPad 不支持物理振动。

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