是否可以以编程方式检查iPhone的系统选项
Settings -> Sounds -> Vibrate on Ring
已启用?
在我的应用中,如果禁用该选项,我想向用户显示提醒。
答案 0 :(得分:0)
你做不到。因为apple没有提供API来访问iPhone设置应用程序。
答案 1 :(得分:-1)
可能是你可以尝试一下并确保你在iDevice中运行应用程序,因为模拟器没有静音或响铃模式:)
新编辑
-(BOOL)silenced
{
#if TARGET_IPHONE_SIMULATOR
// return NO in simulator. Code causes crashes for some reason.
return NO;
#endif
CFStringRef state;
UInt32 propertySize = sizeof(CFStringRef);
AudioSessionInitialize(NULL, NULL, NULL, NULL);
AudioSessionGetProperty(kAudioSessionProperty_AudioRoute, &propertySize, &state);
if(CFStringGetLength(state) > 0)
return NO;
else
return YES;
}
你可以这样调用这个方法
if ([self silenced])
{
NSLog(@"silenced");
} else {
NSLog(@"not silenced");
}
希望它会对你有所帮助!