Как установить значок для пакета, который не является приложением? Я пытался использовать CFBundleIconFile, но он не работает (хотя, если я просто изменил расширение пакета на .app
, значок будет изменен на желаемый). Есть ли другой ключ или единственный способ установить значок для каталога? Если это так, есть ли какой-нибудь скрипт для этого из командной строки (сценарий запуска Xcode)?Значок набора для un app mac os x bundle
ответ
Если вам нужно сделать это с CLI ... Это немного сложнее ...
Во-первых, вам нужно добавить CFBundleIconFile
строку вашего комплекта-х
YourThing.bundle/Contents/Info.plist
Здесь, где разработчик получает , укажите пользовательский значок для комплекта. Этот ключ содержит имя файла в папке ресурсов пакета, в которой находятся значки . TextEdit сохраняет свой значок в файле Edit.icns, , но нет правила о том, что должно быть имя файла .
Тем не менее, вам необходимо либо файл ICNS, или может follow these instructions из этого Utility (which includes its source code), который генерирует ICNS-х из файлов изображений с помощью командной строки ..
$ ./makeicns
Использование: makeicns [k1 = v1 ] [к2 = v2] ...
Ключи и значения включают в себя: 512: Имя входного изображения для 512x512 варианта значка 256: Имя входного изображения для 256x256 варианта значка 128: Название входного изображения для варианта 128x128 значка 32: Имя входного изображения для варианта 32x32 значка 16: Имя входного изображения для варианта 16x16 значка в: Имя входного изображения для всех вариантов, не имеющих явного имя аут: Имя выходного файла, по умолчанию имя первого непустого ввода, но с расширением ICNS
Примеры:
makeicns -512 image.png -32 image.png
Создает image.icns с только 512x512 и вариант 32x32.
makeicns -in myfile.jpg -32 otherfile.png -out outfile.icns
Создает outfile.icns с размерами 512, 256 , 128 и 16, содержащих данные из myfile.jpg и с размером 32, содержащий данные из otherfile.png.
Answer from similar (duplicate) question:
[[NSWorkspace sharedWorkspace]
setIcon:(NSImage *)image
forFile:(NSString *)bundlePath
options:0];
Почему это downvoted? Это не работает? @tig – Noitidart
Это решение сработало для меня, однако оно не изменило файл внутри '/ Contents/Resources/appicon.icns' в моем приложении. Даже если я перезапущу, он использует новый значок, на который я его установил, но мое старое изображение остается в папке «Ресурсы», заставляя меня думать, что некоторые сложные вещи идут по другому, а затем простому обновлению. Можете ли вы поделиться своими мыслями по этому поводу @yairchu – Noitidart
@Noitidart: Я нашел его в дублированном вопросе (связанном), как я уже упоминал. «Fruity Geek» дал ответ там и ссылки на ссылку Apple, у меня нет никаких дополнительных подробностей. – yairchu
- 1. Mac OS X Embedded Helper App Bundle Code Signing
- 2. Заменить/обновить файлы в Mac OS X App Bundle
- 3. Bundle ImageMagick библиотека с OS X App?
- 4. Mac OS X документ значок шаблона?
- 5. Обновить значок рабочего стола mac os x
- 6. Распространение инструмента командной строки C в OS X .app Bundle
- 7. OS X Java .app bundle не может открыть другие приложения?
- 8. Проверка пароля в Mac OS X app
- 9. Создание Mac OS X App вместо консоли
- 10. mac os x app bundle, созданный из pyinstaller, не работает правильно
- 11. Изменить название Mac OS X Mavericks app
- 12. Mac OS X app/service и stdin?
- 13. Значок с высоким разрешением для файла в Mac OS X?
- 14. Что такое App Bundle на Mac?
- 15. Bundle .app файл в проекте Xcode OS X
- 16. Как скрыть значок приложения из док-станции Mac OS X
- 17. Латекс для Mac OS X
- 18. MapKit для Mac OS X?
- 19. Eclipse для Mac OS X
- 20. UIPopoverController для Mac OS X?
- 21. Шаги для Mac OS X
- 22. ldconfig для Mac OS X
- 23. SetWindowsHookEx для Mac OS X?
- 24. Bundle скрипт python в OS X App, но
- 25. Bundle java app для mac distribution
- 26. Как получить CodeSignature для Mac OS X app
- 27. Mac OS X - запуск приложения для монитора?
- 28. Подписывание Mac os app?
- 29. Сборка Mac OS X
- 30. Mac OS X Linker
мне это нужно, чтобы запустить из командной строки – tig