Manifest V3 ของ Google จะเปลี่ยนวิธีการทำงานของส่วนขยาย Chrome ที่บล็อกโฆษณา: มันจะทำให้พิการหรือเพื่อความปลอดภัย?

Manifest V3 ที่กำลังจะมาถึงสำหรับส่วนขยายของ Google Chrome จะเปลี่ยนวิธีการทำงานของตัวบล็อคโฆษณาบน Chrome นี่เป็นวิธีที่ถูกต้องสำหรับตัวบล็อกโฆษณาและ Google หรือไม่

Google Chrome เป็นเว็บเบราว์เซอร์ข้ามแพลตฟอร์มที่ได้รับความนิยมมากที่สุดในตลาดตอนนี้ อ้างสิทธิ์ 62.7% ของส่วนแบ่งการใช้งานเบราว์เซอร์ทั่วโลก จนถึงเดือนพฤษภาคม 2019 โดย Safari ของ Apple มาเป็นอันดับสองที่ 15.89% และ Firefox ของ Mozilla อ้างว่า 5.07% เนื่องจากมีส่วนแบ่งมหาศาล การเปลี่ยนแปลงเล็กๆ น้อยๆ ที่ Google Chrome ดำเนินการกับแพลตฟอร์มจึงส่งผลกระทบต่อผู้ใช้หลายล้านคนทั่วโลก ดังนั้นเมื่อ Google ประกาศส่วนขยายเวอร์ชันถัดไปในรูปแบบของ Manifest V3 สำหรับส่วนขยายของ Google Chrome เราก็รู้ว่าเรา มีการเปลี่ยนแปลงครั้งใหญ่ โดยเฉพาะอย่างยิ่งเมื่อพบว่า Google กำลังสร้าง API ตัวบล็อกเนื้อหาภายใน Chrome ตัวมันเอง

Manifest V3 คืออะไร?

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

โครมเว็บสโตร์ซึ่งมีส่วนขยายมากกว่า 180,000 รายการ

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

พูดง่ายๆ ก็คือเวอร์ชัน Manifest ใหม่ทำให้ Chrome สามารถจำกัด API และฟีเจอร์ต่างๆ ให้กับเวอร์ชัน Manifest ใหม่นี้ได้ เพื่อบังคับให้นักพัฒนาส่วนขยายย้ายออกจาก API เก่าบางอันเนื่องจากมีผลกระทบด้านลบต่อผู้ใช้ ประสบการณ์. การใช้ส่วนขยายใน Manifest V3 ตามทฤษฎีควรให้การรับประกันที่แข็งแกร่งยิ่งขึ้นจากมุมมองของความปลอดภัย ความเป็นส่วนตัว และประสิทธิภาพ

แม้ว่ามีการเปลี่ยนแปลงมากมายใน Manifest V3 แต่การเปลี่ยนแปลงที่มีการถกเถียงกันมากที่สุดเกี่ยวข้องกับการตัดสินใจของ Google ที่จะจำกัดความสามารถในการบล็อกที่มีอยู่ในเวอร์ชันปัจจุบัน chrome.webRequest API (และเน้น API เกี่ยวกับการสังเกตแทนการบล็อก) จากนั้นนำเสนอความสามารถในการบล็อกเหล่านี้ผ่านรูปแบบใหม่ chrome.declarativeNetRequest เอพีไอ การเปลี่ยนแปลงนี้โดยเฉพาะมี ทำให้ชุมชนลุกเป็นไฟ เมื่อสิ้นสุดการกำหนดเป้าหมายกลไกการบล็อกโฆษณาของส่วนขยายการบล็อกโฆษณาที่มีชื่อเสียง กำเนิด uBlockและส่งผลโดยตรงต่อผู้ใช้มากกว่า 10 ล้านคน

ก่อนที่เราจะแก้ไขปัญหานี้ เรามาดูวิธีการกันก่อน ขอเว็บ API เปรียบเทียบกับ ประกาศ NetRequest เอพีไอ

API คำขอเว็บและ API คำขอสุทธิที่เปิดเผย

ปัจจุบัน

คำอธิบายอย่างเป็นทางการของ Web Request อธิบาย API ดังต่อไปนี้:

Use the chrome.webRequest API to observe and analyze traffic and to intercept, block, or modify requests in-flight.

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

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

