Electron-työpöytäsovellusten kehitys · Oppitunti

Monialustainen paketointi

Ottakaa haltuun edistyneet paketointiasetukset ja -määritykset `electron-builder`-työkalulla luotettavaa monialustaista jakelua varten.

Oppitunti 1/412 vaihetta

Monialustainen paketointi on ilmainen Electron-työpöytäsovellusten kehitys-oppitunti CoddyKitissä. Tämä on oppitunti 1/4. Voit lukea koko oppitunnin alta ilmaiseksi ja harjoitella sen jälkeen käytännössä selaimessa sisäänrakennetulla koodieditorilla ja ympäri vuorokauden käytettävissä olevan tekoälytuutorin avulla. Oppitunti kuuluu Electron-työpöytäsovellusten kehitys-oppimispolkuun, ja edistymisesi synkronoituu verkon ja CoddyKit-sovelluksen välillä. Electron-työpöytäsovellusten kehitys-kurssilla on yhteensä 4 oppituntia.

Mitä monialustainen paketointi tarkoittaa?

Kun rakennat Electron-sovelluksen, luot verkkoteknologioita käyttävän työpöytäsovelluksen. Jotta voit jakaa sovelluksen käyttäjille, se on paketoitava heidän käyttöjärjestelmäänsä varten tarkoitetuksi suoritettavaksi tiedostoksi tai asennusohjelmaksi.

Monialustainen paketointi tarkoittaa näiden jakelutiedostojen luomista Windowsille, macOS:lle ja Linuxille yhdestä koodikannasta. Näin sovelluksesi voi tavoittaa laajan käyttäjäjoukon käyttöjärjestelmästä riippumatta.

electron-builderin esittely

electron-builder on Electron-sovellusten paketointiin ja jakeluun tarkoitettu ensisijainen ratkaisu. Se on tehokas ja joustava työkalu, joka automatisoi suuren osan monimutkaisesta prosessista.

  • Luo asennusohjelmia: Luo tiedostot `.exe`, `.dmg`, `.deb`, `.AppImage` ja monia muita varten.
  • Koodin allekirjoitus: Huolehtii allekirjoituksesta turvallisuuden ja luotettavuuden varmistamiseksi.
  • Automaattiset päivitykset: Integroituu automaattisten päivitysten mekanismeihin.
  • Joustava määritys: Erittäin muokattavissa package.json-tiedoston tai ulkoisen määrityksen avulla.

electron-builderin perusmääritys

Aloita asentamalla electron-builder kehitysriippuvuutena ja lisäämällä "build"-komentosarja tiedostoon package.json. Tämä komentosarja viittaa yleensä electron-builder-komentoon.

Tässä on perusmääritys:

{
  "name": "my-electron-app",
  "version": "1.0.0",
  "main": "main.js",
  "scripts": {
    "start": "electron .",
    "build": "electron-builder"
  },
  "devDependencies": {
    "electron": "^28.0.0",
    "electron-builder": "^24.0.0"
  },
  "build": {
    "appId": "com.yourapp.id"
  }
}

"appId"-tunnisteen ymmärtäminen

appId (Application ID) on sovelluksesi tärkeä tunniste. Se on yksilöllinen merkkijono, joka esitetään usein käänteisessä verkkotunnusmuodossa (esimerkiksi com.yourcompany.yourappname).

  • Yksilöllisyys: Auttaa käyttöjärjestelmiä tunnistamaan sovelluksesi.
  • Päivitykset: On välttämätön sovelluksesi erottamiseksi päivitysten yhteydessä.
  • Tietojen tallennus: Käyttöjärjestelmä käyttää sitä sovelluskohtaisten tietojen tallentamiseen.

Käytä sovelluksellesi aina yksilöllistä appId-tunnistetta.

Windows-kohtaiset määritykset

Windowsia varten electron-builder voi luoda erityyppisiä asennusohjelmia. Yleisimmät ovat NSIS (Nullsoft Scriptable Install System) ja Squirrel.Windows.

  • NSIS: Luo perinteisiä `.exe`-asennusohjelmia ja tarjoaa enemmän mukautusmahdollisuuksia.
  • Squirrel.Windows: Tarjoaa helpot automaattiset päivitykset ja yksinkertaisemman asennuskokemuksen.

Voit määrittää Windows-kohtaiset asetukset "build"-määrityksen "win"-avaimen alla.

Windows-määrityksen esimerkki

Tässä on esimerkki siitä, miten `electron-builder` voidaan määrittää Windowsia varten kohteet ja kuvake määrittäen:

{
  "name": "my-electron-app",
  "build": {
    "appId": "com.yourapp.id",
    "win": {
      "target": [
        "nsis",
        "squirrel"
      ],
      "icon": "build/icon.ico"
    }
  }
}

macOS-kohtaiset määritykset

macOS:ssä tärkeimmät jakelumuodot ovat DMG (Disk Image) ja PKG (Installer Package). `electron-builder` huolehtii niiden yksityiskohdista.

  • DMG: Yleisin tapa jakaa macOS-sovelluksia; mahdollistaa asentamisen vetämällä ja pudottamalla.
  • PKG: Perinteinen asennuspaketti, joka soveltuu monimutkaisempiin asennuksiin tai yritysjakeluun.

Tärkeitä macOS-asetuksia ovat category ja bundleId (jonka tulee vastata appId-tunnistetta).

macOS-määrityksen esimerkki

