ภาพรวมของแท็บที่กำหนดเองใน Android

Custom Tab เป็นฟีเจอร์ในเบราว์เซอร์ Android ที่ช่วยนักพัฒนาแอปในการเพิ่มประสบการณ์การใช้งานเบราว์เซอร์ที่ปรับแต่งเองภายในแอปได้โดยตรง

การโหลดเนื้อหาเว็บเป็นส่วนหนึ่งของแอปบนอุปกรณ์เคลื่อนที่มาตั้งแต่ยุคแรกๆ ของสมาร์ทโฟน แต่ตัวเลือกเก่าๆ อาจสร้างปัญหาให้กับนักพัฒนาแอป การเปิดตัวเบราว์เซอร์จริงเป็นการเปลี่ยนบริบทที่หนักหน่วงสำหรับผู้ใช้ที่ปรับแต่งไม่ได้ ขณะที่ WebView ไม่รองรับฟีเจอร์ทั้งหมดของแพลตฟอร์มเว็บ ไม่ได้แชร์สถานะกับเบราว์เซอร์ และเพิ่มค่าใช้จ่ายในการบำรุงรักษา

แท็บที่กำหนดเองช่วยให้ผู้ใช้อยู่ในแอปขณะท่องเว็บได้ ซึ่งจะเพิ่มการมีส่วนร่วมและลดความเสี่ยงที่ผู้ใช้จะเลิกใช้แอป แท็บที่กำหนดเองจะทำงานโดยเบราว์เซอร์ที่ผู้ใช้ต้องการโดยตรง และจะแชร์สถานะและฟีเจอร์ที่เบราว์เซอร์นำเสนอโดยอัตโนมัติ คุณไม่จําเป็นต้องเขียนโค้ดที่กําหนดเองเพื่อจัดการคําขอ การมอบสิทธิ์ หรือที่เก็บคุกกี้

แท็บที่กำหนดเองทําอะไรได้บ้าง

เมื่อใช้แท็บที่กำหนดเอง เนื้อหาเว็บจะโหลดในเครื่องมือแสดงผลที่ขับเคลื่อนเบราว์เซอร์ที่ผู้ใช้ต้องการ ฟีเจอร์ API หรือแพลตฟอร์มเว็บใดๆ ก็ตามจะพร้อมใช้งานในแท็บดังกล่าวและในแท็บที่กำหนดเอง เซสชันการท่องเว็บ รหัสผ่านที่บันทึกไว้ วิธีการชำระเงิน และที่อยู่ทั้งหมดจะปรากฏขึ้นเหมือนที่เคยใช้

ฉันจะปรับแต่งอะไรได้บ้างในแท็บที่กำหนดเอง

ค่อนข้างมาก แท็บที่กำหนดเองช่วยให้คุณควบคุมเบราว์เซอร์ Chrome และประสบการณ์ของผู้ใช้ได้ละเอียด คุณเปิดแท็บที่กำหนดเองภายในแอปโดยใช้ Intent เมื่อเรียก Intent นี้ คุณสามารถเพิ่มแอตทริบิวต์จํานวนหนึ่งลงใน CustomTabIntent เพื่อให้ได้ประสบการณ์การใช้งานที่คุณต้องการ การปรับแต่งบางอย่างที่คุณเพิ่มได้แสดงอยู่ที่นี่

  • ภาพเคลื่อนไหวสำหรับการเข้าและออกที่กำหนดเองเพื่อให้เข้ากับส่วนอื่นๆ ของแอป
  • การปรับสีแถบเครื่องมือให้เข้ากับการสร้างแบรนด์ของแอป
  • การใช้สีที่สอดคล้องกันซึ่งใช้ได้กับแอปของคุณ แม้ว่าผู้ใช้จะสลับระหว่างธีมสว่างและธีมมืด
  • การทำงานและรายการที่กำหนดเองในแถบเครื่องมือและเมนูของเบราว์เซอร์
  • ควบคุมความสูงของแท็บที่กำหนดเองเมื่อเปิดใช้งาน ซึ่งจะเปิดใช้ฟีเจอร์ต่างๆ เช่น การสตรีมวิดีโอขณะโต้ตอบกับเว็บร้านค้า

นอกจากนี้ ผู้ใช้ยังย่อแท็บที่กำหนดเองเพื่อโต้ตอบกับแอปที่เกี่ยวข้อง และกู้คืนแท็บได้ทุกเมื่อโดยที่ความคืบหน้าจะไม่หายไปเพื่อใช้งานต่อ ซึ่งช่วยให้ผู้ใช้มีทางเลือกในการปิดแท็บที่กำหนดเองเพื่อให้ทำงานหลายอย่างได้ราบรื่นระหว่างเว็บกับแอปเนทีฟ โดยระบบจะเปิดใช้ฟีเจอร์นี้โดยค่าเริ่มต้นสำหรับแท็บที่กำหนดเอง