เมื่อ Chrome ส่งมอบ ข้อมูลทั้งหมดในคำขอเครือข่ายส่วนขยายที่ใช้ Web Request API มีสิทธิ์เข้าถึงเพื่ออ่านและแก้ไขทุกสิ่งที่ผู้ใช้ทำบนเว็บ ดังนั้นในขณะที่ตัวบล็อกเนื้อหาเช่น uBlock Origin ใช้ศักยภาพของ API นี้อย่างชาญฉลาด Google ก็อ้างว่าเป็นเช่นนั้น ส่วนขยายอื่น ๆ ที่มีเจตนาร้ายได้ใช้สิ่งเดียวกันในทางที่ผิดเพื่อเข้าถึงข้อมูลส่วนบุคคลของผู้ใช้ ข้อมูล. จากข้อมูลของ Google พบว่า 42% ของส่วนขยายที่เป็นอันตรายใช้ Web Request API ตั้งแต่เดือนมกราคม 2018 Google ยังอ้างว่ามี "ต้นทุนประสิทธิภาพที่สำคัญ" ที่เกี่ยวข้องกับ API ในฐานะเวอร์ชันบล็อก ต้องใช้กระบวนการที่ต่อเนื่องและใช้เวลานานซึ่งโดยพื้นฐานแล้วเข้ากันไม่ได้กับ 'ขี้เกียจ' กระบวนการ

Google เสนอให้จำกัด API นี้ในรูปแบบการบล็อกด้วย Manifest V3 อีกทางเลือกหนึ่ง Google กำลังให้บริการ Declarative Net Request API

อนาคต

คำอธิบายอย่างเป็นทางการของ Declarative Net Request อธิบาย API ดังต่อไปนี้:

The chrome.declarativeNetRequest API is used to block or modify network requests by specifying declarative rules.

ด้วย Declarative Net Request ทำให้ Chrome ไม่จำเป็นต้องส่งข้อมูลทั้งหมดเกี่ยวกับคำขอไปยังส่วนขยายการฟัง ส่วนขยายจะลงทะเบียนกฎกับ Chrome แทนซึ่งจะแจ้งให้เบราว์เซอร์ทราบล่วงหน้าว่าต้องทำอย่างไรหากพบคำขอบางประเภท

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

Declarative Net Request จะใช้ได้กับทั้ง Manifest V2 (ปัจจุบัน) และ Manifest V3 แต่จะเป็นวิธีหลักที่ Google จะอนุญาตให้แก้ไขคำขอเครือข่ายใน Manifest V3

ความขัดแย้ง

การเปลี่ยนแปลงของ Google ดูเหมือนจะสมเหตุสมผลจนกว่าคุณจะได้ยินอีกด้านหนึ่งของเรื่องราว ซึ่งส่วนใหญ่เป็นเรื่องของตัวบล็อคโฆษณา การโยกย้าย API นี้ถูกมองว่าเป็นวิธีการของ Google ในการฆ่าตัวบล็อกโฆษณา เนื่องจากมีการเปลี่ยนแปลงวิธีการทำงานของตัวบล็อกโฆษณาที่ได้รับความนิยมมากที่สุดโดยพื้นฐาน สิ่งนี้เชื่อมโยงกับ "ทฤษฎี" ที่ Google มีแรงจูงใจต่อการเปลี่ยนแปลงนี้จากมุมมองทางธุรกิจมากกว่าจากมุมมองของความปลอดภัยของผู้ใช้ ท้ายที่สุดแล้ว Google พึ่งพาการโฆษณาเป็นอย่างมากเพื่อสร้างรายได้ และตัวบล็อคโฆษณาถูกมองว่าเป็นภัยคุกคามโดยตรงสำหรับลูกค้าของ Google ในแนวนี้ ดังที่เปิดเผยผ่าน การยื่นแบบฟอร์ม 10-K ของ SEC ประจำปี 2018 ของ Alphabet (ทาง การลงทะเบียน):

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

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

Google ก็ต้อง ออกแถลงการณ์ เพื่อแก้ไขปัญหานี้ โดยย้ำจุดยืนว่าการเปลี่ยนแปลงนี้เป็นประโยชน์ต่อความเป็นส่วนตัวของผู้ใช้ ไม่ใช่การโจมตีตัวบล็อคโฆษณาโดยตรง:

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

จำเป็นต้องมีการอ้างอิงถึงตัวบล็อคโฆษณาที่ได้รับความนิยมมากที่สุดสองตัวที่มีอยู่ใน Google Chrome: กำเนิด uBlock และ แอดบล็อค พลัสซึ่งทั้งสองวิธีใช้แนวทางที่แตกต่างกันเพื่อให้ได้ผลลัพธ์เดียวกันของการบล็อกเนื้อหา uBlock Origin อาศัย Web Request API เป็นอย่างมาก และชุมชนได้ให้ความสำคัญกับส่วนขยายนี้ตลอดหลายปีที่ผ่านมา Adblock Plus และส่วนขยายการบล็อกเนื้อหาอื่นๆ ยังอาศัยส่วนการบล็อกของคำขอเว็บ ดังนั้นการเปลี่ยนแปลงใน API นี้จะส่งผลกระทบต่อตัวบล็อกเนื้อหาส่วนใหญ่ในระดับความจุอย่างน้อยที่สุด

