Oto dobre pytanie:
Nazwa pakietu, nazwa pliku wykonywalnego, nazwa produktu ... czy coś jeszcze?
ale po prostu zastanawiam się nad różnicą między „nazwą wyświetlaną pakietu” a „nazwą pakietu” na liście informacji aplikacji kakao.
Oto dobre pytanie:
Nazwa pakietu, nazwa pliku wykonywalnego, nazwa produktu ... czy coś jeszcze?
ale po prostu zastanawiam się nad różnicą między „nazwą wyświetlaną pakietu” a „nazwą pakietu” na liście informacji aplikacji kakao.
Odpowiedzi:
Nie sądzę, aby żadna z pozostałych odpowiedzi zwięźle odpowiadała na to pytanie.
CFBundleDisplayName
- wyświetlany: poniżej ikona . Według dokumentów powinno być zlokalizowane, ale tylko wtedy, gdy sama aplikacja jest zlokalizowana, w przeciwnym razie będzie jakaś kara (jeśli to prawda, nie mogę powiedzieć)
CFBundleName
- wyświetlany: nie mam pojęcia . Dokumenty sugerują, że będzie on używany na listach, więc zaleca się maksymalnie 16 znaków, ale na przykład Ustawienia → Ogólne → Lista użycia aplikacji używa CFBundleDisplayName
naprawdę. Do tej pory nigdy nie zorientowałem się, gdzie dokładnie ten jest używany.
Och, to jest dla aplikacji na iOS, nie mogę mówić w innych systemach operacyjnych.
dzięki za odpowiedź Wevah. oto opisy dla ludzi, którzy mylili te dwie stałe.
CFBundleDisplayName
(Ciąg - iOS, Mac OS X) określa wyświetlaną nazwę pakietu. Jeśli obsługujesz zlokalizowane nazwy dla swojego pakietu, umieść ten klucz zarówno w pliku listy właściwości informacji, jak iw plikach InfoPlist.strings w podkatalogach języka. Jeśli lokalizujesz ten klucz, należy również dołączyć zlokalizowaną wersję klucza CFBundleName.
Jeśli nie zamierzasz lokalizować pakietu, nie umieszczaj tego klucza w pliku Info.plist. Uwzględnienie tego klucza nie wpływa na wyświetlanie nazwy pakietu, ale powoduje spadek wydajności przy wyszukiwaniu zlokalizowanych wersji tego klucza.
Przed wyświetleniem zlokalizowanej nazwy pakunku Finder porównuje wartość tego klucza z rzeczywistą nazwą pakunku w systemie plików. Jeśli te dwie nazwy są zgodne, Finder przechodzi do wyświetlenia zlokalizowanej nazwy z odpowiedniego pliku InfoPlist.strings pakietu. Jeśli nazwy się nie zgadzają, Finder wyświetla nazwę systemu plików.
Aby uzyskać więcej informacji na temat nazw wyświetlanych w systemie Mac OS X, zobacz Omówienie systemu plików.
CFBundleName
(Ciąg - iOS, Mac OS X) określa krótką nazwę pakietu. Ta nazwa powinna mieć mniej niż 16 znaków i być odpowiednia do wyświetlania na pasku menu i oknie informacyjnym aplikacji. Ten klucz można dołączyć do pliku InfoPlist.strings w odpowiednim podkatalogu .lproj, aby podać zlokalizowane wartości dla niego. Jeśli lokalizujesz ten klucz, powinieneś również dołączyć kluczCFBundleDisplayName.
Według Apple
Wyświetlana nazwa aplikacji
on the iPhone home screen
pochodzi z wpisu CFBundleDisplayName (lub „Wyświetlana nazwa pakietu” jako czytelny dla człowieka ciąg w Xcode) w pliku Info.plist aplikacji na iOSPodobnie nazwa aplikacji, którą widzisz w swoim
WatchKit app's launch screen
inotifications
pochodzi z CFBundleDisplayName z Info.plist Twojej aplikacji WatchKit
The Apple Watch app on the iPhone
obecnie używa nazwy pakietu (nie nazwy wyświetlanej pakietu) Twojej aplikacji na iOS, która jest określona przez wpis CFBundleName (lub „Nazwa pakietu”) w jej Info.plist
Możesz zobaczyć inne powiązane zrzuty ekranu i uzyskać więcej informacji na stronie Apple Developer, klikając tutaj .
Z mojego doświadczenia:
Tylko jeśli CFBundleDisplayName
nie określono nazwy wyświetlanej pakietu ( ), wartość nazwy pakietu ( CFBundleName
) zostanie użyta do wyświetlenia pod ikoną aplikacji.
Należy pamiętać, że CFBundleDisplayName
można go zlokalizować i należy go użyć do ustawienia nazwy aplikacji wyświetlanej w menu Springboard iOS oraz w aplikacjach / kontroli misji systemu Mac OS X.
Krótko mówiąc, nie dotykaj CFBundleName
i nie zostawiaj domyślnej wartości, tj ${PRODUCT_NAME}
.