ฉันจะหาคำอธิบายทางเทคนิคของ "โหมดคีออสก์" ของ Chromium ได้จากที่ใด


3

ฉันพยายามประเมินว่า "โหมดคีออสก์" ของ Chromium ที่เปิดใช้งานผ่านอาร์กิวเมนต์บรรทัดคำสั่งเหมาะสำหรับวัตถุประสงค์ของฉันหรือไม่

ฉันจะหาคำอธิบายทางเทคนิคที่ถูกต้องเกี่ยวกับผลกระทบของ --kiosk ข้อโต้แย้ง?

สิ่งเหล่านี้จะเป็นประโยชน์:

  • ลิงก์ไปยังส่วนของโค้ดที่แสดงความคิดเห็นในซอร์สของ Chromium
  • ลิงก์ไปยังหน้า wiki อย่างเป็นทางการหรือโพสต์บล็อกอย่างเป็นทางการ
  • ลิงก์ไปยังปัญหาในตัวติดตามปัญหาของ Chromium

ขอบคุณ

คำตอบ:


3

วิกิพีเดีย

Chrome มีแนวคิดที่แตกต่างกันสองประการซึ่งทั้งสองอย่างใช้ชื่อ โหมดคีออสก์ .

  1. เมื่อใช้ Chrome เป็นเว็บเบราว์เซอร์ดั้งเดิมบนเดสก์ท็อประบบปฏิบัติการ (เช่น Windows, Mac OS X, Linux) อาร์กิวเมนต์บรรทัดคำสั่ง --kiosk อาจถูกส่งผ่านทำให้เว็บเบราว์เซอร์ทำงานในสิ่งที่เรียกว่า โหมดคีออสก์ .
  2. แอพ Chrome อาจประกาศว่าตัวเองเป็น แอปคีออสก์ และอุปกรณ์ ChromeOS อาจได้รับการกำหนดค่าให้เรียกใช้แอปนั้น โหมดคีออสก์ .

แนวคิดทั้งสองนี้ไม่เกี่ยวข้องกันอย่างสมบูรณ์!

เพื่อหลีกเลี่ยงความสับสนฉันจะอ้างถึงพวกเขาตามลำดับดังนี้:

  1. โหมดคีออสก์เดสก์ทอป และ
  2. โหมดคีออสก์ ChromeOS .

คำถามนี้ถามถึงคำอธิบายทางเทคนิคของ โหมดคีออสก์เดสก์ทอป .


โหมดคีออสก์ KOSOS

โปรดจำไว้ว่ากลยุทธ์ของ Google มีไว้สำหรับ Chrome ในการเป็นกลไกในการส่งแอป

นี่เป็นกลยุทธ์ที่ลึกกว่าเพียงแค่ "สร้างเว็บเบราว์เซอร์ที่ดีกว่า" และแจ้งการตัดสินใจออกแบบใน Chrome

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

โหมดคีออสก์ ChromeOS เป็นคุณสมบัติที่สนับสนุนอย่างเป็นทางการและสอดคล้องกับกลยุทธ์ที่กว้างขึ้นของ Google ในพื้นที่

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

วิกฤต: คุณสามารถให้เหตุผลกับมันและมีความคาดหวังว่ามันจะไม่ทำลายหรือหายไปในรุ่นถัดไปทันที


โหมดคีออสก์เดสก์ทอป

แม้จะมีลักษณะที่ปรากฏนี้เป็น ไม่ คุณสมบัติที่สนับสนุนอย่างเป็นทางการ

เหตุผลที่ไม่มีข้อมูลสามารถพบได้ทั่วไปคือ ไม่มีข้อมูลดังกล่าว .