การผลักดันของ Google เพื่อเลิกใช้งานคำขอเว็บจะทำลาย uBlock Origin ในรูปแบบปัจจุบัน ซึ่งเป็นสิ่งที่จะส่งผลกระทบต่อผู้ใช้จำนวนมากอย่างแน่นอน ในขณะที่ผู้ใช้ที่ไม่มีความภักดี (และไม่มีความตั้งใจที่จะกังวลกับความสำเร็จของบล็อกโฆษณา) จะพบวิธีแก้ปัญหาอื่นที่มาพร้อมกับข้อเสียของตัวเอง แต่มันจะกลายเป็นไปไม่ได้ สำหรับผู้ภักดีและผู้ที่ชื่นชอบในการคิดการออกแบบกลไกการกรองใหม่เพื่อหลีกเลี่ยงเทคนิคต่าง ๆ ที่เว็บไซต์จะคิดขึ้นในที่สุดเพื่อต่อสู้กับตัวบล็อกโฆษณาบน API เฉพาะนี้

Declarative Net Request ได้รับการเสนอให้เป็นกลไกการกรองที่ค่อนข้างจำกัดเหมือนเดิม วางแผนไว้ในตอนแรก มีขีดจำกัดกฎ 30,000 กฎสำหรับกฎตัวกรองคงที่ต่อส่วนขยาย (กฎที่ประกาศระหว่างการติดตั้ง) และขีดจำกัดกฎ 5,000 กฎสำหรับกฎตัวกรองไดนามิกต่อส่วนขยาย (กฎที่สามารถเพิ่มได้หลังการติดตั้ง) กฎส่วนเกินใดๆ จะถูกละเว้น ซึ่งเป็นปัญหาเล็กน้อย เนื่องจาก EasyList สำหรับ Adblock Plus นั้นมีกฎถึง 70,000 กฎ ในขณะที่ uBlock Origin สามารถกำหนดค่าให้ทำงานด้วยกฎมากกว่า 100,000 กฎ หลังจากการตอบโต้ครั้งแรกจากชุมชน Google ได้ตอบกลับ โดยสัญญาว่าจะเปลี่ยนขีดจำกัดกฎคงที่จาก 30,000 กฎต่อส่วนขยายเป็นสูงสุด 150,000 กฎทั่วโลก สิ่งนี้มีผลข้างเคียงจากการป้องกันไม่ให้ผู้ใช้ใช้สคริปต์ที่มีกฎเกณฑ์สูงอื่นๆ ร่วมกับตัวบล็อกโฆษณา ดังนั้นผู้ใช้จะต้องปรับเปลี่ยนการตั้งค่าของตนเอง

นอกเหนือจากขีดจำกัดการกรองที่จำกัด Declarative Net Request สามารถเปลี่ยนเส้นทางไปยัง URL แบบคงที่เท่านั้นดังนั้นจึงไม่มีการสนับสนุนสำหรับการจับคู่รูปแบบ uBlock Origin อาศัยการจับคู่รูปแบบเป็นอย่างมากและผู้พัฒนาส่วนขยาย ระบุว่าไม่สามารถดัดแปลงได้ อัลกอริธึมการจับคู่ส่วนขยายของเขาเพื่อให้ตรงตามข้อกำหนด API นอกจากนี้ API ยังจำเป็นต้องมีการอัปเดตส่วนขยายโดยสมบูรณ์เพื่ออัปเดตรายการตัวกรอง ซึ่งจะเป็นกิจกรรมที่บ่อยเกินไปเมื่อพิจารณาถึง ความถี่ในการอัปเดตรายการตัวกรองเหล่านี้. แน่นอนว่าการอัปเดตเหล่านี้จะขึ้นอยู่กับเกณฑ์และกระบวนการตรวจสอบส่วนขยายของ Google ด้วย

