- Progressive Web-Apps kommen auf den Computer
- Die generische Sensor API erleichtert den Zugriff auf Gerätesensoren wie Beschleunigungsmesser, Gyroskop und mehr.
- Und
BigInt
s erleichtern den Umgang mit großen Ganzzahlen erheblich.
Und es gibt noch viel mehr!
Ich bin Pete LePage. Sehen wir uns an, was in Chrome 67 für Entwickler neu ist.
Vollständige Liste der Änderungen ansehen Liste der Änderungen am Chromium-Quell-Repository
Desktop-PWAs
Progressive Web-Apps für den Desktop werden jetzt unter ChromeOS 67 unterstützt. Wir arbeiten bereits an der Unterstützung für Mac und Windows. Nach der Installation werden sie wie andere Apps gestartet und in einem App-Fenster ohne Adressleiste oder Tabs ausgeführt. Service Worker sorgen für Geschwindigkeit und Zuverlässigkeit und werden im App-Fenster integriert. Außerdem bieten sie eine ansprechende Nutzererfahrung.
Der Einstieg unterscheidet sich nicht von dem, was Sie heute schon tun. Alle Arbeiten, die Sie für Ihre bestehende progressive Web-App ausgeführt haben, gelten weiterhin. Sie müssen lediglich einige zusätzliche Unterbrechungen berücksichtigen.
Wenn Ihre App die standardmäßigen Kriterien für PWAs erfüllt, löst Chrome das Ereignis beforeinstallprompt
aus, fordert den Nutzer aber nicht automatisch auf. Speichern Sie stattdessen das Ereignis und fügen Sie Ihrer App eine Benutzeroberfläche hinzu, z. B. eine Schaltfläche zum Installieren der App, um den Nutzern zu signalisieren, dass Ihre App installiert werden kann. Wenn der Nutzer dann auf die Schaltfläche klickt, wird die Aufforderung für das gespeicherte Ereignis aufgerufen. Chrome zeigt die Aufforderung dann dem Nutzer an. Wenn der Nutzer auf „Hinzufügen“ klickt, wird Ihre PWA der Ablage und dem Launcher in Chrome hinzugefügt.
Sehen Sie sich meinen Google I/O-Vortrag an, bei dem Jenny und ich ausführlich auf die technischen und besonderen Designüberlegungen eingehen, die Sie beim Erstellen einer progressiven Web-App für Desktop-Computer berücksichtigen müssen.
Wenn Sie diese Funktion auf einem Mac oder Windows-Computer ausprobieren möchten, lesen Sie den vollständigen Artikel zu Progressive Web Apps auf dem Computer. Dort erfahren Sie, wie Sie die Unterstützung mit einem Flag aktivieren.
Generic Sensor API
Sensordaten werden in vielen Apps verwendet, um Funktionen wie immersives Gaming, Fitness-Tracking und Augmented Reality oder Virtual Reality zu ermöglichen. Diese Daten sind jetzt für Web-Apps über die Generic Sensor API verfügbar.
Die API besteht aus einer Basis-Sensorschnittstelle mit einer Reihe von konkreten Sensorklassen. Eine Basisschnittstelle vereinfacht die Implementierung und Spezifikation der konkreten Sensorklassen. Die Gyroscope-Klasse ist beispielsweise sehr klein.
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);
};
Die Hauptfunktionen werden durch die Basisoberfläche festgelegt. Der Gyroskopsensor erweitert sie lediglich um drei Attribute, die die Winkelgeschwindigkeit darstellen. Chrome 67 unterstützt den Beschleunigungsmesser, das Gyroskop, den Orientierungssensor und den Bewegungssensor.
Intel hat mehrere Demos der generischen Sensor API und Beispielcode zusammengestellt. Außerdem wurde der Beitrag Sensoren für das Web aus September aktualisiert und enthält jetzt alle wichtigen Informationen.
BigInt
s
BigInt
sind eine neue numerische Primitive in JavaScript, mit der Ganzzahlen mit beliebiger Genauigkeit dargestellt werden können. Große Ganzzahl-IDs und Zeitstempel mit hoher Genauigkeit können in JavaScript nicht sicher als Numbers
dargestellt werden, was oft zu realen Fehlern führt. Aus diesem Grund werden solche Zahlen häufig als Strings dargestellt.
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?
Mit BigInt
s können ganzzahlige Arithmetiken sicher gespeichert und ausgeführt werden, ohne dass ein Überlauf entsteht. Wenn wir heute mit großen Ganzzahlen arbeiten, müssen wir in der Regel auf eine Bibliothek zurückgreifen, die BigInt
-ähnliche Funktionen emuliert.
let max = BigInt(Number.MAX_SAFE_INTEGER);
// → 9_007_199_254_740_991n
max = max + 9n;
// → 9_007_199_254_741_000n - Yay!
Sobald BigInt
allgemein verfügbar ist, können wir diese Laufzeitabhängigkeiten zugunsten nativer BigInts
-Funktionen aufgeben. Die native Implementierung ist nicht nur schneller, sondern hilft auch, die Ladezeit, die Parsezeit und die Kompilierungszeit zu verkürzen, da wir diese zusätzlichen Bibliotheken nicht laden müssen.
…und vieles mehr
Das sind nur einige der Änderungen in Chrome 67 für Entwickler. Es gibt natürlich noch viele weitere.
Die Credential Management API wird seit Chrome 51 unterstützt und bietet ein Framework zum Erstellen, Abrufen und Speichern von Anmeldedaten. Dazu wurden zwei Anmeldedatentypen verwendet: PasswordCredential
und FederatedCredential
. Die Web Authentication API fügt einen dritten Anmeldedatentyp hinzu: PublicKeyCredential
. Damit können Browser Nutzer mit einem privaten/öffentlichen Schlüsselpaar authentifizieren, das von einem Authenticator wie einem Sicherheitsschlüssel, einem Fingerabdrucklesegerät oder einem anderen Gerät generiert wird, mit dem sich ein Nutzer authentifizieren kann. In Chrome 67 wird die API mit U2F/CTAP 1-Authentifikatoren über USB-Transport auf dem Computer aktiviert.
Weitere Informationen finden Sie im Blogpost von Eiji Enabling Strong Authentication with WebAuthn.
Die Google I/O ist vorbei
Wenn Sie nicht an der I/O teilgenommen haben oder vielleicht, aber nicht alle Web Talks gesehen haben, schauen Sie sich die Chrome- und Web-Playlist an. Dort erfahren Sie alles Neueste von der Google I/O.
Neu in den Entwicklertools
Weitere Informationen zu den Neuerungen in den Chrome-Entwicklertools 67 finden Sie unter Neu in den Chrome-Entwicklertools.
Abonnieren
Klicke dann auf unserer YouTube-Seite auf die Schaltfläche Abonnieren. Du erhältst dann eine E-Mail-Benachrichtigung, sobald wir ein neues Video veröffentlichen.
Ich bin Pete LePage. Sobald Chrome 68 veröffentlicht wird, erzähle ich Ihnen gern, was es Neues in Chrome gibt.