Flag ของ Chrome เป็นวิธีเปิดใช้งานฟีเจอร์เบราว์เซอร์ที่ไม่พร้อมใช้งานโดยค่าเริ่มต้น
ตัวอย่างเช่น Chrome ต้องการอนุญาตให้ผู้ใช้ลองใช้ฟีเจอร์วิดีโอภาพในภาพก่อนที่จะเปิดตัวฟีเจอร์นี้ให้ทุกคนใช้งาน
ฟีเจอร์นี้พร้อมให้ใช้งานผ่าน Flag เพื่อให้ผู้ใช้ทุกคนได้ลองใช้และแสดงความคิดเห็น โค้ดและการออกแบบได้รับการทดสอบและขัดเกลาตามความคิดเห็นที่ได้รับ ตอนนี้คุณสามารถใช้ฟีเจอร์ภาพซ้อนภาพใน Chrome โดยค่าเริ่มต้นได้แล้ว และฟีเจอร์นี้ใช้งานได้ดีมาก
ทําความเข้าใจความเสี่ยง
ผู้ใช้ Chrome ส่วนใหญ่ไม่จำเป็นต้องใช้ Flag ของ Chrome
หากคุณตั้งค่า Flag ของ Chrome โปรดระมัดระวัง เมื่อเปิดหรือปิดใช้งานฟีเจอร์ คุณอาจสูญเสียข้อมูลหรืออาจส่งผลกระทบต่อความปลอดภัยหรือความเป็นส่วนตัวของคุณ ฟีเจอร์ที่คุณเปิด/ปิดด้วย Flag อาจหยุดทํางานหรือถูกนําออกโดยไม่แจ้งให้ทราบ
หากคุณเป็นผู้ดูแลระบบไอทีขององค์กร ก็ไม่ควรใช้การติดธงใน Chrome ในเวอร์ชันที่ใช้งานจริง โปรดดูนโยบายสำหรับองค์กรแทน
...และดำเนินการด้วยความระมัดระวัง
อย่างไรก็ตาม หากคุณเป็นนักพัฒนาเว็บที่ต้องการลองเทคโนโลยีใหม่ๆ หรือแค่เป็นคนช่างสงสัย การทำความรู้จักกับ Flag ของ Chrome ก็อาจมีประโยชน์มาก
ฟีเจอร์ต่างๆ มีหลายประเภทและมี Flag จำนวนมาก Flag บางรายการส่งผลต่อลักษณะที่ปรากฏหรือวิธีการทำงานของ Chrome และบางรายการจะเปิดใช้งานฟีเจอร์ เช่น JavaScript API ใหม่ ความพร้อมใช้งานของ Flag ขึ้นอยู่กับเวอร์ชัน Chrome ที่คุณใช้
การตั้งค่า Flag ของ Chrome มี 2 วิธีดังนี้
- จากหน้า
chrome://flags
- โดยเปิด Chrome จากบรรทัดคำสั่งในเทอร์มินัล
chrome://flags
หากต้องการตั้งค่า Flag จากหน้า chrome://flags
ใน Chrome คุณต้องค้นหา Flag สลับการตั้งค่า Flag แล้วเปิดเบราว์เซอร์อีกครั้ง
เช่น หากต้องการเปิดใช้งานการแสดงข้อมูลบนหน้าจอของ Chrome สำหรับเมตริกประสิทธิภาพ ให้ทำดังนี้
ค้นหาฟีเจอร์ดังกล่าว
ตั้งค่าเป็นเปิดใช้
เปิด Chrome อีกครั้ง
ตอนนี้คุณใช้ Head-Up Display ที่แสดงข้อมูลทางเทคนิคเกี่ยวกับประสิทธิภาพของหน้าเว็บได้แล้ว
แฟล็กบรรทัดคำสั่ง
หากคุณเป็นนักพัฒนาเว็บ คุณอาจต้องการตั้งค่า Flag โดยเปิด Chrome จากบรรทัดคำสั่ง คุณเรียกใช้คำสั่งเพื่อเปิด Chrome และเพิ่ม Flag ที่ต้องการตั้งค่า การตั้งค่า Chrome ที่คุณกำหนดค่าได้จากบรรทัดคำสั่งมีมากกว่าการตั้งค่าที่มีใน chrome://flags
ตัวอย่างเช่น หากต้องการเรียกใช้ Chrome Canary จากเทอร์มินัลใน Mac โดยเปิดใช้งาน Topics API และตั้งค่าความยาวของยุคเป็น 15 วินาที ให้ใช้คําสั่งต่อไปนี้
/Applications/Google\ Chrome\ Canary.app/Contents/MacOS/Google\ Chrome\ Canary
--enable-features=BrowsingTopics:time_period_per_epoch/15s,PrivacySandboxAdsAPIsOverride,PrivacySandboxSettings3,OverridePrivacySandboxSettingsLocalTesting
นอกจากนี้ยังมี Flag อื่นๆ อีกหลายร้อยรายการสําหรับการเปิดใช้งาน การปิดใช้งาน และการกําหนดค่าฟีเจอร์ที่ไม่ค่อยมีคนรู้จัก
หากคุณใช้ช่องทาง Chrome ต่างๆ กับ Flag บรรทัดคำสั่งเป็นประจำ คุณอาจต้องสร้างฟังก์ชันสำหรับแต่ละช่องทาง แล้วเพิ่มฟังก์ชันเหล่านี้ลงในไฟล์ RC ของเชลล์ เช่น ใน macOS ให้ทำดังนี้
- เปิดเทอร์มินัล
- สร้างฟังก์ชัน:
cf(){ open -a 'Google Chrome Canary' --args $*; }
- ใช้ฟังก์ชัน
cf --enable-features=TrackingProtection3pcd
ตั้งค่าไดเรกทอรีข้อมูลผู้ใช้ Chrome
ในภาษาวิศวกรของ Chrome คำว่าผู้ใช้ Chrome หมายถึงบุคคลธรรมดาผู้ใช้ Chrome
ไคลเอ็นต์ Chrome หมายถึงการติดตั้ง Chrome แต่ละครั้งในอุปกรณ์
กล่าวอย่างเจาะจงคือ ไคลเอ็นต์ Chrome สอดคล้องกับไดเรกทอรีข้อมูลผู้ใช้แต่ละรายการ โปรไฟล์ Chrome แต่ละรายการจะเก็บอยู่ในไดเรกทอรีย่อยภายในไดเรกทอรีข้อมูลผู้ใช้
หากเรียกใช้ Chrome จากบรรทัดคำสั่ง คุณจะตั้งค่าไดเรกทอรีข้อมูลผู้ใช้ได้โดยใช้ --user-data-dir flag
ซึ่งหมายความว่าคุณจะมีไดเรกทอรีข้อมูลผู้ใช้แยกต่างหากสําหรับการพัฒนาได้ โดยมีไดเรกทอรีย่อยโปรไฟล์ของตัวเอง การสร้างไดเรกทอรีข้อมูลผู้ใช้ใหม่จะทำให้ Chrome ทำงานเหมือนเพิ่งติดตั้งใหม่ ซึ่งอาจช่วยแก้ไขข้อบกพร่องที่เกี่ยวข้องกับโปรไฟล์ได้
หากต้องการเรียกใช้ Chrome จากบรรทัดคำสั่งด้วยไดเรกทอรีผู้ใช้ชั่วคราวใหม่ ให้ใช้ Flag ต่อไปนี้
--user-data-dir=$(mktemp -d)
คุณอาจต้องเพิ่ม Flag ต่อไปนี้ด้วยเพื่อหลีกเลี่ยงการตรวจสอบเบราว์เซอร์และ UI การเรียกใช้ครั้งแรก
--no-default-browser-check --no-first-run
ระวังการแจ้งว่าไม่เหมาะสมทับซ้อนกัน
การแจ้งเตือนที่คุณตั้งไว้อาจขัดแย้งกัน การตั้งค่า chrome://flags
จะลบล้างการตั้งค่าบรรทัดคำสั่งสำหรับแฟล็กเดียวกัน และในบางกรณี ค่าเริ่มต้นสำหรับการตั้งค่า chrome://flags
อาจลบล้างการกำหนดค่าบรรทัดคำสั่ง หาก Flag ที่คุณตั้งค่าให้เรียกใช้ Chrome จากบรรทัดคำสั่งไม่ทำงานตามที่คาดไว้ คุณควรตรวจสอบหน้า chrome://flags
chrome://flags
จะไม่แสดงธงที่กําหนดจากบรรทัดคําสั่ง แต่ให้ดูที่หน้า chrome://version
แทน ส่วนบรรทัดคำสั่งจะแสดงการตั้งค่าการติดธง
อีก 2 วิธีในการลองใช้ฟีเจอร์ทดลอง
คุณเปิดใช้ฟีเจอร์ทดลองต่างๆ ที่ไม่มี Flag ของตัวเองได้โดยสลับ Flag chrome://flags#enable-experimental-web-platform-features
เอกสารประกอบของฟีเจอร์ใหม่จะอธิบายถึงกรณีที่ใช้ตัวเลือกนี้ได้
ใน Chrome เบต้า คุณสามารถลองใช้การทดสอบเด่นๆ และแสดงความคิดเห็นได้โดยสลับการตั้งค่าการทดสอบและเปิดเบราว์เซอร์อีกครั้ง ทดสอบฟีเจอร์ทดลองใน Chrome มีรายละเอียดเพิ่มเติม
ฟีเจอร์ใดบ้างที่จะได้รับแจ้ง
ฟีเจอร์ทดลองบางรายการจะไม่มี Flag ของ Chrome เป็นของตัวเอง
- ฟีเจอร์บางอย่างจะพร้อมใช้งานเมื่อเปิดตัวใน Chrome Canary เท่านั้น และไม่สามารถเปิดใช้งานด้วย Flag ได้ก่อนหน้านั้น กรณีนี้เกิดขึ้นได้น้อยมาก
- สำหรับฟีเจอร์ "ขนาดเล็ก" ที่ต้องใช้เวลาไม่เกิน 1-2 ไตรมาส คุณจะเปิดใช้ฟีเจอร์เวอร์ชันทดลองได้โดยเปิดใช้ Flag ต่อไปนี้
chrome://flags#enable-experimental-web-platform-features
การดำเนินการนี้จะเปิดใช้งานฟีเจอร์ย่อยหลายรายการ - ฟีเจอร์หลักพร้อมให้ทดลองใช้ Flag ที่เฉพาะเจาะจงสำหรับฟีเจอร์นั้นๆ โดยใช้
chrome://flags
หรือสวิตช์บรรทัดคำสั่ง
แล้วการตั้งค่า Chrome ล่ะ
การตั้งค่า Chrome และ Flag ของ Chrome มีวัตถุประสงค์ต่างกัน
Flag ของ Chrome ช่วยให้ผู้ใช้เปิดหรือปิดใช้งานฟีเจอร์ทดลองได้ ส่วนตัวเลือกใน chrome://settings
ช่วยให้ผู้ใช้ปรับแต่งประสบการณ์การใช้งานฟีเจอร์เริ่มต้นได้
แล้วช่วงทดลองใช้จากต้นทางล่ะ
ช่วงทดลองใช้จากต้นทางเป็นช่องทางให้นักพัฒนาซอฟต์แวร์ทดสอบฟีเจอร์ใหม่หรือฟีเจอร์ทดลองของแพลตฟอร์มเว็บในวงกว้าง นักพัฒนาซอฟต์แวร์สามารถแสดงความคิดเห็นต่อชุมชนมาตรฐานเว็บได้ก่อนที่ฟีเจอร์นี้จะพร้อมให้บริการแก่ผู้ใช้ทุกคน
ฟีเจอร์ที่อยู่ระหว่างช่วงทดลองใช้ของต้นทางจะเปิดใช้งานในทุกหน้าเว็บที่มีโทเค็นที่ถูกต้องสําหรับช่วงทดลองใช้นั้น ซึ่งช่วยให้เจ้าของเว็บไซต์เปิดใช้งานฟีเจอร์ทดลองสําหรับผู้ใช้ทุกคนได้โดยไม่ต้องให้ผู้ใช้เปลี่ยนการตั้งค่าเบราว์เซอร์หรือตั้งค่า Flag ในทางกลับกัน Chrome Flag ช่วยให้ผู้ใช้แต่ละรายเปิดหรือปิดใช้งานฟีเจอร์ทดลองในเว็บไซต์ทั้งหมดที่เข้าชมได้
ดูข้อมูลเพิ่มเติม
- เว็บไซต์ Chromium จะอธิบายวิธีตั้งค่า Flag จากบรรทัดคำสั่งสำหรับอุปกรณ์เคลื่อนที่และเดสก์ท็อปในแพลตฟอร์มต่างๆ
- ดูข้อมูลเกี่ยวกับฟีเจอร์ FLAG สวิตช์ และรูปแบบอื่นๆ สำหรับการทดสอบเบราว์เซอร์
- Flag ของ Chrome สำหรับเครื่องมือจะบันทึก Flag ที่เกี่ยวข้องกับเครื่องมือ การทำงานอัตโนมัติ และการเปรียบเทียบ
- รายการสวิตช์บรรทัดคำสั่งของ Chromium จะอัปเดตโดยอัตโนมัติด้วย Flag ทั้งหมดที่ใช้ได้ และครั้งล่าสุดที่เราตรวจสอบ มี Flag มากกว่า 1,400 รายการ
- Chromium Flag Updates เป็นบอทที่ทวีตการเปลี่ยนแปลงในไฟล์ chrome/browser/flag-metadata.json
- นอกจากนี้ยังมี Flag อื่นๆ อีกมากมายที่พร้อมให้ใช้เพื่อกําหนดค่าฟีเจอร์ JavaScript API แต่ละรายการ ดูข้อมูลเพิ่มเติมเกี่ยวกับข้อเสนอเหล่านี้ได้จากเอกสารประกอบ API และคำอธิบายเกี่ยวกับข้อเสนอ
- สำรวจฟีเจอร์ทดลองใน Firefox