Mitä macOS-sovelluksessa on ja mitä se tekee? macOS-sovellukset näyttävät monoliittisilta tiedostoilta, mutta ne ovat enemmän kansioita, joissa on hienoja kuvakkeita, joita kutsutaan nipuiksi. Avaa nämä paketit, niin löydät joukon sovelluksen vaatimia tiedostoja. Mitä tämä kaikki tekee? Näiden pakettien ymmärtäminen on hyödyllistä kehittäjille, järjestelmänvalvojille, pelien muokkaajille, Hackintosh-rakentajille, turvallisuudesta kiinnostuneille käyttäjille ja kaikille, jotka tekevät sovelluksen vianetsintää.
Mitä ovat macOS-sovelluspaketit?
Kuten Applen määrittelemä, nippu on ”hakemisto, jolla on standardoitu hierarkkinen rakenne ja joka sisältää suoritettavan koodin ja sen käyttämät resurssit”. Toisella nimellä se on sovellus. On olemassa tietty rakenne ja muoto, joita kehittäjien on noudatettava varmistaakseen, että heidän sovelluksensa toimii oikein. Riko näitä käytäntöjä, niin todennäköisesti rikot sovelluksesi. Jos jokin ei toimi aivan oikein, sovelluspaketti voi olla hyödyllinen vianetsintäpaikka.
Sovellukset eivät ole ainoita paketteja. Kimppuja käytetään myös tiedostoille, joiden tunniste, kuten .framework, .nippu, .plugin ja .kext. Kimput näkyvät yhtenäisinä objekteina Finderissa, kunnes pääset niihin avaamalla nipun paketin.
Sovelluspakettien avaaminen
Toisin kuin hakemistot, sovelluspaketit vaativat lyhyen tanssin avautuakseen.
1. Napsauta hiiren kakkospainikkeella sovelluksen kuvaketta kohdassa ”/Applications/”.
2. Napsauta pikavalikosta Näytä paketin sisältö.
3. Siirry sovelluksen ensisijaiseen hakemistoon kaksoisnapsauttamalla Sisältö-kansiota.
MacOS App Bundle -perusanatomia
Paketin Sisältö-kansiossa on useita tiedostoja. Kaikkien macOS-sovellusten on sisällettävä vähintään seuraavat tiedostot:
- Info.plist: sisältää pakolliset määritystiedot sekä sovelluksen tunnistemerkkijonot.
- MacOS/Suoritettava: koodi, joka suoritetaan, kun käyttäjä käynnistää ”MacOS”-kansiossa olevan sovelluksen. Ilman suoritustiedostoa sinulla ei ole paljon nippua.

Löydät todennäköisesti myös joukon lisätiedostoja muutamista yleisistä kansioista:
- Plugins: laajennuksen kaltaiset mini-suoritettavat tiedostot, jotka laajentavat suoritettavan ydinohjelman toimintoja. Toisin kuin staattiset resurssit, laajennukset lisäävät dynaamisesti toimintoja sovellukseen.
- Resurssit: tukitiedostot, joihin sovelluksesi luottaa. Tämä kansio sisältää, mutta ei rajoittuen, kuvia, kuvakkeita, ääniä, fontteja, nib-tiedostoja, lokalisoinnit ja tietovarastot. Toisin kuin laajennukset, nämä resurssit tukevat suoritettavan tiedoston ydintoimintoja.
- Kehykset: kuten laajennukset, sovelluksesi vaatimat korkean tason kehykset ovat omia pakettejaan. Niissä on kuitenkin erilainen hierarkkinen rakenne.
- CodeSignature: jäsennelty plist-tiedosto, jota käytetään antamaan koodiallekirjoitus sovelluksen jokaiselle osalle. Näiden allekirjoitusten avulla sovellus ja macOS voivat varmistaa sovelluksen eheyden ja estää sovellusten kaappaushyökkäykset.
iOS-sovelluspaketit käyttää samaa perusrakennetta ja tiedostomuotoa, vaikka ne esiintyvät usein eri hierarkiassa.
Info.plist

Info.plist on sovelluksesi perusdemografisten tietojen ensisijainen tiivistelmä. Tämä sisältää nipputunnuksesi, jonka on oltava yksilöllinen kaikista muista nipun tunnisteista. Tämän prosessin yksinkertaistamiseksi Apple suosittelee käänteistä verkkotunnuksen merkintää, kuten ”com.apple.siri.launcher” tai ”org.videolan.vlc”. Lisätietoja Info.plistista on osoitteessa Applen avainluettelo ja mieti, mitä kukin näppäin tekee.
Tämä tiedosto sisältää myös sovelluksen perustiedot, kuten sovelluksen kuvakkeen, sovelluksen nimen, versionumeron, tekijänoikeustiedot, virheraportointilinkit ja oletuskielen. Käytännön ja järjestelmäsääntöjen mukaan ”I”-kirjain ”Info”-osassa on aina isolla kirjaimella.
Suoritettava
Tässä on sovelluksesi ensisijainen koodi. Kun sovellus avataan, macOS suorittaa koodin, joka sisältyy paketin ”MacOS”-hakemistossa olevaan suoritettavaan tiedostoon. Lähes jokaisessa sovelluksessa on vain yksi suoritettava tiedosto, vaikka kahta tai useampaa voidaan käyttää apuohjelmiin. Tämä tiedosto ei yleensä kiinnosta ketään muuta kuin ohjelmiston kehittäjää, koska käyttäjä ei voi helposti tarkastella tai muokata sitä.
Resurssit ja lisätukitiedostot
Kaikki sovelluksellesi oleellinen tulee sisällyttää sen nippuun. Jos se ei ole osa suoritettavaa tiedostoa, sen pitäisi mennä johonkin paketin resurssikansioista. Nämä resurssit voidaan tallentaa ensisijaiseen ”Resurssit”-kansioon tai jakaa eri kansioihin.
- Jos olet epävarma, useimmat resurssit menevät Resurssit-kansioon.
- Kehykset menevät ”Frameworks”-kansioon.
- Plugins menevät ”Plugins”-kansioon.
- Lokalisointitiedostot (.lproj-hakemistot) menevät Resurssit-kansioon.
Näiden vaatimusten ulkopuolella Apple tarjoaa monia ehdotuksia ja käytäntöjä, joita tulee noudattaa, ellei sinulla ole puolustettavaa syytä toimia toisin.
Johtopäätös
macOS-sovellukset sisältyvät nippuihin, jotka ovat sovellustiedostojen hierarkkisia säilöjä. Perusrakenne on sama jokaisessa sovelluksessa. Käyttäjää kiinnostavimmat tiedostot löytyvät sovelluspaketin Resources-kansiosta.
Tue työtämme ❤️
Jos pidit tästä artikkelista, harkitse tipin antamista, jotta voimme jatkaa laadukkaan sisällön julkaisemista.





