Tässä katkelmassa näkyvät macOS-kohtaiset asetukset, kuten kohteet, paketin tunniste ja sovelluksen luokka:

{
  "name": "my-electron-app",
  "build": {
    "appId": "com.yourapp.id",
    "mac": {
      "target": [
        "dmg",
        "pkg"
      ],
      "category": "public.app-category.developer-tools",
      "bundleId": "com.yourapp.id",
      "icon": "build/icon.icns"
    }
  }
}

Linux-kohtaiset määritykset

Linuxissa on useita pakettimuotoja. electron-builder tukee suosittuja muotoja, kuten AppImage-, deb- ja rpm-paketteja.

  • AppImage: Yleinen muoto, joka toimii useimmissa Linux-jakeluissa ilman asennusta.
  • deb: Debian-pohjaisille järjestelmille (Ubuntu, Debian).
  • rpm: Red Hat -pohjaisille järjestelmille (Fedora, CentOS).

macOS:n tapaan määrität sovellukselle usein myös category-luokan.

Linux-määrityksen esimerkki

Tässä on esimerkki Linux-määrityksestä, jossa kohteeksi valitaan eri muotoja ja asetetaan kuvake:

{
  "name": "my-electron-app",
  "build": {
    "appId": "com.yourapp.id",
    "linux": {
      "target": [
        "AppImage",
        "deb",
        "rpm"
      ],
      "category": "Development",
      "icon": "build/icon.png"
    }
  }
}

Testaa paketointiosaamisesi

Yhdistä `electron-builder`-kohteen määritysavain sen ensisijaiseen käyttöjärjestelmään.

Kertaus ja seuraavat vaiheet

Hienoa työtä! Olet oppinut monialustaisen paketoinnin perusteet electron-builder-työkalulla.

  • Tutkimme, miten electron-builder helpottaa Windows-, macOS- ja Linux-asennusohjelmien luomista.
  • Näimme, miten alustakohtaiset asetukset määritetään suoraan package.json-tiedostossa.
  • appId-tunnisteen ja eri asennuskohteiden (NSIS, DMG, AppImage) ymmärtäminen on onnistuneen jakelun kannalta tärkeää.

Seuraavaksi opit koodin allekirjoituksesta ja notarisoinnista, jotka ovat olennaisia vaiheita sovelluksen luotettavuuden varmistamisessa käyttäjille ja käyttöjärjestelmille.

Aloita maksutta

Opi JavaScript tekoälytuutorin avulla — ilmaiseksi

Kirjoita ja suorita oikeaa koodia selaimessa, saa välitöntä apua tekoälytuutorilta ympäri vuorokauden ja jatka siitä, mihin jäit, verkossa tai sovelluksessa.

Kurssit
12
Oppitunnit
47

Usein kysytyt kysymykset

Onko oppitunti ”Monialustainen paketointi” ilmainen?

Kyllä – oppitunnin ”Monialustainen paketointi” koko tekstin voi lukea täällä verkossa ilmaiseksi. Jos haluat harjoitella interaktiivisesti sisäänrakennetulla koodieditorilla ja ympäri vuorokauden käytettävissä olevan tekoälytuutorin avulla sekä avata koko Electron-työpöytäsovellusten kehitys-kurssin, päivitä CoddyKit PROhon. Electron-työpöytäsovellusten kehitys-kurssilla on yhteensä 4 oppituntia.

Mitä opin oppitunnilla ”Monialustainen paketointi”?

Ottakaa haltuun edistyneet paketointiasetukset ja -määritykset `electron-builder`-työkalulla luotettavaa monialustaista jakelua varten. Harjoittelet Electron-työpöytäsovellusten kehitys-aihetta koodilla, jonka suoritat suoraan selaimessa. Ympäri vuorokauden käytettävissä oleva tekoälytuutori vastaa kysymyksiisi oppitunnin aikana.

Tarvitsenko kokemusta aloittaakseni Electron-työpöytäsovellusten kehitys-opiskelun?

Aiempi kokemus ei ole tarpeen. CoddyKitin Electron-työpöytäsovellusten kehitys-oppimispolku sopii vasta-alkajista edistyneisiin, joten voit aloittaa tästä tai alusta ja edetä omaan tahtiisi. Tämä on oppitunti 1/4.

Kuinka kauan ”Monialustainen paketointi”-oppitunnin suorittaminen kestää?

Useimmat CoddyKitin oppitunnit kestävät noin 5–10 minuuttia. Jokainen oppitunti on lyhyt ja interaktiivinen, joten edistyt tasaisesti ja voit jatkaa siitä, mihin jäit – sekä verkossa että sovelluksessa.

Voinko kirjoittaa ja suorittaa koodia tällä Electron-työpöytäsovellusten kehitys-oppitunnilla?

Kyllä. Jokainen Electron-työpöytäsovellusten kehitys-oppitunti sisältää sisäänrakennetun koodieditorin, joten voit kirjoittaa ja suorittaa oikeaa koodia suoraan selaimessa ja saada välitöntä palautetta tekoälyltä – paikallista asennusta ei tarvita.

Kaikki tämän kurssin oppitunnit

  1. Monialustainen paketointi
  2. Koodin allekirjoitus ja notarisaatio
  3. Jakelu sovelluskauppojen kautta
  4. Julkaisujen automatisointi CI/CD:llä
← Takaisin: Electron-työpöytäsovellusten kehitys