如何通过App以编程方式检查系统振动是打开还是关闭? 在我的情况下,UI设计就像 - 我将一个按钮设置为viewcontroller。哪个功能是,当我按下按钮时,它会提醒我系统振动是开还是关。这是下面的代码。但它不起作用。它总是和其他部分一起使用。
- (IBAction)checkVibrate:(id)sender {
CFStringRef state;
UInt32 propertySize = sizeof(CFStringRef);
AudioSessionInitialize(NULL, NULL, NULL, NULL);
AudioSessionGetProperty(kAudioSessionProperty_AudioRoute, &propertySize, &state);
if(CFStringGetLength(state) == 0)
{
//off
[self Alert:@"It seems that your phone's vibration is off. Please go to your phone setting and make the vibration ON"];
}
else
{
//on
[self Alert:@"It seems that your phone's vibration is On.If you want to off the vibration, please go to device setting and make vibration Off"];
}
}
如果我走错了路,请帮我解决这个问题?
答案 0 :(得分:0)
答案 1 :(得分:0)
一旦我看到你的问题,我就试着找到解决方案。我在堆栈溢出和其他网站中准备了大部分其他答案。全部告诉使用AVAudioSession
音频会话充当您的应用和应用之间的媒介 操作系统 - 反过来,底层音频硬件。你用 它可以向操作系统传达应用程序的性质 音频没有详细说明特定行为或所需的交互 与音频硬件。这代表了那些管理 音频会话的详细信息,确保操作系统 可以最好地管理用户的音频体验。
更好的来源
How to detect whether iPhone is vibrating or not?
iPhone - How do I know if the vibrate is on or off for iOS?
Detecting the iPhone's Ring / Silent / Mute switch using AVAudioPlayer not working?