2017-02-02 9 views
0

필자는 적절한 춤을 추고 내 OS X 응용 프로그램의 문서 형식에 사용자 지정 파일 확장명 등을 사용하여 사용자 지정 UTI를 설정했습니다. 나는 내 파일 유형에 대한 아이콘을 설정하고 그 또한 작동합니다. 필자는 앱에서 새 파일을 저장할 때 올바른 아이콘으로 Finder에 나타납니다. 하지만 약 1 초 후에 Finder는 내 아이콘을 일반적인 "미리보기"아이콘으로 바꿉니다. 내 파일의 텍스트 내용을 아이콘 안에 표시하고 내 파일 확장자는 대문자로 표시하며 미리보기 아이콘 하단에 다음과 같이 표시합니다 :내 응용 프로그램의 문서 형식에 대한 Finder 아이콘 미리보기를 어떻게 해제 할 수 있습니까?

enter image description here

내가 MIME 타입 text/plain을 갖는 public.utf8-plain-text에 부합하는 나의 정의 UTI를 선언하기 때문에 이런 일이 생각합니다. 나는 그들이 실제로 텍스트 파일이기 때문에 그것을하고 싶다. 그리고 나는 사용자가 그것들을 그들처럼 취급 할 수있게하고 싶다. 다른 애플 리케이션은 그것들을 인식 할 수있다. 그러나 이것으로 Finder는 (아마도 몇몇 QuickLook 생성기를 통해) 또는 뭔가) 따라서 "아하, 그것은 텍스트 파일, 나는 텍스트 파일에 대한 사용자 미리보기 아이콘을 만드는 방법을 알아요!" 내 사용자 정의 아이콘을 대체합니다. 나는 말할 것도없이, 내가 원하는 것을하지 않습니다. 어떻게 이런 일이 일어나지 않도록 할 수 있습니까? 내 프로젝트에서 Objective-C를 사용하고 있지만이 언어 관련 문제는 아니라고 생각합니다. 그것은 모두 내 애플 리케이션 plist의 UTI 선언과 관련이있다.

말하기있는, 여기 내 UTI는 엑스 코드에서 구성되는 방식의 스크린 샷입니다 :

enter image description here

는 그리고 여기에 엑스 코드의 UTI 수출의 스크린 샷입니다 :

enter image description here

거기에있는 아이콘 미리보기가 물음표로 표시되는 것은 좋습니다. 그 이유는 아이콘 이미지가 내 프로젝트에 빌드시 Xcode에 의해 .icns 파일로 바뀌는 .iconset 폴더에 포함되어 있기 때문입니다. Xcode는 올바른 미리보기를 표시 할만큼 똑똑하지 않습니다. 위의 그림과 같이 아이콘이 .icns 아이콘으로 설정되고 .icns이 UTI에 바인딩되어 있음을 알리기 위해 미리보기 아이콘으로 바꾸기 전에 Finder에서 잠시 동안 올바른 아이콘이 표시됩니다. 필자가 파인더에서 내 파일에 "정보 입수"를하는 경우 동일한 길을 따라 정보 창 왼쪽 상단에 올바른 아이콘이 표시됩니다. 올바른 아이콘은 내 앱의 창의 제목 표시 줄에도 표시됩니다. Finder의 디스플레이에서 잘못된 아이콘이 사용되었습니다. 어떤 아이디어?

답변

0

추가 실험을 통해 지금까지 발견 할 수있는 최선의 해결책은 public.utf8-plain-text에서 public.text으로 "준수하는 항목"필드를 변경하는 것입니다. public.text UTI는 모든 종류의 텍스트 (마크 업 포함 여부에 관계없이 모든 인코딩)에 사용됩니다. UTI에 더 구체적으로 일치하면 Finder (또는 누구든지)가 내 아이콘을 대체하게됩니다. 그러나 public.text을 사용하면 아이콘이 바뀌지 않을 것입니다. 아마도 누구든지이 작업을 수행하는 사람은 진행하기에 충분한 정보가없는 것처럼 느끼기 때문일 것입니다. public.text은 매우 일반적이기 때문에 가능합니다.

내 파일에 사용 된 인코딩이 내 UTI 내보내기 정보에 공개되지 않았기 때문에 다른 앱이 내 앱의 파일을 텍스트로 열지 못하게되므로 이는 실제로 최적이 아닙니다. 다른 사람이 더 나은 해결책을 가지고 있다면, 나는이 대답에 우선하여 투표하게되어 기쁩니다. 그러나 후손을 위해 비슷한 질문을 한 다른 사람을 도울 수 있기 때문에이 답변을 올렸습니다.

+0

방금 ​​애플에 버그를 기록했습니다. – bhaller