Възможно ли е програмно да се провери дали системната опция на iPhone
Settings -> Sounds -> Vibrate on Ring
е активиран?
В моето приложение бих искал да покажа предупреждение на потребителя, ако тази опция е деактивирана.
Възможно ли е програмно да се провери дали системната опция на iPhone
Settings -> Sounds -> Vibrate on Ring
е активиран?
В моето приложение бих искал да покажа предупреждение на потребителя, ако тази опция е деактивирана.
Не можеш. Тъй като Apple не предоставя API за достъп до приложението за настройки на iPhone.
може би можете да опитате и да се уверите, че стартирате приложението в 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");
}
надявам се, че ще ви помогне!