Helium Browser นำเอ็กซ์เทนชันสไตล์เดสก์ท็อปมาสู่ Android ก่อให้เกิดการถกเถียงในหมู่ผู้พัฒนา

ทีมชุมชน BigGo
Helium Browser นำเอ็กซ์เทนชันสไตล์เดสก์ท็อปมาสู่ Android ก่อให้เกิดการถกเถียงในหมู่ผู้พัฒนา

ภูมิทัศน์ของเบราว์เซอร์มือถือถูกแบ่งแยกระหว่างความสะดวกสบายและฟังก์ชันการทำงานมาเป็นเวลานาน โดยผู้ใช้ Android รู้สึกถึงข้อจำกัดนี้เป็นพิเศษเมื่อพูดถึงการสนับสนุนเอ็กซ์เทนชัน ขณะที่เบราว์เซอร์เดสก์ท็อปมีระบบนิเวศของเอ็กซ์เทนชันที่หลากหลายสำหรับการบล็อกโฆษณา การเพิ่มความเป็นส่วนตัว และการเพิ่มผลผลิต เบราว์เซอร์มือถือโดยทั่วไปกลับมีตัวเลือกที่จำกัด ช่องว่างนี้ได้จุดประกายความสนใจใหม่ในเบราว์เซอร์ที่ใช้พื้นฐาน Chromium ซึ่งสามารถเชื่อมโยงช่องว่างดังกล่าวได้ โดยมี Helium Browser สำหรับ Android ปรากฏขึ้นเป็นโซลูชันทดลองที่มีแนวโน้มดีซึ่งรวมการสนับสนุนเอ็กซ์เทนชันเข้ากับฟีเจอร์ที่มุ่งเน้นความเป็นส่วนตัว

ความท้าทายด้านการนำเทคนิคไปใช้สำหรับเอ็กซ์เทนชันมือถือ

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

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

ผู้พัฒนาบางคนแนะนำให้ใช้โมเดลกระบวนการร่วมกับการแยกบริบท (context isolation) เป็นโซลูชันที่เป็นไปได้ ซึ่งสามารถให้การรับประกันความปลอดภัยที่คล้ายกันด้วยโอเวอร์เฮดหน่วยความจำที่น้อยลงประมาณ 70% อย่างไรก็ตาม แนวทางนี้ต้องการการจัดการ IPC (Inter-Process Communication) ที่ซับซ้อนระหว่างเอ็กซ์เทนชันและกระบวนการหลักของเบราว์เซอร์ การเปลี่ยนไปใช้ WebExtension manifest v3 เพิ่มความซับซ้อนอีกชั้นหนึ่ง โดยเฉพาะอย่างยิ่งรอบการจัดการวงจรชีวิตของ service worker และข้อจำกัดของ background page ที่ส่งผลต่อวิธีการทำงานของเอ็กซ์เทนชันบนอุปกรณ์มือถือ

ผลกระทบด้านหน่วยความจำของ Mobile Extensions

  • โมเดลมาตรฐานแบบ process-per-extension: ใช้หน่วยความจำเพิ่มเติม 30-50MB ต่อ extension
  • โมเดล shared process ที่นำเสนอ: ลดการใช้หน่วยความจำได้ประมาณ 70%
  • ความท้าทายหลัก: การรักษาความปลอดภัยในขณะที่ลดการใช้ทรัพยากร

ความสับสนในชุมชนและการชี้แจงโครงการ

การตั้งชื่อเบราว์เซอร์ทำให้เกิดความสับสนบางอย่างภายในชุมชน โดยผู้ใช้ในначаแรกเข้าใจผิดคิดว่าเป็นโครงการอื่นชื่อ Helium ผู้แสดงความคิดเห็นระบุอย่างรวดเร็วว่าการนำใช้นี้มีพื้นฐานมาจากเบราว์เซอร์ Helium ต้นฉบับโดย imput ซึ่งใช้แนวทางที่ผิดปกติในการใช้แพตช์แทนการรักษาฟอร์กเต็มของซอร์สโค้ด Chromium วิธีการแบบใช้แพตช์นี้ได้จุดประกายการถกเถียงเกี่ยวกับความยั่งยืนในระยะยาวและภาระการบำรุงรักษา

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

ความกังวลเกี่ยวกับการเข้าถึงและการกระจายตัว

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

ความต้องการการกระจายตัวผ่าน F-Droid เกิดขึ้นเป็นธีมที่สม่ำเสมอ โดยผู้ใช้หลายคนเน้นย้ำว่าการรวมใน repository อย่างเป็นทางการจะเพิ่มมูลค่าและการเข้าถึงของโครงการได้อย่างมีนัยสำคัญ ผู้ใช้บางคนกล่าวถึงทางเลือกที่มีอยู่เช่นเบราว์เซอร์ Quetta ที่ให้การสนับสนุนเอ็กซ์เทนชันที่เสถียร ในขณะที่คนอื่นๆ แสดงความสนใจใน Helium ในฐานะตัวแทนที่อาจเป็นไปได้สำหรับ Kiwi Browser ซึ่งหยุดรับอัปเดตแล้วแม้จะมีความนิยมในการสนับสนุนเอ็กซ์เทนชัน

วิธีการแจกจ่ายที่ถูกหารือ

  • GitHub Releases: มีไฟล์ APK ให้ดาวน์โหลดโดยตรง
  • Obtanium: อัปเดตอัตโนมัติสำหรับโปรเจกต์บน GitHub
  • F-Droid: ชุมชนร้องขอเพื่อการเข้าถึงที่ง่ายขึ้น
  • Self-building: สามารถทำได้ผ่านสคริปต์สร้างที่มีให้

การพิจารณาด้านความเป็นส่วนตัวและความปลอดภัย

รากฐานความเป็นส่วนตัวของเบราว์เซอร์ก่อให้เกิดการอภิปรายอย่างมาก โดยเฉพาะอย่างยิ่งเกี่ยวกับความสัมพันธ์กับโครงการ Vanadium และ ungoogled-chromium ผู้ใช้สอบถามว่าบริการ safebrowsing ของ Google และบริการเทเลเมทรีอื่นๆ ยังคงเปิดใช้งานในโค้ดเบสหรือไม่ ซึ่งเน้นยึงความกังวลอย่างต่อเนื่องเกี่ยวกับอิทธิพลของ Google แม้แต่ในอนุพันธ์ Chromium ที่มุ่งเน้นความเป็นส่วนตัว การนำใช้นี้สืบทอดการปรับปรุงความเป็นส่วนตัวของ Vanadium โดยค่าเริ่มต้น ในขณะที่ทำงานเพื่อรวมแพตช์เพิ่มเติมของ Helium

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

เบราว์เซอร์ทางเลือกที่รองรับส่วนขยาย

  • Quetta Browser: รองรับส่วนขยายอย่างเสถียรบนมือถือ
  • Kiwi Browser: เคยได้รับความนิยมแต่ไม่มีการอัปเดตอีกต่อไป
  • Vanadium: เน้นความเป็นส่วนตัวแต่รองรับส่วนขยายอย่างจำกัด

การพัฒนาในอนาคตและการมีส่วนร่วมของชุมชน

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

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

อ้างอิง: Helium Browser for Android