การดำเนินการดังกล่าวอยู่ไกลจากทุกสิ่ง แท็บที่กำหนดเองมีประสิทธิภาพสูงมากและอยู่ระหว่างการพัฒนา แต่ละเบราว์เซอร์จะต้องเพิ่มการรองรับฟีเจอร์เหล่านี้เมื่อพร้อมใช้งาน แม้ว่าเกือบทุกเบราว์เซอร์จะรองรับในระดับหนึ่ง แต่คุณก็ควรทราบว่าฟีเจอร์ใดบ้างที่อาจหรือไม่พร้อมใช้งานในเบราว์เซอร์ของผู้ใช้ โปรดดูตารางเปรียบเทียบฟีเจอร์เพื่อตรวจสอบความพร้อมให้บริการของฟีเจอร์ต่างๆ ในเบราว์เซอร์ Android ยอดนิยมได้อย่างรวดเร็ว

คุณทดสอบได้แล้วตอนนี้ด้วยตัวอย่างใน GitHub

ฉันควรใช้แท็บที่กำหนดเองเมื่อใด

ไม่มีการโหลดเนื้อหาบนเว็บที่ "ถูกต้อง" เพียงวิธีเดียว ในบางสถานการณ์ WebView จะเป็นเทคโนโลยีที่เหมาะสม เช่น หากคุณโฮสต์เนื้อหาของคุณเองภายในแอปแต่เพียงผู้เดียว หรือหากต้องการแทรก JavaScript จากแอปโดยตรง หากแอปของคุณนําผู้ใช้ไปยัง URL ภายนอกโดเมน สถานะการแชร์ในตัวในแท็บที่กําหนดเองอาจเหมาะกว่า จุดแข็งอื่นๆ ของแท็บที่กำหนดเอง ได้แก่

  1. ความปลอดภัย: แท็บที่กำหนดเองใช้ Google Safe Browsing เพื่อปกป้องผู้ใช้และอุปกรณ์จากเว็บไซต์ที่เป็นอันตราย
  2. การเพิ่มประสิทธิภาพ
    1. อุ่นเบราว์เซอร์ไว้ล่วงหน้าในเบื้องหลัง โดยไม่แย่งทรัพยากรจากแอปพลิเคชัน
    2. เพิ่มความเร็วในการโหลดหน้าเว็บด้วยวิธีการโหลด URL แบบคาดเดาล่วงหน้า
  3. การจัดการวงจร: ระบบจะไม่ปิดแอปที่เปิดแท็บที่กำหนดเองระหว่างที่มีการใช้แท็บ ความสำคัญของแท็บที่กำหนดเองจะเพิ่มขึ้นเป็นระดับเบื้องหน้า
  4. กล่องคุกกี้และรูปแบบสิทธิ์ที่แชร์เพื่อให้ผู้ใช้ไม่ต้องลงชื่อเข้าใช้เว็บไซต์ที่เชื่อมต่ออยู่แล้ว หรือให้สิทธิ์อีกครั้งหลังจากที่ให้ไปแล้ว
  5. ฟีเจอร์เบราว์เซอร์ เช่น ฟีเจอร์ป้อนข้อความอัตโนมัติเพื่อให้กรอกแบบฟอร์มได้ง่ายขึ้น พร้อมให้ใช้งานทันที
  6. ผู้ใช้สามารถกลับไปที่แอปได้โดยใช้ปุ่มย้อนกลับที่ผสานรวมไว้

แท็บที่กำหนดเองกับกิจกรรมในเว็บซึ่งเชื่อถือได้

กิจกรรมในเว็บซึ่งเชื่อถือได้จะขยายโปรโตคอลแท็บที่กำหนดเองและแชร์ประโยชน์ส่วนใหญ่ของโปรโตคอลดังกล่าว แต่แทนที่จะให้ UI ที่ปรับแต่งได้ ฟีเจอร์นี้ช่วยให้นักพัฒนาแอปเปิดแท็บเบราว์เซอร์ได้โดยไม่ต้องมี UI ใดๆ เลย เราขอแนะนำให้นักพัฒนาแอปที่ต้องการเปิด Progressive Web App ของตนเองในโหมดเต็มหน้าจอภายในแอป Android ของตนเองใช้วิธีนี้

แท็บที่กำหนดเองพร้อมใช้งานที่ใดบ้าง

แท็บที่กำหนดเองเป็นฟีเจอร์ที่เบราว์เซอร์ในแพลตฟอร์ม Android รองรับ Chrome เป็นผู้เปิดตัวฟีเจอร์นี้ในเวอร์ชัน 45 เบราว์เซอร์ Android ส่วนใหญ่รองรับโปรโตคอลนี้

เราต้องการความคิดเห็น คำถาม และคำแนะนำเกี่ยวกับโปรเจ็กต์นี้ จึงขอแนะนำให้คุณแจ้งปัญหาใน crbug.com และถามคำถามใน Twitter ที่ @ChromiumDev

เริ่มต้นใช้งาน

นอกจากการสาธิตใน GitHub แล้ว ยังมีคําแนะนํามากมายที่จะช่วยให้คุณเริ่มต้นใช้งานแท็บที่กําหนดเองได้

หากมีข้อสงสัย โปรดดูแท็ก chrome-custom-tabs ใน StackOverflow