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

Deep linking ja protokollakäsittelijät

Anna käyttäjien käynnistää Electron-sovelluksesi ja siirtyä siinä mukautettujen URL-mallien avulla. Tämä keskeinen elinkaaren integraatio täydentää käynnistystapahtumia ja päivityksiä.

Oppitunti 4/413 vaihetta

Deep linking ja protokollakäsittelijät on ilmainen Electron-työpöytäsovellusten kehitys-oppitunti CoddyKitissä. Tämä on oppitunti 4/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.

Käynnistäminen linkistä

Syvälinkitys mahdollistaa sen, että URL-osoite, kuten myapp://open/project/42, käynnistää sovelluksen tai kohdistaa siihen sekä siirtyy suoraan sisältöön.

Mukautetut protokollat

Rekisteröi mukautettu URL-skeema, jotta käyttöjärjestelmä tietää kyseisen tyyppisten linkkien kuuluvan sovelluksellesi.

app.setAsDefaultProtocolClient('myapp');

Syvälinkin jäsentäminen

Poimi saapuvasta URL-osoitteesta polku ja parametrit päättääksesi, minne navigoidaan.

function parseDeepLink(url) {
  const u = new URL(url);
  return { host: u.host, path: u.pathname };
}
console.log(parseDeepLink('myapp://open/project/42'));

Linkkien käsittely macOS:ssä

macOS:ssä syvälinkit saapuvat open-url-tapahtuman kautta myös sovelluksen ollessa käynnissä.

app.on('open-url', (event, url) => {
  event.preventDefault();
  handleLink(url);
});

Linkkien käsittely Windowsissa ja Linuxissa

Windowsissa ja Linuxissa URL-osoite saapuu komentoriviargumenttina, joten tarkista käynnistyksen yhteydessä process.argv.

function urlFromArgv(argv) {
  return argv.find(a => a.startsWith('myapp://'));
}
console.log(urlFromArgv(['electron', '.', 'myapp://open/5']));

Yhden instanssin koordinointi

Käytä yhden instanssin lukitusta, jotta toinen käynnistys välittää URL-osoitteensa jo käynnissä olevalle sovellukselle uuden instanssin käynnistämisen sijaan.

const gotLock = app.requestSingleInstanceLock();
if (!gotLock) app.quit();

second-instance-tapahtuma

second-instance-tapahtuma toimittaa uuden komentorivin, jossa syvälinkki sijaitsee, ja mahdollistaa pääikkunan kohdistamisen.

app.on('second-instance', (e, argv) => {
  const url = urlFromArgv(argv);
  if (url) handleLink(url);
});

Kylmä- ja lämmin käynnistys

Käsittele molemmat tapaukset: linkin käynnistämä uusi sovellus (kylmä) ja jo avoinna oleva sovellus (lämmin). Ohjaa molemmat samaan käsittelijään.

Linkin vahvistaminen

Älä koskaan luota syvälinkkiin sokeasti. Vahvista polku ja parametrit ennen niiden käsittelyä väärinkäytösten estämiseksi.

Syvälinkkien testaaminen

Testaa kirjoittamalla URL-osoite selaimeen tai päätelaitteeseen. Kehityksen aikana skeeman on osoitettava paketoituun tai käynnissä olevaan sovellukseesi.

Käyttötapaukset

Syvälinkit mahdollistavat OAuth-takaisinkutsut, jakamisen ja ilmoitukset, jotka siirtyvät suoraan olennaiseen sisältöön ja sopivat hyvin yhteen sovelluksen elinkaaren kanssa.

Pikatarkistus

Testaa tietosi syvälinkityksestä.

Kertaus

Opitte rekisteröimään mukautetun protokollan, jäsentämään deep linkit, käsittelemään niitä eri alustoilla, yhteensovittamaan toiminnan yhden instanssin lukituksen kanssa ja validoimaan syötteen, mikä mahdollistaa URL-osoitteisiin perustuvan sovelluksen navigoinnin.

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 ”Deep linking ja protokollakäsittelijät” ilmainen?

Kyllä – oppitunnin ”Deep linking ja protokollakäsittelijät” 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 ”Deep linking ja protokollakäsittelijät”?

Anna käyttäjien käynnistää Electron-sovelluksesi ja siirtyä siinä mukautettujen URL-mallien avulla. Tämä keskeinen elinkaaren integraatio täydentää käynnistystapahtumia ja päivityksiä. 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 4/4.

Kuinka kauan ”Deep linking ja protokollakäsittelijät”-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. Sovelluksen elinkaaritapahtumien hallinta
  2. Automaattisten päivitysten toteuttaminen
  3. Kaatumisraportointi
  4. Deep linking ja protokollakäsittelijät
← Takaisin: Electron-työpöytäsovellusten kehitys