ในทางกลับกัน Google ยังคงรักษาจุดยืนอยู่เสมอว่าความตั้งใจที่จะย้ายออกจากคำขอเว็บนั้นมาจาก มุมมองด้านความปลอดภัย เนื่องจาก Web Request API มีประสิทธิภาพมากเกินไปในรูปแบบปัจจุบัน และทำให้มีพื้นที่กว้างมากสำหรับ ใช้ในทางที่ผิด. การละเมิดนี้ไม่ใช่แค่ในทางทฤษฎีเท่านั้น ดังที่ Google ได้กล่าวไว้ว่า 42% ของส่วนขยายที่เป็นอันตรายใช้ API นี้ในทางที่ผิด แอปเปิลซาฟารี API ตัวบล็อกเนื้อหา ได้รับการออกแบบมาเหมือนกับ Declarative Net Request ด้วยเหตุผลที่คล้ายกัน เนื่องจากมีพื้นที่น้อยกว่าสำหรับนักพัฒนาโกงที่จะใช้ประโยชน์ ในคำขอเว็บที่ถูกเนิร์ฟ คำขอเครือข่ายจะยังคงสามารถสังเกตได้ แต่จะต้องได้รับอนุญาตจากโฮสต์ที่เกี่ยวข้อง ด้วย Manifest V3 สิทธิ์ของโฮสต์ก็เปลี่ยนแปลงไปอย่างมากเช่นกัน และไม่สามารถให้สิทธิ์แบบครอบคลุมได้อีกต่อไปในขณะติดตั้ง

Google ยังใช้ค่าใช้จ่ายด้านประสิทธิภาพเป็นแรงจูงใจในการเปลี่ยน การประเมินคำขอเครือข่ายเกิดขึ้นในเธรด JavaScript ของส่วนขยาย ซึ่งอาจมีค่าใช้จ่ายสูงต่อประสิทธิภาพการทำงาน เพื่อเป็นการโต้แย้ง ผู้พัฒนา uBlock Origin กล่าวถึงส่วนขยายของเขา ไม่ได้รับโทษปรับการปฏิบัติงานที่มีนัยสำคัญ แม้ว่าจะมีตัวกรองแบบคงที่มากถึง 140,000 ตัวที่จะบังคับใช้ก็ตาม ค่าใช้จ่ายที่เกิดขึ้นนั้นอ้างว่าสามารถกู้คืนได้ง่ายโดยทรัพยากรที่ถูกป้องกันไม่ให้ดาวน์โหลดจากเซิร์ฟเวอร์ระยะไกล ดังนั้นจึงไม่ได้รับการประมวลผลโดยเบราว์เซอร์

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

บทสรุป

จากคำอธิบายข้างต้น เป็นที่ชัดเจนว่า Declarative Net Request ไม่ใช่ฟังก์ชันการทำงานแบบ 1:1 สำหรับการบล็อก ความสามารถของ Web Request API และนักพัฒนาส่วนขยายจะต้องลำบากใจเมื่อการทำงานหนักของพวกเขาจะพิการ การเปลี่ยนแปลงดังกล่าว แต่เหตุผลของ Google ก็มีน้ำหนักเช่นกัน - คำขอเว็บมีพลังมากเกินไป และพลังของมันก็ต้องเป็นเช่นนั้น ลดทอนลงเพื่อผลประโยชน์ที่มากขึ้นของชุมชนผู้ใช้ (ซึ่งประกอบด้วยผู้ใช้โดยเฉลี่ยพร้อมด้วย ผู้ที่ชื่นชอบ)

การย้ายไปสู่ ​​Declarative Net Request อาจเป็นการย้าย PR เชิงบวกเช่นกัน เพราะ Google กำลังเพิ่ม API ตัวบล็อกเนื้อหาในตัวลงใน Chrome! แต่เนื่องจาก API ใหม่มาพร้อมกับข้อจำกัดอันหนักหน่วงของตัวเอง ชุมชนจึงเห็นอย่างถูกต้องว่านี่เป็นการหักปีกของพวกเขา ในโลกอุดมคติ Google ควรสำรวจการทำงานของตัวบล็อกโฆษณาเช่น uBlock Origin ก่อนที่จะเผยแพร่ API ใหม่ ในขณะนี้ API ใหม่สามารถใช้การผ่อนคลายเพิ่มเติมเกี่ยวกับขีดจำกัดกฎเพื่อรองรับสถานการณ์ที่ผู้ใช้ต้องการใช้ส่วนขยายที่มีตัวกรองจำนวนมากสองตัว

ตาม การลงทะเบียนโครงสร้างแรกที่มีการเปลี่ยนแปลง Manifest V3 จะพร้อมใช้งานตั้งแต่เดือนกรกฎาคม 2019 เป็นต้นไป เราหวังว่า Google จะตอบรับความคิดเห็นที่ได้รับจากชุมชนนักพัฒนาส่วนขยายด้วยบิวด์เหล่านี้


ขอขอบคุณเป็นพิเศษสำหรับ Mishaal Rahman บรรณาธิการบริหารของ XDA สำหรับข้อมูลและความช่วยเหลือของเขา!

แก้ไข: บทความบรรจุการทำงานของ Adblock Plus อย่างไม่ถูกต้องกับ Declarative Net Request API บทความนี้ได้รับการแก้ไขตามนั้น Adblock Plus จะได้รับผลกระทบจากการลบความสามารถในการบล็อกของ Web Request API