- Le app web progressive saranno disponibili su computer
- L'API di sensori generici semplifica notevolmente l'accesso ai sensori del dispositivo, come l'accelerometro, il giroscopio e altri.
- Inoltre, i
BigInt
semplificano notevolmente la gestione di numeri interi di grandi dimensioni.
E ce n'è molto altro.
Sono Pete LePage. Diamo un'occhiata alle novità per gli sviluppatori in Chrome 67.
Vuoi l'elenco completo delle modifiche? Consulta l'elenco delle modifiche al repository di origine di Chromium.
PWA desktop
Le app web progressive per computer ora sono supportate su ChromeOS 67 e abbiamo già iniziato a lavorare al supporto per Mac e Windows. Una volta installate, vengono avviate come le altre app e vengono eseguite in una finestra dell'app, senza barra degli indirizzi o schede. I worker di servizio garantiscono velocità e affidabilità, mentre l'esperienza della finestra dell'app li fa sentire integrati. e creano un'esperienza coinvolgente per gli utenti.
Per iniziare non devi fare nulla di diverso da quello che stai già facendo. Tutto il lavoro fatto per l'app web progressiva esistente è ancora valido, devi solo prendere in considerazione alcuni punti di interruzione aggiuntivi.
Se la tua app soddisfa i criteri PWA standard, Chrome attiverà l'evento beforeinstallprompt
, ma non chiederà automaticamente all'utente. Salva invece l'evento, quindi aggiungi un'interfaccia utente, ad esempio un pulsante di installazione dell'app, per comunicare all'utente che può installare la tua app. Quando l'utente fa clic sul pulsante, chiama la richiesta
sull'evento salvato. Chrome mostrerà quindi la richiesta all'utente. Se fanno clic su Aggiungi, Chrome aggiungerà la PWA alla barra delle app e all'Avvio app.
Dai un'occhiata al mio intervento di Google I/O, in cui Jenny e io illustriamo nel dettaglio le considerazioni tecniche e di design speciale da tenere presenti durante la creazione di un'app web progressiva per computer.
Se vuoi iniziare a giocare su Mac o Windows, dai un'occhiata al post completo sulle app web progressive per desktop per i dettagli su come attivare il supporto con un flag.
API Sensore generico
I dati dei sensori vengono utilizzati in molte app per consentire esperienze come giochi immersivi, monitoraggio del fitness e realtà aumentata o virtuale. Questi dati ora sono disponibili per le app web che utilizzano l'API Generic Sensor.
L'API consiste in un'interfaccia del sensore di base con una serie di classi di sensori in calcestruzzo incorporate. Avere un'interfaccia di base semplifica il processo di implementazione e specifica per le classi di sensori concrete. Ad esempio, la classe Giroscopio è minuscolo.
const sensor = new Gyroscope({frequency: 500});
sensor.start();
sensor.onreading = () => {
console.log("X-axis " + sensor.x);
console.log("Y-axis " + sensor.y);
console.log("Z-axis " + sensor.z);
};
La funzionalità di base è specificata dall'interfaccia di base e il giroscopio la estende semplicemente con tre attributi che rappresentano la velocità angolare. Chrome 67 supporta l'accelerometro, il giroscopio, il sensore di orientamento e il sensore di movimento.
Intel ha messo insieme diversi demo dell'API generica per i sensori e codice di esempio, nonché aggiornato il post di settembre Sensori per il web con tutto ciò che devi sapere.
BigInt
s
I BigInt
sono un nuovo tipo numerico primitivo in JavaScript che può rappresentare interi con precisione arbitraria. Gli ID interi di grandi dimensioni e i timestamp di alta precisione
non possono essere rappresentati in modo sicuro come Numbers
in JavaScript, il che spesso porta
a bug reali (per questo motivo spesso finiamo per rappresentare questi
numeri come stringhe).
let max = Number.MAX_SAFE_INTEGER;
// → 9_007_199_254_740_991
max = max + 1;
// → 9_007_199_254_740_992 - Yay!
max = max + 1;
// → 9_007_199_254_740_992 - Uh, no?
Con gli BigInt
, possiamo memorizzare ed eseguire in modo sicuro l'aritmetica degli interi senza overflow. Oggi,
affrontare i numeri interi di grandi dimensioni in genere significa dover ricorrere a una libreria
che emula funzionalità simili a quelle di BigInt
.
let max = BigInt(Number.MAX_SAFE_INTEGER);
// → 9_007_199_254_740_991n
max = max + 9n;
// → 9_007_199_254_741_000n - Yay!
Quando BigInt
sarà disponibile a livello generale, potremo eliminare queste dipendenze di runtime in favore di BigInts
nativo. L'implementazione nativa non è solo più rapida, ma contribuirà anche a ridurre i tempi di caricamento, di analisi e di compilazione perché non dovremo caricare le librerie aggiuntive.
E tanto altro.
Queste sono solo alcune delle modifiche in Chrome 67 per gli sviluppatori, ma ce ne sono molte altre.
L'API Credential Management è supportata da Chrome 51 e fornisce un framework per creare, recuperare e memorizzare le credenziali. Lo ha fatto tramite due tipi di credenziali: PasswordCredential
e FederatedCredential
. L'API Web Authentication aggiunge un terzo tipo di credenziale, PublicKeyCredential
, che consente ai browser di autenticare un utente con una coppia di chiavi private/pubbliche generata da un'app di autenticazione come una chiave di sicurezza, un lettore di impronte digitali o qualsiasi altro dispositivo in grado di autenticare un utente. Chrome 67 attiva l'API utilizzando gli autenticatori U2F/CTAP 1 tramite il trasporto USB su computer.
Scopri di più nel post di Eiji Abilitazione dell'autenticazione forte con WebAuthn.
Google I/O è terminato
Se non hai partecipato alla conferenza I/O o se ci sei stato, ma non hai visto tutti i talk sul web, dai un'occhiata alla playlist di Chrome e del web per non perderti le ultime novità di Google I/O.
Novità in DevTools
Consulta la pagina Novità di Chrome DevTools per scoprire le novità di DevTools in Chrome 67.
Iscriviti
Quindi, fai clic sul pulsante Iscriviti sul nostro canale YouTube e riceverai una notifica via email ogni volta che viene lanciato un nuovo video.
Mi chiamo Pete LePage e, non appena verrà rilasciato Chrome 68, ti comunicherò le novità di Chrome.