A mobil most a web forgalmának több mint felét teszi ki, és a webes alkalmazások lehetővé teszik a felhasználók számára, hogy a rivális natív alkalmazások böngészőjében dolgokat végezzenek, de van egy probléma: a kapcsolatok és eszközök minősége hatalmasan változik a világon.
Vendéglátás mind a felhasználók, mind a villámgyors kapcsolatok Szöulban, és a felhasználók a vidéki India egy elavult telefon, a legújabb használhatósági kihívás, és a progresszív webes alkalmazások a megoldás.
PWAs használjon progresszív növelése betölteni a legfontosabb tartalom az első, majd adjunk hozzá prezentációs és funkcionális extrák szükség, ami azt jelenti, hogy az összes felhasználó kap ugyanolyan alapvető élmény a lehető leggyorsabban. Ha el szeretné érni a lehető legszélesebb közönséget, a PWAS az út.
Bár a progresszív webes alkalmazások sok előnyöket és funkcionalitást hoznak az interneten, nem igényelnek átírni az egész alkalmazást. Bármely alkalmazás átalakítható PWA-nak, néhány extra réteg hozzáadásával.
A legjobb eredmény érdekében nagy hangsúlyt fektethet a teljesítményre a kezdetektől - de ez igaz minden webes alkalmazásra. Itt járunk a lépcsőn, hogy az alkalmazás progresszív legyen.
Ha sima futóhelyet szeretne építeni, győződjön meg róla, hogy a web hosting a helyszínen van, és tisztességes weboldal építője .
Légy őszinte: Mindenesetre meg kell csinálnod. Az SSL egy extra biztonsági réteget ad az interneten, segítve a felhasználókat biztonságban a webhely használatával. A PWAS-val a HTTPS elengedhetetlen a szolgáltató munkavállalók használatához és a kezdőképernyő telepítéséhez. SSL-tanúsítványt vásárolhat a domain regisztrátorából kis költséggel, majd konfigurálhatja azt a hosting szolgáltatáson keresztül.
Az alkalmazáshéj az első dolog, ami betölti - az első dolog, amit a felhasználó lát. Teljesen az index HTML-dokumentumban kell lennie, az Inline CSS-vel, hogy biztosítsa, hogy a lehető leggyorsabban jelenjen meg, és a felhasználó nem bámul egy fehér képernyőn hosszabb ideig. Az alkalmazási héj a progresszív javítás mintázatának részét képezi. Az alkalmazásnak a lehető leghamarabb megadnia kell a felhasználói tartalmat, majd fokozatosan fokozza azt, mint több adat (valószínű JavaScript) terhelés.
Az alábbi példa egy React.js alkalmazásból származik. A felhasználó az alkalmazás körvonalával és az index.html betöltésével jelenik meg. Ezután, miután a JavaScript terheléseket és reagálni kell, a teljes alkalmazás a héjban van.
& lt;! - index.html - & gt;
& lt; test & gt;
& lt; div id = "root" & gt;
& lt; div id = "konténer" & gt;
& lt; div osztály = "belső konténer" & gt;
& lt; div id = "fejléc" & gt;
& lt; img src = "/ eszközök / icon.png" alt = "logo" / & gt;
& lt; h1 & gt; chat & lt; / h1 & gt;
& lt; / div & gt;
& lt; div id = "rakodótartály" & gt;
& lt; img src = "/ eszközök / icon.png" alt = "logo" id = "betöltő" / & gt;
& lt; / div & gt;
& lt; / div & gt;
& lt; / div & gt;
& lt; / div & gt;
& lt; / test & gt;
// index.js
Reagrestem.render (
& lt; app / & gt;
document.getelementbyid ('Root')
);
Ahhoz, hogy megérintse a PWA Goodies teljes spektrumát (Push Értesítések, gyorsítótárazás, telepítés kéri), szüksége lesz egy szolgáltatónak.
Szerencsére nagyon könnyen felállíthatók. Az alábbiakban először ellenőrizzük, hogy a felhasználó böngészője támogatja-e a szolgáltatókat. Ezután, ha igen, akkor továbbléphetünk a szolgáltatási munkavállalói fájl regisztrálásával, itt szerviz-worker.js . Ne feledje, hogy ebben a pontban nincs szükség semmire a fájlba, amelyre üres lehet.
Az alábbi példában azonban megmutatjuk, hogyan kell megérinteni a három kulcsfontosságú szolgáltatási életciklus eseményt. Ezek "telepítve", amikor a felhasználó először látogatja meg az oldalt; "Aktiválja", a regisztráció előtt közvetlenül; és a "Fetch", ha az alkalmazás hálózati kérelmet nyújt. Az utolsó a gyorsítótárazás és az offline képesség szempontjából releváns.
& lt; script & gt;
ha ("szolgáltató" a navigátorban) {
window.addeventlistener ('terhelés, funkció () {
navigator.serviceworker.register ("szolgáltatás-worker.js"). Ezután (funkció (regisztráció) {
// Sikeres regisztráció
konzol.log ("regisztrált!");
}, funkció (hibás) {
// a regisztráció meghiúsult :(
konzol.log ("Serviceworker regisztráció sikertelen:", hibás);
}). fogás (funkció (hibás) {
konzol.log (hibás);
});
});
} más {
A konzol.log ("szolgáltató munkás nem támogatott");
}
& lt; / script & gt;
// szolgáltatás-worker.js
self.addeventlistener ("Telepítés", funkció () {
konzol.log ("Telepítés!");
});
self.addeventlistener ("Aktiválás", esemény = & gt; {
konzol.log ("Aktiválás!");
});
self.addeventlistener ("Fetch", funkció (esemény) {
konzol.log ("Fetch!", esemény.request);
});
Szolgáltatási dolgozók teszik a felhasználók számára, hogy megkapja push értesítéseket az interneten keresztül push API-t. Ahhoz, hogy elérje, megérintheti self.registration.pushmanager a szolgáltatási munkás fájljában. Mivel a push értesítések küldése nagymértékben támaszkodik a backend beállításaira, itt nem merülünk bele.
Ha kezdő egy alkalmazást a semmiből, a Google Firebase szolgáltatás jön Firebase Cloud Messaging viszonylag fájdalommentes push bejelentéseket (emlékeztetőül: győződjön meg róla, hogy tartsa a tervezési fájlokat biztonságban felhő tárolás) . Az alábbi kód megmutatja, hogyan regisztrálhat a push értesítésekre a Push API segítségével.
Navigator.serviceworker.Ready.Then (funkció (regisztráció) {
Ha (! Regisztráció.Pushmanager) {
riasztás ("Nincs push értesítések támogatása");
vissza a hamis;
}
// a "Push Notification" előfizetése a Push Manager-től
regisztrációs.Pushmanager.subscribe ({
Uservisibleonly: True // Mindig jelenítse meg az értesítést, ha beérkezett
})
.hen (funkció (előfizetés) {
konzol.log ("feliratkozott");
})
.catch (funkció (hiba) {
konzol.log ("előfizetési hiba:", hiba);
});
})
Annak érdekében, hogy az alkalmazás telepíthető legyen, be kell tartalmaznia a manifest.json Az alkalmazás root könyvtárában. Ezt úgy gondolhatja, hogy az alkalmazás leírása, hasonló ahhoz, amit az App Store-hoz nyújthat be. Ez magában foglalja az ikonokat, a splash képernyőt, a nevet és a leírást.
Van egy bizonyos konfiguráció, hogy az alkalmazás megjelenik a felhasználó kezdőképernyőjéből: Szeretné megmutatni a címsávot a böngészőben, vagy sem? Milyen színt szeretne az állapotsor? Stb. Vegye figyelembe, hogy megfelelő manifest.json Tartalmaznia kell egy teljes spektrumot ikonméreteket különböző eszközökhöz. Az alábbi kód a manifeszt egyes tulajdonságainak előnézete.
{
"Short_name": "Chat",
"Név": "Chat",
"Ikonok": [
{
"SRC": "/ Eszközök / Icon.png",
"Méretek": "192x192",
"Típus": "Kép / PNG"
}
],
"START_URL": "/? UTM_SOURCE = HOMESCREEN",
"Background_color": "# E05A47",
"Theme_color": "# E05A47",
"Kijelző": "önálló"
}
Ha a felhasználó a PWA-t látogatja meg a szolgáltató munkás és manifeszt, akkor a Chrome automatikusan felkéri őket, hogy telepítsenek otthonuk képernyőjére, tekintettel a következőkre: a felhasználónak kétszer meg kell látogatnia a webhelyet, öt perccel a látogatások között.
Az ötlet az, hogy várjon, amíg a felhasználó érdekli az alkalmazás iránti érdeklődést, majd kérje meg őket, hogy tegyék meg az eszközüket (ez éles ellentétben áll a natív alkalmazás megközelítéssel, amely kéri a beruházást.
De esetleg olyan esetek lehetnek, amikor a telepítési kérelmet különböző helyzetekben szeretné megmutatni, például a felhasználónak egy adott hasznos műveletet. Ehhez elfogjuk a előzetesenstalllombirat Esemény és mentés később, majd telepítse a parancsot, amikor jól látjuk.
ablak.addeventlistener ("előzetesenstalllprompt", e = & gt; {
console.log ("előzetesen telepített esemény");
e.preventdefault ();
// stash az esemény, így később aktiválható.
Ez.deferredPrompt = E;
vissza a hamis;
});
// Ha parancsot szeretne indítani:
ez.deferredprompt.prompt ();
ez.deferredprompt.Userchoice.then (választás = & gt; {
konzol.log (választás);
});
ez.deferredPrompt = null;
A teljesítmény a pwas szíve és lelke. Az alkalmazásnak gyorsnak kell lennie a felhasználók számára az összes hálózati feltételre. A gyorsítótár és az offline képességek segítenek sokat, de a nap végén az alkalmazásnak gyorsnak kell lennie, még akkor is, ha a felhasználónak nincs böngészője a szerviz munkás technológiájának támogatására. Ez a progresszív javítás meghatározása - nagyszerű élményt nyújt mindenkinek, függetlenül az eszköz modernitásától vagy a hálózati feltételektől.
Ehhez egy hasznos metrikészlet a vasúti rendszer. A sín az, amit a Google a "felhasználó-központi teljesítménymodell" - egy sor iránymutatás az alkalmazás teljesítményének mérésére.
A mozaikszó jelentése Response (meddig tart az alkalmazáshoz reagálni a felhasználói műveletek), animáció (vezetésére animáció sebessége másodpercenként 60 képkocka), Idle (a idő, amikor az alkalmazás nem csinál mást a terhelés és cache további eszközöket) és Terhelés (az alkalmazás betöltése egy másodpercen belül vagy kevesebb).
Itt van egy táblázat az értelmes referenciaértékek az alkalmazás betöltésére, amelyet a MEGGIN Kearney, a Tech Writer Google Web Alapjai .
A Google a legnagyobb bajnok nyomja a progresszív webes alkalmazásokat, mint a web jövőjét. Mint ilyen, hasznos eszközt szolgáltatott a PWA fejlesztésének irányításához.
Korábban világítótoronynak nevezték, és krómozott kiterjesztésként szolgáltak, a Chrome 60-tól a Chrome Devtools része, az "Auditok" lap alatt. Milyen világítótorony van a kérelmet különböző körülmények között, és mérje meg válaszát és sikerét a PWA iránymutatásai szerint. Ezután 100-as pontszámot ad neked. Ez ugyanúgy pontot szerezhet az alkalmazás webes bevált gyakorlatokon is.
A következő szöveg a mért értékek listája. A használatban leírást mutat.
Ez a cikk eredetileg a webtervezőben jelent meg; Iratkozzon fel itt .
Kapcsolódó cikkek:
Amikor megtanulják, hogyan kell felhívni a nyakát és a vállakat, gyakran kihívást jelenthet, hogy megmutassam a munkánkban lévő köteteket, mivel az emberek elülső oldalait látju..
(Kép hitel: blackmagic design) Ebben a cikkben a 3D-s kompozitok szakterületére kerülünk. Feltárás, hogy mi az..
(Kép hitel: Elrendor / Joseph Ford) A vizuális építők sokáig léteztek a WordPress számára, de mindig is mego..
Page 1 of 2: Fedezze fel az 5 új CSS funkciót: 01-10 Fedezze fel az 5 �..
Ha olyan vizet festesz, valami benne van, akkor a zűrzavaros gondolkodás festését végzi. Ez trükkös lehet elképzelni, ezért gyakran szeretnék saját hivatkozást készíteni, mielő..
Éjfél, és ez az egyik div A webhelyén még mindig úgy néz ki, mint egy gyermek játékláda. Az összes elem..
A tervezés és a tartalom sprintjei a kulcsfontosságúak a termék tulajdonosainak, tervezőknek, kutatóknak, tartalomstratég..
Ezen a héten napvilágot látott az egyes új videó az Adobe teszik Most playlist, gyűjteménye klip arról szól, hogyan lehet létrehozni tervezési projektek Creative Cloud alkalmazás ..