많은 연구를했는데 찾고있는 것을 찾지 못했습니다. 현재 내 응용 프로그램의 Deployment Target
과 Base SDK
은 10.8
으로 설정되어 있으며 완벽하게 실행됩니다. Mountain Lions의 새로운 알림 센터에 알림을 올릴 수 있습니다!Mac OS 10.6에서 실행되며 NSUserNotificationCenter를 지원하는 응용 프로그램을 만드는 방법은 무엇입니까?
또한 Mac OS 10.6
에서 실행되는 앱을 빌드하려면 배포 대상을 10.6으로 설정하고 빌드했습니다 (as recommended in this thread). 안타깝게도 앱이 10.6에서 충돌하고 충돌 보고서에 NSUserNotificationCenter를 찾을 수 없다는 내용이 상세히 표시됩니다 (OS 버전 처리 없음).
notificationCenterIsAvailable = (NSClassFromString(@"NSUserNotificationCenter")!=nil);
을이 부울 플래그를 기반으로 운항합니다 : -
그래서 내가 반드시해야 할 일의 NSUserNotificationCenter 클래스가 존재하는지 여부를 확인하는 것입니다. 같은이 플래그를 기반으로 할 수없는
하지만 코드에 대한
:- 인터페이스
..: <NSUserNotificationCenterDelegate> {
- 또는 알림 센터에 대한 참조의 유형 : 클래스의 속성에
NSUserNotificationCenter *center
?
내 생각은 런타임에 클래스 헤더를 동적으로 변경하는 것입니다. 즉, 클래스가 존재하는지 여부에 따라 Notificaion Center를 처리하기위한 메소드와 속성을 추가하는 것이지만 실제로는 복잡해 보입니다.
그래서 'userNotificationCenter : (NSUserNotificationCenter *) center shouldPresentNotification :'과'(void) userNotificationCenter : (NSUserNotificationCenter *) center didActivateNotification :'같은 메소드를 컴파일러가 자동으로 지우는 것인가? – Raffael
@Raffael 코드는 남아 있지 않지만 사용되지는 않습니다. – trojanfoe
감사합니다! 최근의 충돌에는 또 다른 이유가 있었음에 틀림 없다. – Raffael