Balíček (macOS) - Bundle (macOS)
Přípona názvu souboru | .app, .framework, .kext, .plugin, .docset, .xpc, .qlgenerator, .component, .saver, .mdimporter atd. |
---|---|
Jednotný identifikátor typu (UTI) | com.apple.bundle |
Kontejner pro | spustitelný binární soubor, metadata, další balíčky, jakýkoli jiný soubor potřebný ke spuštění aplikace. |
v Další krok, OPENSTEP, GNUstep a jejich přímí potomci Operační Systém Mac a iOS, a svazek je soubor adresář s definovanou strukturou a příponou souboru, což umožňuje seskupit související soubory jako koncepčně jedinou položku.
Mezi příklady patří balíčky, které obsahují spustitelný kód aplikace, rámce, a pluginy. Tento druh balíčku obvykle obsahuje jeden soubor představující spustitelný kód a soubory, které představují prostředky, jako je hroty, šablony, obrázky, zvuky a další média. Na některých dalších systémech, jako je Microsoft Windows, tyto prostředky jsou obvykle zahrnuty přímo do samotného spustitelného souboru v době kompilace. Na starších počítačích Macintosh se používá podobná technika, kde je další metadata lze přidat do souboru vidlice zdroje. Podobně v pojetí jsou adresáře aplikací použito v RISC OS a na ROX Desktop.
Mezi příklady svazků, které neobsahují spustitelný kód, patří balíčky dokumentů (pracuji dokumenty) a knihovny médií (iPhoto Knihovna).
K balíčkům se programově přistupuje pomocí NSBundle
třída v Kakao, NeXTSTEP a GNUstep Nadace rámce, as CFBundle
v Základní nadace. Balíčky často obsahují Info.plist soubor pro metadata.[1] The Jednotný identifikátor typu (UTI) pro balíček Apple je com.apple.bundle
.[2]
Balíčky aplikací
Přípona názvu souboru | .aplikace |
---|---|
Jednotný identifikátor typu (UTI) | com.apple.application-bundle |
Typ formátu | aplikační software |
Kontejner pro | spustitelný binární soubor |
Rozšířeno z | Balíček |
Balíčky aplikací jsou hierarchie adresářů, přičemž adresář nejvyšší úrovně má název, který končí na .aplikace
rozšíření. V balíčku aplikace je obvykle pojmenován první adresář v balíčku pod adresářem nejvyšší úrovně Obsah
. V rámci Obsah
obvykle existuje jiný adresář (tzv Operační Systém Mac
na počítačích Mac), který obsahuje spustitelný kód aplikace. V rámci Obsah
složka je obvykle také adresář s názvem Zdroje
, který obsahuje prostředky aplikace.
Mimo jiné Zdroje
složka obsahuje lokalizované verze aplikace soubory hrotů.
Mezi další běžné podadresáře patří Pluginy
, Rámce
, a Sdílené rámce
. The Rámce
adresář obsahuje rámce používané aplikací a používá se, i když v systému existuje jiná verze rámce. The Sdílené rámce
adresář obsahuje rámce, které mohou být použity jak aplikací, která je obsahuje, tak dalšími aplikacemi; používají se, pouze pokud novější verze jinde v systému neexistuje. Pluginy
obsahuje rozšiřitelný kód používaný aplikací.
Ve výchozím nastavení je Nálezce zobrazí balíčky aplikací, které lze také označit jako balíčky jako neprůhledné soubory bez podkladové struktury; obsah balíčku lze zobrazit pomocí „Zobrazit obsah balíčku“ kontextová nabídka položka.
GNUstep ve výchozím nastavení používá název aplikace k pojmenování složky, která obsahuje kód aplikace. Alternativou je pojmenovat je podle architektury počítače a operačního systému, pro který je kód určen k vytvoření a tlustá binárka, takže aplikaci lze otevřít na mnoha platformách.[3][4]
rámcové balíčky pro macOS
Přípona názvu souboru | .rámec |
---|---|
Jednotný identifikátor typu (UTI) | com.apple.framework |
Rozšířeno z | svazek |
rámce macOS jsou také uloženy jako balíčky;[5] adresář nejvyšší úrovně balíčku rámce má název, který je názvem rámce následovaný příponou .rámec
. V adresáři nejvyšší úrovně je Verze
adresář s podadresáři pro jednu nebo více verzí rámce, každý podadresář obsahující kód dynamické knihovny pro rámec, v souboru, jehož název je stejný jako název rámce, případně s Záhlaví
složka obsahující hlavičkové soubory pro rámec a další podsložky, jako např Zdroje
. The Verze
adresář také obsahuje symbolický odkaz Proud
do adresáře pro aktuální verzi rozhraní. V adresáři nejvyšší úrovně jsou symbolické odkazy na obsah Verze / aktuální
.[6]
The Nálezce zobrazuje balíčky rámce spíše jako adresáře než jako neprůhledné soubory.
Ačkoli GNUstep používá rámce, obvykle se neukládají jako balíčky. Důvodem je, že celá sémantika načítání rámce je považována za příliš cizí jiným platformám.[7]
Načítatelné svazky
Načtitelné balíčky jsou balíčky, které obsahují kód, který lze načíst za běhu.[8] Načtitelné balíčky mají obvykle příponu .bundle
, a nejčastěji se používají jako zásuvné moduly. V systému macOS existuje způsob, jak načíst balíčky i do aplikací, které je nepodporují, což umožňuje hackování třetích stran u populárních aplikací, například Safari[9] a Apple Mail.[10][11] Funkce zděděná od NeXTSTEP, GNUstep má - [NSBundle principalClass]
rozhraní také.
Ve výchozím nastavení je Nálezce zobrazí načtitelné balíčky, které lze také označit jako balíčky jako neprůhledné soubory bez podkladové struktury; obsah balíčku lze zobrazit pomocí „Zobrazit obsah balíčku“ kontextová nabídka položka.
Jiné formáty svazků
Existuje mnoho aplikací macOS třetích stran, které využívají svůj vlastní vlastní formát balíku (např. Tyčinku Kontejner
, Clona .knihovna
, VMware Fusion .vmwarevm
, atd.).
.lproj
An .lproj soubor je balíček, který obsahuje lokalizace soubory pro software OpenStep, macOS nebo GNUstep. Obvykle obsahuje .špička
soubory pro daný jazyk spolu s .struny
v případě potřeby soubory a obrázky (například ReadMe nebo licenční soubory). Tyto lokalizované soubory používají tvůrci instalačních programů k přizpůsobení instalačních balíčků. Jsou také zahrnuty v balíčku aplikace.
Viz také
- Adresář aplikací - RISC OS analogicky k aplikačnímu balíčku
- AppImage - Linuxová aplikace, která využívá podobné principy
Reference
- ^ "Seznam informačních vlastností - zdroje svazků". Dokumentace pro vývojáře Apple.
- ^ "Systémově deklarované jednotné identifikátory typu". Odkaz na jednotné identifikátory typu. Apple Inc. Citováno 2012-06-10.
- ^ „PackagingDrafts / GNUstep“. Fedora Project Wiki.
- ^ „gnustep / tools-make: README.Packaging“. GitHub.
- ^ "Rámec". developer.apple.com. Citováno 2020-10-06.
- ^ „Anatomy of Framework Bundles“. Apple Inc.. Citováno 2011-09-03.
- ^ „Časté dotazy uživatele“. GNUstep.
- ^ Témata programování načítání kódu pro kakao: O načítatelných balíčcích
- ^ „Pimp My Safari: pluginy“. Archivovány od originál dne 31. 10. 2007.
- ^ „Doplňky a nástroje Apple Mail“.
- ^ „Hawk Wings - Pluginy pro Apple Mail“. Archivovány od originál dne 31. 8. 2007.
externí odkazy
- Průvodce programováním balíčku ve společnosti Apple Developer Connection
- Dokumentace NSBundle z projektu GNUstep
- Ptakopysk - nástroj pro vytváření balíčků aplikací kolem skriptů
- Podrobnosti o příponě souboru