สิ่งที่จำเป็นต้องทราบมีดังนี้
- พร็อพเพอร์ตี้ manifest
id
ช่วยให้คุณระบุรหัสที่ไม่ซ้ำกันสำหรับ PWA ได้ - พร็อพเพอร์ตี้
protocol_handlers
ช่วยให้คุณลงทะเบียน PWA เป็นตัวแฮนเดิลโปรโตคอลโดยอัตโนมัติเมื่อติดตั้ง - ช่วงทดลองใช้จากต้นทางของคำแนะนำเกี่ยวกับลําดับความสําคัญช่วยให้คุณระบุลําดับความสําคัญในการดึงข้อมูลสําหรับการดาวน์โหลดทรัพยากรได้
- คุณสามารถบังคับให้ Chrome เป็นเวอร์ชัน 100 เพื่อทดสอบว่าโค้ดจะตอบสนองต่อหมายเลขเวอร์ชัน 3 หลักอย่างไร
- วิดีโอจาก Chrome Dev Summit มีให้รับชมทางออนไลน์ทั้งหมด
- และยังมีอีกมากมาย
ผมชื่อ Pete LePage ในที่สุดก็ได้ถ่ายทำในสตูดิโอแล้ว มาเริ่มดูกันว่ามีอะไรใหม่สำหรับนักพัฒนาซอฟต์แวร์ใน Chrome 96
ไฟล์ Manifest id
สำหรับ PWA
เมื่อผู้ใช้ติดตั้ง PWA เบราว์เซอร์ต้องมีวิธีระบุ PWA นั้นโดยไม่ซ้ำกัน
แต่จนกระทั่งเมื่อไม่นานมานี้ ข้อมูลจำเพาะของไฟล์ Manifest ของเว็บแอปไม่ได้ระบุวิธีระบุ PWA ทำให้เบราว์เซอร์ต้องเป็นผู้ตัดสินใจและนำไปสู่การนำไปใช้งานที่แตกต่างกัน
ในบางเบราว์เซอร์จะใช้ start_url
ส่วนในเบราว์เซอร์อื่นๆ จะใช้เส้นทางไปยังไฟล์ Manifest
ซึ่งทำให้คุณเปลี่ยนแปลงฟิลด์ใดฟิลด์หนึ่งไม่ได้โดยไม่ทำให้ประสบการณ์การติดตั้งใช้งานเสียหาย ตอนนี้มีพร็อพเพอร์ตี้ id
ใหม่ที่ไม่บังคับ ซึ่งช่วยให้คุณกําหนดตัวระบุที่ใช้สําหรับ PWA ได้อย่างชัดเจน
การเพิ่มพร็อพเพอร์ตี้ id
ลงในไฟล์ Manifest จะทำให้ไม่ต้องใช้ start_url
หรือตำแหน่งของไฟล์ Manifest และทำให้อัปเดตช่องเหล่านั้นได้
{
...
id: "/?homescreen=1",
start_url: "/?homescreen=1",
...
}
การสนับสนุนพร็อพเพอร์ตี้ id
จะพร้อมใช้งานในเบราว์เซอร์ที่พัฒนาบน Chromium บนเดสก์ท็อปตั้งแต่ Chrome เวอร์ชัน 96 เป็นต้นไป การรองรับอุปกรณ์เคลื่อนที่ซึ่งปัจจุบันใช้ URL ของไฟล์ Manifest เป็นรหัสที่ไม่ซ้ำกันควรพร้อมใช้งานในช่วงครึ่งแรกของปี 2022
หากมี PWA อยู่ในเวอร์ชันที่ใช้งานจริงอยู่แล้วและต้องการเพิ่ม id
ลงในไฟล์ Manifest คุณต้องใช้รหัสที่เบราว์เซอร์กำหนด คุณจะเห็น id
ในแผง Manifest ของแผงแอปพลิเคชันในเครื่องมือสําหรับนักพัฒนาซอฟต์แวร์
สําหรับ PWA ใหม่ คุณตั้งค่า id
เป็นสตริงค่าใดก็ได้ตามต้องการ แต่โปรดทราบว่าคุณจะเปลี่ยนแปลงค่านี้ไม่ได้ในอนาคต ดังนั้นโปรดเลือกอย่างรอบคอบ
{
...
id: "SquooshApp",
start_url: "/?homescreen=1",
...
}
ดูข้อมูลเพิ่มเติมได้ที่การระบุ PWA ที่ไม่ซ้ำกันด้วยพร็อพเพอร์ตี้รหัสไฟล์ Manifest ของเว็บแอป
ตัวแฮนเดิลโปรโตคอลของ URL สําหรับ PWA
เว็บแอปสามารถใช้ navigator.registerProtocolHandler()
เพื่อลงทะเบียนเป็นตัวแฮนเดิลโปรโตคอล เช่น Gmail สามารถจดทะเบียนmailto
Protocol ได้ จากนั้นเมื่อผู้ใช้คลิกลิงก์ที่มีคำนำหน้า mailto:
ระบบจะเปิด Gmail ซึ่งช่วยให้ผู้ใช้ส่งอีเมลได้อย่างง่ายดาย
ตั้งแต่ Chrome 96 เป็นต้นไป PWA จะลงทะเบียนเป็นตัวแฮนเดิลโปรโตคอลได้เป็นส่วนหนึ่งของการติดตั้ง หากต้องการดำเนินการดังกล่าวใน PWA ให้เพิ่มพร็อพเพอร์ตี้ protocol_handlers
ลงในไฟล์ Manifest ของเว็บแอป ระบุ protocol
ที่ต้องการจัดการ และ url
ที่ควรเปิดขึ้นเมื่อมีการคลิก
...
"protocol_handlers": [
{
"protocol": "web+tea",
"url": "/tea?type=%s"
},
{
"protocol": "web+coffee",
"url": "/coffee?type=%s"
}
]
}
การดำเนินการนี้มีข้อจำกัดบางอย่าง และคุณไม่สามารถลงทะเบียนโปรโตคอลใดก็ได้ ดังนั้นโปรดดูรายละเอียดทั้งหมดและวิธีใช้ไวยากรณ์ web+
เพื่อสร้างโปรโตคอลของคุณเองในการลงทะเบียนตัวแฮนเดิลโปรโตคอลของ URL สําหรับ PWA
คำแนะนำเกี่ยวกับลําดับความสําคัญ (ช่วงทดลองใช้จากต้นทาง)
เมื่อเบราว์เซอร์แยกวิเคราะห์หน้าเว็บและเริ่มค้นพบและดาวน์โหลดทรัพยากร เช่น รูปภาพ สคริปต์ หรือ CSS ระบบจะกำหนดลําดับความสําคัญในการดึงข้อมูลเพื่อพยายามเพิ่มประสิทธิภาพการโหลดหน้าเว็บ เบราว์เซอร์จัดลําดับความสําคัญได้ดี แต่อาจไม่เหมาะสําหรับบางกรณี
คำแนะนำลําดับความสําคัญเป็นฟีเจอร์ทดลองที่มีให้ใช้งานในช่วงทดลองใช้จากต้นทางตั้งแต่ Chrome 96 เป็นต้นไป และช่วยเพิ่มประสิทธิภาพ Core Web Vitals ได้ แอตทริบิวต์ importance
ช่วยให้คุณระบุลําดับความสําคัญสําหรับประเภททรัพยากร เช่น CSS, แบบอักษร, สคริปต์, รูปภาพ และ iframe
<!-- We don't want a high priority for this above-the-fold image -->
<img src="/not-important.svg" importance="low">
<!-- Initiate an early fetch for a resource, but de-prioritize it -->
<link rel="preload" href="/script.js" as="script" importance="low">
<script>
fetch('https://example.com/', {importance: 'high'})
.then(data => {
// Trigger a high priority fetch
});
</script>
เช่น หน้า Google Flights รูปภาพพื้นหลังดังกล่าวคือ Largest Contentful Paint (LCP)
มาดูกันว่าการโหลดมีและไม่มีคำแนะนำเกี่ยวกับลําดับความสําคัญเป็นอย่างไร เมื่อตั้งค่าลําดับความสําคัญเป็น high
ในรูปภาพพื้นหลัง LCP จะลดลงจาก 2.6 วินาทีเป็น 1.9 วินาที
ดูรายละเอียดทั้งหมดเกี่ยวกับการเพิ่มประสิทธิภาพการโหลดทรัพยากรด้วย Fetch Priority API รวมถึงวิธีลงทะเบียนทดลองใช้ต้นทางและตัวอย่างที่ยอดเยี่ยมเกี่ยวกับวิธีที่ Fetch Priority API ช่วยปรับปรุงประสิทธิภาพการแสดงผล
จำลอง Chrome 100 ในสตริง UA
ในช่วงต้นปีหน้า เราจะเปิดตัว Chrome เวอร์ชัน 100 ซึ่งเป็นเวอร์ชันที่มีตัวเลข3 หลัก คุณควรตรวจสอบโค้ดที่ตรวจสอบหมายเลขเวอร์ชันหรือแยกวิเคราะห์สตริง UA เพื่อให้แน่ใจว่ารองรับตัวเลข 3 หลัก
ตั้งแต่ Chrome 96 เป็นต้นไป จะมี Flag ใหม่ #force-major-version-to-100
ที่จะเปลี่ยนหมายเลขเวอร์ชันปัจจุบันเป็น 100 เพื่อให้คุณตรวจสอบได้ว่าทุกอย่างทำงานได้ตามที่คาดไว้
โปรดดูรายละเอียดที่หัวข้อบังคับให้ Chrome เป็นเวอร์ชันหลัก 100 ในสตริง User Agent
Chrome Dev Summit
Chrome Dev Summit จบลงแล้ว วิดีโอและเนื้อหาทั้งหมดมีให้บริการทางออนไลน์ โปรดไปที่เว็บไซต์ Chrome Dev Summit หรือหากพลาดการกล่าวสุนทรพจน์หรือสตรีมแบบสด โปรดดูเพลย์ลิสต์ CDS ในช่อง YouTube ของนักพัฒนาซอฟต์แวร์ Chrome
และอีกมากมาย
แน่นอนว่ายังมีอีกมากมาย
- ตอนนี้ปุ่มย้อนกลับและไปข้างหน้า หรือ
bfcache
พร้อมใช้งานในเวอร์ชันเสถียรแล้ว ซึ่งจะช่วยให้ Chrome ทำงานได้เหมือนกับทั้ง Firefox และ Safari
อ่านเพิ่มเติม
ข้อมูลนี้เป็นเพียงไฮไลต์สำคัญบางส่วนเท่านั้น ดูการเปลี่ยนแปลงเพิ่มเติมใน Chrome 96 ได้ที่ลิงก์ด้านล่าง
- มีอะไรใหม่ในเครื่องมือสำหรับนักพัฒนาเว็บใน Chrome (96)
- การเลิกใช้งานและการนำออกใน Chrome 96
- การอัปเดต ChromeStatus.com สำหรับ Chrome 96
- มีอะไรใหม่ใน JavaScript ใน Chrome 96
- รายการการเปลี่ยนแปลงที่เก็บข้อมูลซอร์สโค้ด Chromium
- ปฏิทินการเผยแพร่ของ Chrome
สมัครใช้บริการ
หากต้องการติดตามข่าวสารล่าสุด โปรดติดตามช่อง YouTube ของนักพัฒนาซอฟต์แวร์ Chrome แล้วคุณจะได้รับอีเมลแจ้งเตือนทุกครั้งที่เราเปิดตัววิดีโอใหม่
ผมชื่อ Pete LePage และพร้อมที่จะมาบอกคุณถึงสิ่งใหม่ๆ ใน Chrome ทันทีที่ Chrome 97 เปิดตัว