HardwareGrowler에서 코드의 파이스 동전 :
NSWorkspace *workspace = [NSWorkspace sharedWorkspace];
NSNotificationCenter *center = [workspace notificationCenter];
[center addObserver:[VolumeNotifier class] selector:@selector(volumeDidMount:) name:NSWorkspaceDidMountNotification object:nil];
[center addObserver:[VolumeNotifier class] selector:@selector(volumeDidUnmount:) name:NSWorkspaceDidUnmountNotification object:nil];
[center addObserver:[VolumeNotifier class] selector:@selector(volumeWillUnmount:) name:NSWorkspaceWillUnmountNotification object:nil];
그런 다음 소스 번들에서
http://growl.info/source.php 을 확인 전체 구현을 위해
+ (void) volumeDidUnmount:(NSNotification *)aNotification;
{
...
}
람 알림에 반응하는 방법을 구현해야
Extras/HardwareGrowler로 이동하여 체크 아웃하십시오. VolumeNotifier.h/m
업데이트 :
Peters 대답은 이것보다 우수합니다. 이 문제가 발생하면 Disk Arbitration 프레임 워크를 사용해보십시오.
Amit Singh의 저서 "Mac OS X Internals : A Systems Approach"에서도 설명되어 있습니다. –
문서는 http://developer.apple.com/documentation/Darwin/Reference/DiscArbitrationFramework/ –
에서 찾을 수 있습니다. @QuinnTaylor : 설명서 링크가 추가되었습니다. 감사! –