你知道我怎麼知道iPhone是否處於振動模式? 我在網上找不到任何關於這個的東西...太累了看?iPhone - 我如何知道iOS的振動是打開還是關閉?
我想在應用程序中顯示圖標,以便用戶可以知道在手機處於振動模式時是否正在查看它。 Tha應用程序也有不同的行爲,取決於用戶是否想要受到干擾(振動)或不振動(振動)。
謝謝。
你知道我怎麼知道iPhone是否處於振動模式? 我在網上找不到任何關於這個的東西...太累了看?iPhone - 我如何知道iOS的振動是打開還是關閉?
我想在應用程序中顯示圖標,以便用戶可以知道在手機處於振動模式時是否正在查看它。 Tha應用程序也有不同的行爲,取決於用戶是否想要受到干擾(振動)或不振動(振動)。
謝謝。
您應該能夠使用這個實現:
#import "AudioToolbox/AudioToolbox.h"
- (void) ifSilentModeThenShowIcon
{
CFStringRef state;
UInt32 propertySize = sizeof(CFStringRef);
AudioSessionInitialize(NULL, NULL, NULL, NULL);
AudioSessionGetProperty(kAudioSessionProperty_AudioRoute, &propertySize, &state);
if(CFStringGetLength(state) == 0)
{
// phone's ringer is off so put
// some icon showing code here
}
}
很好找。我認爲這對App Store來說是安全的? – 2011-04-02 01:30:07
是的,這些只是音頻會話屬性,所以它是公共API。更多信息:http://developer.apple.com/library/ios/#documentation/AudioToolbox/Reference/AudioSessionServicesReference/Reference/reference.html – iwasrobbed 2011-04-02 02:06:46
AudioSessionInitialize和AudioSessionGetProperty在iOS 7中已棄用,是否有其他方法可以做到這一點? – easythrees 2014-01-12 21:35:21
你可以調用它。 ;) – ikegami 2011-04-01 23:15:46
我知道我不應該這樣做,但是...... * snicker * – 2011-04-01 23:22:45
你知道它是在振動模式下想達到什麼目的?用於音頻播放? – iwasrobbed 2011-04-02 00:22:45