Baru di Chrome 67

  • Progressive Web App akan hadir di desktop
  • API sensor generik memudahkan Anda mendapatkan akses ke sensor perangkat seperti akselerometer, giroskop, dan lainnya.
  • Dan BigInt memudahkan penanganan bilangan bulat besar.

Dan masih ada banyak lagi.

Saya Pete LePage. Mari kita pelajari lebih dalam dan lihat hal-hal baru untuk developer di Chrome 67.

Ingin daftar lengkap perubahan? Lihat daftar perubahan repositori sumber Chromium.

PWA desktop

Progressive web app desktop Spotify

Progressive Web App Desktop kini didukung di ChromeOS 67, dan kami telah mulai mengupayakan dukungan untuk Mac dan Windows. Setelah diinstal, aplikasi tersebut akan diluncurkan dengan cara yang sama seperti aplikasi lainnya, dan berjalan di jendela aplikasi, tanpa kolom URL atau tab. Pekerja layanan memastikan bahwa mereka cepat, dan andal, pengalaman jendela aplikasi membuat mereka merasa terintegrasi. Dan mereka menciptakan pengalaman yang menarik bagi pengguna Anda.

Memulai ini tidak berbeda dengan apa yang sudah Anda lakukan saat ini. Semua pekerjaan yang telah Anda lakukan untuk Progressive Web App yang sudah ada masih berlaku, Anda hanya perlu mempertimbangkan beberapa titik henti sementara tambahan.

Jika aplikasi Anda memenuhi kriteria PWA standar, Chrome akan mengaktifkan peristiwa beforeinstallprompt, tetapi tidak akan secara otomatis meminta pengguna. Simpan peristiwa, lalu tambahkan beberapa UI - seperti tombol instal aplikasi - ke aplikasi Anda untuk memberi tahu pengguna bahwa aplikasi dapat diinstal. Kemudian, saat pengguna mengklik tombol, panggil perintah pada peristiwa tersimpan; Chrome kemudian akan menampilkan perintah tersebut kepada pengguna. Jika pengguna mengklik tambahkan, Chrome akan menambahkan PWA Anda ke rak dan peluncurnya.

Lihat Google I/O talk dari saya. Dalam sesi ini, saya dan Jenny membahas secara mendetail pertimbangan desain dan teknis yang perlu Anda pertimbangkan saat membangun aplikasi web progresif desktop.

Dan, jika Anda ingin menggunakannya di Mac atau Windows - lihat postingan Progressive Web App Desktop selengkapnya untuk mengetahui detail cara mengaktifkan dukungan dengan tanda.

Generic Sensor API

Data sensor digunakan di banyak aplikasi untuk memungkinkan pengalaman seperti game yang imersif, pelacakan kebugaran, dan augmented reality atau virtual reality. Data ini sekarang tersedia untuk aplikasi web menggunakan Generic Sensor API.

API terdiri dari antarmuka Sensor dasar dengan serangkaian class sensor konkret yang dibangun di atasnya. Memiliki antarmuka dasar akan menyederhanakan proses implementasi dan spesifikasi untuk class sensor konkret. Misalnya, kelas Giroskop sangat kecil!

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);
};

Fungsi inti ditentukan oleh antarmuka dasar, dan Giroskop hanya memperluasnya dengan tiga atribut yang mewakili kecepatan sudut. Chrome 67 mendukung akselerometer, giroskop, sensor orientasi, dan sensor gerakan.

Intel telah mengumpulkan beberapa demo API sensor generik dan kode contoh, serta memperbarui postingan Sensors for the Web! dari bulan September dengan semua hal yang perlu Anda ketahui.

BigInt dtk

BigInt adalah primitif numerik baru dalam JavaScript yang dapat merepresentasikan bilangan bulat dengan presisi arbitrer. ID bilangan bulat besar dan stempel waktu akurasi tinggi tidak dapat direpresentasikan dengan aman sebagai Numbers di JavaScript, yang sering menyebabkan bug di dunia nyata (karenanya kami sering kali merepresentasikan angka tersebut sebagai string).

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?

Dengan BigInt, kita dapat menyimpan dan melakukan aritmetika bilangan bulat dengan aman tanpa overflow. Saat ini, menangani bilangan bulat besar biasanya berarti kita harus menggunakan library yang akan mengemulasi fungsi seperti BigInt.

let max = BigInt(Number.MAX_SAFE_INTEGER);
// → 9_007_199_254_740_991n
max = max + 9n;
// → 9_007_199_254_741_000n - Yay!

Saat BigInt tersedia secara luas, kita dapat menghentikan dependensi runtime ini dan menggantinya dengan BigInts native. Implementasi native tidak hanya lebih cepat, tetapi juga membantu mengurangi waktu pemuatan, waktu penguraian, dan waktu kompilasi karena kita tidak perlu memuat library tambahan tersebut.

Dan banyak lagi!

Ini hanyalah beberapa perubahan di Chrome 67 untuk developer, tentu saja, masih banyak lagi.

Credential Management API telah didukung sejak Chrome 51, dan menyediakan framework untuk membuat, mengambil, dan menyimpan kredensial. Hal ini dilakukan melalui dua jenis kredensial: PasswordCredential dan FederatedCredential. Web Authentication API menambahkan jenis kredensial ketiga, PublicKeyCredential, yang memungkinkan browser mengautentikasi pengguna dengan pasangan kunci pribadi/publik yang dihasilkan oleh pengautentikasi seperti kunci keamanan, pembaca sidik jari, atau perangkat lain yang dapat mengautentikasi pengguna. Chrome 67 mengaktifkan API menggunakan pengautentikasi U2F/CTAP 1 melalui transpor USB di desktop.

Pelajari hal ini lebih lanjut di postingan Mengaktifkan Autentikasi Kuat dengan WebAuthn Eiji.

Google I/O telah berakhir

Jika Anda tidak berhasil menghadiri I/O, atau mungkin pernah, tetapi tidak melihat semua percakapan web, lihat playlist Chrome dan Web untuk mendapatkan semua info terbaru dari Google I/O!

Baru di DevTools

Pastikan untuk melihat Baru di Chrome DevTools, untuk mempelajari fitur baru untuk DevTools di Chrome 67.

Subscribe

Lalu, klik tombol subscribe di channel YouTube kami, dan Anda akan menerima notifikasi email setiap kali kami meluncurkan video baru.

Saya Pete LePage, dan segera setelah Chrome 68 dirilis, saya akan segera memberi tahu Anda -- apa yang baru di Chrome!