2014-10-05 14 views

답변

1

후크 그냥 관찰자에 스위치 이벤트를 원하는 경우에 당신이

static void RingerStateChanged(CFNotificationCenterRef center, void *observer, CFStringRef name, const void *object, CFDictionaryRef userInfo) 
{ 
} 

CFNotificationCenterAddObserver(CFNotificationCenterGetDarwinNotifyCenter(), 
           NULL, 
           RingerStateChanged, 
           CFSTR("com.apple.springboard.ringerstate"), 
           NULL, 
           CFNotificationSuspensionBehaviorDeliverImmediately); 
같은 다윈 알림 센터 시스템 전체의 통지 com.apple.springboard.ringerstate을 관찰 할 수

SBMediaController - (void)setRingerMuted:(char) 

발판이 방법

+0

나는 다윈 알림을 듣는 방법에 대해 많이 조사했지만 거의 아무것도 찾지 못했습니다. 그럼 그걸 모범으로 보여 주시겠습니까? :) – user3628430

+0

Apple에서 문서화했습니다. https://developer.apple.com/library/mac/documentation/CoreFoundation/Reference/CFNotificationCenterRef/Reference/reference.html – creker

+0

이미 읽었지만 혼란 스럽습니다. _ringerstate_ 알림에 대한 실제 예제가 필요합니다. 또한 ** setRingerMuted : ** 메서드를 재정의하려면 char 인수를 받아들이므로 어떻게 켜거나 끕니까? 나는 그것이 char가 아닌 bool이라고 생각한다. 도와 줘서 고마워. :) – user3628430