을 찾을하지 않을 수 있도록 프로그램 아니요 API 그래서 가장 좋은 방법은 ScriptBridge를 사용하는 것입니다.
빌드 대상에 ScriptingBridge.framework
를 추가하고 사용 찾기위한 헤더 파일을 생성합니다
sdef /System/Library/CoreServices/Finder.app/ | sdp -fh --basename Finder
그런 다음 찾기를 요청할 수 있습니다 사용자에게 메시지를 표시하기 위해 휴지통 비우기 :
#import "Finder.h"
FinderApplication *finder = [SBApplication applicationWithBundleIdentifier:@"com.apple.Finder"];
// activate finder
[finder activate];
// wait a moment (activate is not instant), then present alert message
dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(0.1 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{
[finder emptySecurity:security];
});
가 참조 자세한 내용은 Scripting Bridge documentation을 참조하십시오.
Xcode 7.3부터 Swift에서이 작업을 시도하면 Finder.h에 정의 된 클래스를 찾으려고 링커 오류가 발생합니다. 따라서 Objective-C 래퍼를 만들어야합니다.
왜이 작업을 수행해야합니까? 휴지통은 사용자의 영역이며 앱이 실제로 그것을 망칠 필요가 없습니다. –