ฟีเจอร์นี้ได้รับการยอมรับว่าเป็นแพทช์ในช่วงปลายปี 2009 ( ดู # 23145 ) เพื่อเลียนแบบคุณลักษณะที่มีอยู่ใน Internet Explorer

ฉันได้ดูผ่านซอร์สโค้ดและพบว่าขณะนี้มันทำ (อย่างน้อย) สิ่งเหล่านี้:

  • บังคับให้เต็มหน้าจอ (และระงับ 'ฟอง' ของการแจ้งเตือน)
  • ปิดการใช้งานเครื่องมือสำหรับนักพัฒนา
  • ปิดใช้งานเมนูบริบท
  • ไม่แสดงคำขอการอนุญาตพิเศษ (เช่นที่ตั้ง)

อย่างไรก็ตามมันยัง:

  • ไม่ระงับการนำทาง (ย้อนกลับ / ไปข้างหน้า) ผ่านทางแป้นพิมพ์ลัด
  • ไม่ระงับการกระทำของคลิปบอร์ดผ่านแป้นพิมพ์ลัด
  • ไม่ระงับการพิมพ์
  • ไม่ระงับการซูม
  • เป็นต้น

มีพื้น ไม่มีคำจำกัดความ ของอย่างไร โหมดคีออสก์เดสก์ทอป ควรทำงาน (เช่นไม่มีการวิเคราะห์ความต้องการอย่างเป็นทางการ) มันเป็นเพียงแค่พวงของ UI แฮ็กที่วางอยู่ใน codebase ที่มีความเป็นเจ้าของเพียงเล็กน้อย

ครอบคลุมการทดสอบเท่านั้น (ซึ่งรันบน Windows เท่านั้น) คือ:

IN_PROC_BROWSER_TEST_F(KioskModeTest, MAYBE_EnableKioskModeTest) {
  // Check if browser is in fullscreen mode.
  ASSERT_TRUE(browser()->window()->IsFullscreen());
  ASSERT_FALSE(browser()->window()->IsFullscreenBubbleVisible());
}

จึงไม่แปลกใจเลยที่จะมีการถดถอยจำนวนมาก (เช่น # 470265 , # 552778 ) ระหว่างเวอร์ชัน

ไม่มีข้อกำหนดและไม่มีการครอบคลุมการทดสอบสิ่งต่าง ๆ สามารถผิดพลาดได้ทุกที่ตามขอบระหว่างเบราว์เซอร์และระบบปฏิบัติการและขอบเขตนั้นใหญ่มาก

วิธีการป้อนข้อมูล (แป้นพิมพ์บนหน้าจอเป็นต้น) น่าสนใจเป็นพิเศษสำหรับซุ้ม แต่มีการถดถอย (เช่น # 491516 ) ระหว่างเวอร์ชัน

การพิมพ์เป็นพื้นที่ที่ไม่ดีโดยเฉพาะ: มีอาร์กิวเมนต์บรรทัดคำสั่งเพิ่มเติม (เช่น --kiosk-printing, --disable-print-preview ) ซึ่งเพิ่มความซับซ้อนให้มากขึ้นและตัวติดตามบั๊กถูกทิ้งร้างด้วยการถดถอยในพื้นที่นี้

ไม่มีความพยายามที่จะรวมเข้ากับ kiosk API ของ Mac OS X ซึ่งจะป้องกันการเข้าถึงท่าเรือ ฯลฯ

ที่น่าสนใจคุณไม่สามารถรับประกันได้ว่าคุณจะอยู่ใน โหมดคีออสก์เดสก์ทอป เนื่องจากอาร์กิวเมนต์บรรทัดคำสั่งสามารถล้มเหลวอย่างเงียบ ๆ ( # 566496 )

สิ่งที่เป็นปัญหามากที่สุดคือรหัสไม่มีเจ้าของ เมื่อพิจารณาถึงความคิดเห็นของตัวติดตามปัญหาผู้พัฒนาส่วนใหญ่ดูเหมือนไม่รู้ โหมดคีออสก์เดสก์ทอป แม้จะมีอยู่! มันมักจะสับสนกับ โหมดคีออสก์ ChromeOS มีข้อบกพร่องที่ติดป้ายกำกับผิด มีการอธิบายอย่างหลากหลายว่า "ไม่รองรับ" และมีข้อเสนอแนะ ( # 470265 ) ว่าควรลบอย่างง่ายดาย Chromium dev 'เท่านั้นที่แสดงความรักที่คลุมเครือสำหรับสถานที่นั้นคือ pkasting@chromium.org .

ฉันยังไม่ได้เริ่มค้นหาพื้นที่ที่น่าสนใจเช่น

  • มันโต้ตอบกับ Safe Browsing ได้อย่างไร
  • มันทำงานอย่างไรกับส่วนขยายของ Chrome?
  • เกิดอะไรขึ้นถ้าผู้ใช้เยี่ยมชมเพจที่มีปัญหาใบรับรอง
  • มันส่งผลกระทบต่อกลไกการอัพเดตซอฟต์แวร์อย่างไร?

ข้อสรุป

ทำ ไม่ ใช้ --kiosk ธง ( โหมดคีออสก์เดสก์ทอป ) ในระบบของคุณ

  • คุณไม่สามารถให้เหตุผลเกี่ยวกับความปลอดภัยของระบบดังกล่าวได้
  • อัปเดตของ Chrome มีแนวโน้มที่จะทำให้ระบบของคุณหยุด

หากคุณต้องการใช้ระบบนิเวศ Chrome เพื่อสร้างระบบคีออสก์การใช้ ChromeOS เป็นตัวเลือกที่ดีกว่า


1
บางคนควรบอกว่านี่เป็นคำตอบที่ยอดเยี่ยม ... ตกลงฉันจะทำ :) ข้อมูลที่ดีที่สุดที่ฉันได้เจอในหัวข้อ ขอบคุณมาก!
hashchange

1

รหัสที่มาของ Chromium คือ " จัดทำดัชนีและพร้อมใช้งานบนเว็บ "ด้วยเหตุผลนี้

การใช้ ค้นหารหัส คุณสามารถค้นหา kiosk กับ โครงการทั้งหมด .

ตัดตอนมาจากหนึ่งใน การค้นหาครั้งแรก ฉันใช้สิ่งที่คุณสนใจ

  // In kiosk mode, we want to always be fullscreen, so switch to that now.
  if (base::CommandLine::ForCurrentProcess()->HasSwitch(switches::kKioskMode) ||
      base::CommandLine::ForCurrentProcess()->HasSwitch(
          switches::kStartFullscreen)) {
    // It's possible for there to be no browser window, e.g. if someone
    // specified a non-sensical combination of options
    // ("--kiosk --no_startup_window"); do nothing in that case.
    Browser* browser = BrowserList::GetInstance()->GetLastActive();
    if (browser)
      chrome::ToggleFullscreenMode(browser);
  }

1
อันที่จริงฉันกำลังดึงต้นไม้ต้นกำเนิดทั้งหมดเพื่อทำการค้นหาในท้องถิ่น อย่างไรก็ตามหากฟังก์ชันการทำงานของโหมดคีออสก์กระจายอย่างกว้างขวางไปทั่วแหล่งที่มามันจะเจ็บปวดในการวิเคราะห์และคำว่า 'คีออสก์' นั้นเต็มไปด้วยแนวคิดของ 'แอปคีออส' ใน ChromeOS อะไรคือสิ่งที่แปลกประหลาดในบางครั้งบางคนต้องกำหนดความต้องการทางธุรกิจสำหรับโหมดคีออสก์ - สิ่งเหล่านี้อยู่ที่ไหน เกณฑ์การยอมรับสำหรับการยืนยัน "Chromium ไม่ใช้โหมดคีออสก์อย่างถูกต้อง" อยู่ที่ไหน ความคิดเห็นตั๋วชุดทดสอบหน้าวิกิต้องมีคำจำกัดความของคุณลักษณะ
wool.in.silver
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.