Isolated Web App (IWA) มีสภาพแวดล้อมรันไทม์ที่แยกเวอร์ชัน ปลอดภัย และมีความน่าเชื่อถือสูงบนแพลตฟอร์มเว็บ ในสภาพแวดล้อมการใช้งานจริง โดยเฉพาะอย่างยิ่งภายในองค์กรที่มีการจัดการ ผู้ดูแลระบบและนักพัฒนาแอปจำเป็นต้องควบคุมการติดตั้งใช้งานซอฟต์แวร์อย่างละเอียด
Chrome จึงมีฟีเจอร์การจัดการเวอร์ชันที่ครอบคลุม สำหรับ IWA ซึ่งรวมถึงช่องทางการอัปเดต การปักหมุดเวอร์ชัน และ การดาวน์เกรดเวอร์ชัน เพื่อตอบสนองความต้องการเหล่านี้ ฟีเจอร์เหล่านี้ช่วยให้คาดการณ์การติดตั้งใช้งานได้ และมีระบบควบคุมการกู้คืนอย่างรวดเร็วในฐานผู้ใช้
ความพร้อมใช้งาน
ลักษณะการทำงานของการจัดการเวอร์ชันจะขึ้นอยู่กับว่าผู้ดูแลระบบจัดการ IWA หรือผู้ใช้ติดตั้ง IWA โดยตรง
- IWA ที่มีการจัดการ: ฟีเจอร์การดูแลระบบ (รวมถึงการปักหมุดและการดาวน์เกรดตามนโยบาย) พร้อมใช้งานตั้งแต่ Chrome 133 เป็นต้นไป
- IWA ที่ไม่มีการจัดการ (ผู้ใช้ติดตั้ง): ฟีเจอร์ที่ผู้ใช้ใช้งานได้ (เช่น การเลือกช่องทางด้วยตนเอง) พร้อมใช้งานตั้งแต่ Chrome 150 เป็นต้นไป
ความเข้ากันได้ของประเภทเซสชัน
ฟังก์ชันการจัดการเวอร์ชันทั้งหมด รวมถึงช่องทางการอัปเดตและการปักหมุดเวอร์ชัน เข้ากันได้กับเซสชันทุกประเภทของ ChromeOS อย่างสมบูรณ์ ซึ่งรวมถึงรายการต่อไปนี้
- เซสชันผู้ใช้ ที่มีการจัดการมาตรฐาน
- เซสชันผู้เยี่ยมชมที่มีการจัดการ (MGS)
- สภาพแวดล้อมโหมดคีออสก์ เฉพาะ
ช่องทางการอัปเดต
การใช้ช่องทางการอัปเดตช่วยให้นักพัฒนาแอปแบ่งส่วนบิลด์แอปพลิเคชันที่เฉพาะเจาะจงสำหรับกลุ่มเป้าหมายการติดตั้งใช้งานและการทดสอบที่แตกต่างกันได้ หากต้องการกำหนดค่าช่องทาง ให้เพิ่มฟิลด์อาร์เรย์ `channels` ที่ไม่บังคับในรายการเวอร์ชันแต่ละรายการภายในไฟล์ Manifest การอัปเดตแอปพลิเคชัน ชื่อช่องทางเหล่านี้ไม่จำกัดเฉพาะคีย์เวิร์ดแพลตฟอร์มที่กำหนด (เช่น canary หรือ stable) แต่เป็นตัวระบุที่นักพัฒนาแอปกำหนดเองซึ่งต้องจัดรูปแบบเป็นสตริงตัวอักษรและตัวเลข ASCII ตัวพิมพ์เล็ก (ซึ่งอาจมีขีดกลางหรือขีดล่าง แต่ไม่มีช่องว่าง)
หากรายการเวอร์ชันละเว้นฟิลด์ `channels` ทั้งหมด Chrome จะกำหนดความพร้อมใช้งานเป็นช่องทาง "เริ่มต้น" โดยปริยาย ท้ายที่สุด ชื่อช่องทางที่กำหนดไว้ในนโยบายการดูแลระบบต้องตรงกับสตริงที่กำหนดไว้ในไฟล์ Manifest ทุกประการ ข้อผิดพลาดในการพิมพ์หรือการกำหนดค่าที่ไม่ตรงกันจะส่งผลให้ไม่มีการระบุเวอร์ชันที่มีสิทธิ์ ซึ่งจะหยุดการอัปเดตสำหรับไคลเอ็นต์เหล่านั้น
การกำหนดค่าไฟล์ Manifest
หากต้องการกำหนดค่าช่องทาง ให้เพิ่มอาร์เรย์ channels ที่ไม่บังคับในรายการเวอร์ชันแต่ละรายการใน
ไฟล์
Manifest ของเว็บแอป
สิ่งที่คุณควรพิจารณามีดังนี้
- การแมปช่องทาง: หากรายการเวอร์ชันกำหนดอาร์เรย์
channelsเวอร์ชันนั้นจะมีสิทธิ์ติดตั้งในช่องทางที่ระบุเท่านั้น - การสำรองข้อมูลเริ่มต้น: หากรายการเวอร์ชันละเว้นฟิลด์
channelsทั้งหมด Chrome จะถือว่าเวอร์ชันนั้นเป็นของช่องทางdefaultเท่านั้น - การจับคู่สตริงที่ตรงกันทุกประการ: ชื่อช่องทางที่ระบุในการกำหนดค่านโยบายฝั่งไคลเอ็นต์ต้องตรงกับสตริงที่กำหนดไว้ในไฟล์ Manifest การอัปเดตทุกประการ (คำนึงถึงตัวพิมพ์เล็กและตัวพิมพ์ใหญ่) หากไม่มีเวอร์ชันใดตรงกับชื่อช่องทางเป้าหมาย แอปจะค้นหาการอัปเดตที่มีสิทธิ์ไม่พบ
ตัวอย่างไฟล์ Manifest การอัปเดต
ตัวอย่างต่อไปนี้แสดงไฟล์ Manifest การอัปเดตที่รองรับช่องทางการเผยแพร่หลายช่องทาง
{
"versions": [
{
"version": "0.1.0",
"src": "https://github.com/chromeos/iwa-sink/releases/download/v0.1.0/iwa-sink.swbn",
"channels": ["delta"]
},
{
"version": "0.2.0",
"src": "https://github.com/chromeos/iwa-sink/releases/download/v0.2.0/iwa-sink.swbn",
"channels": ["delta", "default"]
},
{
"version": "0.3.0",
"src": "https://github.com/chromeos/iwa-sink/releases/download/v0.3.0/iwa-sink.swbn",
"channels": ["beta", "delta"]
},
{
"version": "0.4.0",
"src": "https://github.com/chromeos/iwa-sink/releases/download/v0.4.0/iwa-sink.swbn"
}
]
}
เวอร์ชันต่อไปนี้พร้อมใช้งานต่อช่องทางเป้าหมายตามไฟล์ Manifest นี้
- default:
0.2.0,0.4.0(ซึ่งไม่มีช่องทางที่ชัดเจนและใช้ช่องทางเริ่มต้นโดยค่าเริ่มต้น) - delta:
0.1.0,0.2.0,0.3.0 - beta:
0.3.0
กลไกการอัปเดต IWA รองรับการกำหนดเป้าหมายช่องทางการเผยแพร่ที่เฉพาะเจาะจงโดยการค้นหาฟิลด์ `channels` ภายในไฟล์ Manifest การอัปเดตของแอป
การปักหมุดเวอร์ชัน
ในสภาพแวดล้อมขององค์กรที่มีการปฏิบัติตามข้อกำหนดสูงหรือมีเสถียรภาพสูง ผู้ดูแลระบบต้องตรวจสอบว่าอุปกรณ์ใช้ซอฟต์แวร์ที่สำคัญต่อธุรกิจในเวอร์ชันที่ถูกต้อง การปักหมุดเวอร์ชันช่วยให้ผู้ดูแลระบบล็อก IWA ไว้กับเวอร์ชันที่เฉพาะเจาะจงได้ ซึ่งจะหยุดการอัปเดตเบื้องหลังทั้งหมดหลังจากนั้น วิธีนี้ช่วยให้องค์กรมีวิธีที่เชื่อถือได้สูงในการรักษาการกำหนดค่าที่เสถียรและปฏิบัติตามกฎระเบียบภายในหรือกฎระเบียบของอุตสาหกรรมที่เข้มงวด
หากต้องการตรึง Isolated Web App (IWA) ไว้กับบิลด์การเผยแพร่ที่เฉพาะเจาะจง ผู้ดูแลระบบขององค์กร
สามารถกำหนดค่าพร็อพเพอร์ตี้ pinned_version ภายใน
IsolatedWebAppInstallForceList
นโยบายได้ ความสามารถนี้ได้รับการจัดการผ่านการควบคุม UI แบบโต้ตอบ
ใน คอนโซลผู้ดูแลระบบของ Google เป็นหลักในแผงรายละเอียดของแอปพลิเคชันตามเวิร์กโฟลว์การติดตั้ง IWA มาตรฐาน แม้ว่าผู้ดูแลระบบจะยังคงมีความยืดหยุ่นในการติดตั้งใช้งานค่าของนโยบายเหล่านี้
โดยตรงโดยใช้การกำหนดค่า JSON แบบดิบ เมื่อผู้ดูแลระบบกำหนดเป้าหมายสตริงเวอร์ชันที่ถูกต้องได้สำเร็จ Chrome จะดึงแพ็กเกจที่ชัดเจนนั้นและบล็อกการอัปเดตอัตโนมัติทั้งหมดหลังจากนั้น
ลักษณะการทำงานและข้อจำกัดพิเศษ
- การกลับมาอัปเดต (การยกเลิกการปักหมุด): หากต้องการกู้คืนการอัปเดตอัตโนมัติ ให้นำพร็อพเพอร์ตี้
pinned_versionออกหรือเปลี่ยนค่าเป็นเวอร์ชันเป้าหมายที่ใหม่กว่า - ไม่มีการดาวน์เกรดโดยค่าเริ่มต้น: การตั้งค่า
pinned_versionเป็นเวอร์ชันที่ต่ำกว่าเวอร์ชันที่ติดตั้งอยู่ในปัจจุบันจะ ไม่ ทำให้เกิดการย้อนกลับ เว้นแต่จะเปิดใช้allow_downgradesอย่างชัดเจน - เป้าหมายการปักหมุดที่ไม่พร้อมใช้งาน: หาก
pinned_versionที่กำหนดค่าไว้ไม่มีอยู่ในช่องทางการอัปเดตที่กำหนด หรือเก่ากว่าเวอร์ชันที่ติดตั้ง (โดยปิดใช้การดาวน์เกรด) Chrome จะเก็บเวอร์ชันที่ติดตั้งอยู่ในปัจจุบันและบล็อกการอัปเดตเพิ่มเติม - การติดตั้งใช้งานใหม่: หากยังไม่ได้ติดตั้ง IWA ในอุปกรณ์ที่มีการจัดการ และไม่สามารถดึงข้อมูล pinned_version ที่ระบุหรือไม่มีอยู่ในไฟล์ Manifest การอัปเดต ระบบจะติดตั้ง IWA ไม่สำเร็จ
การดาวน์เกรดเวอร์ชัน
หากการอัปเดตที่ติดตั้งใช้งานใหม่ทำให้เกิดข้อบกพร่องหรือช่องโหว่ที่สำคัญ ผู้ดูแลระบบอาจต้องย้อนกลับอุปกรณ์ไปเป็นสถานะที่เสถียรเวอร์ชันก่อนหน้า Chrome รองรับการดาวน์เกรด IWA ที่มีการจัดการซึ่งติดตั้งไว้แล้วเป็นเวอร์ชันที่ต่ำกว่า ซึ่งเป็นความสามารถที่ก่อนหน้านี้ไม่พร้อมใช้งานในแพลตฟอร์มเมื่ออนุญาตเฉพาะการอัปเดตเวอร์ชันที่ใหม่กว่าเท่านั้น
การดาวน์เกรดจะทำได้ก็ต่อเมื่อเป็นไปตามเงื่อนไขนโยบายต่อไปนี้ทั้ง 2 ข้อ
- ตั้งค่า
pinned_versionเป็นเวอร์ชันเก่าที่ถูกต้อง - ตั้งค่า
allow_downgradesเป็น "จริง" อย่างชัดเจน
วิธีการทำงานของการดาวน์เกรด
- กลไกการทริกเกอร์: ระบบจะประมวลผลการย้อนกลับในระหว่างรอบการตรวจสอบการอัปเดตปกติ (ซึ่งทำงานทุกๆ 4-6 ชั่วโมง)
- เบื้องหลัง: Chrome จะติดตั้ง IWA ใหม่อย่างสมบูรณ์โดยใช้ Web Bundle (.swbn) เวอร์ชันเก่าที่ระบุไว้ในไฟล์ Manifest การอัปเดต
ตรรกะการเปลี่ยนผ่านช่องทาง
เมื่อเปลี่ยนช่องทางเป้าหมายของแอปด้วยนโยบาย กลไกการอัปเดตจะทำงานตามลักษณะการทำงานที่เฉพาะเจาะจง
สถานการณ์ที่ 1: การเปลี่ยนไปใช้ช่องทางที่มีเวอร์ชันก่อนหน้า
- หากอนุญาตการดาวน์เกรด: หาก pinned_version ตรงกับเวอร์ชันเก่าในช่องทางเป้าหมายและ
allow_downgradesเป็น "จริง" ระบบจะทำการย้อนกลับ (และล้างข้อมูลผู้ใช้ในเครื่อง) - หากไม่อนุญาตการดาวน์เกรด: จะไม่มีการดาวน์เกรด อุปกรณ์จะยังคงใช้เวอร์ชันที่สูงกว่าที่ติดตั้งอยู่ในปัจจุบันและจะอัปเดตก็ต่อเมื่อมีเวอร์ชันใหม่กว่าพร้อมใช้งานในช่องทางที่เลือกใหม่
สถานการณ์ที่ 2: การเปลี่ยนไปใช้ช่องทางที่มีเวอร์ชันเดียวกัน
- ไม่มีการเปลี่ยนแปลง: หากช่องทางที่เลือกใหม่ชี้ไปยังหมายเลขเวอร์ชันที่เท่ากับเวอร์ชันที่ติดตั้งอยู่ในปัจจุบัน Chrome จะไม่แก้ไขแพ็กเกจที่ติดตั้ง
- หลักการระบุตัวตนแบบไบต์ต่อไบต์: นักพัฒนาแอปต้องรับประกันว่าหมายเลขเวอร์ชันเดียวกันในช่องทางต่างๆ จะมีลายเซ็นโค้ดที่ตรงกันแบบไบต์ต่อไบต์ การติดตั้งใช้งานโค้ดเบสที่แตกต่างกันภายใต้สตริงเวอร์ชันเดียวกันในช่องทางต่างๆ อาจส่งผลให้แอปพลิเคชันอยู่ในสถานะที่ไม่คาดคิดและไม่แน่นอน
การกำหนดค่านโยบายการดูแลระบบ
ระบบจะบังคับใช้การควบคุมเวอร์ชันขององค์กรด้วยแพลตฟอร์มคอนโซลผู้ดูแลระบบของ Google แบบรวมศูนย์โดยใช้สคีมานโยบาย
IsolatedWebAppInstallForceList
คุณสามารถจัดการการตั้งค่าเหล่านี้ได้โดยตรงผ่านการควบคุม UI ในคอนโซลผู้ดูแลระบบ หรือติดตั้งใช้งานโดยใช้การกำหนดค่านโยบาย JSON แบบดิบ
ตัวอย่างการกำหนดค่านโยบายการดูแลระบบต่อไปนี้แสดงช่องทางการอัปเดต การปักหมุดเวอร์ชัน และการดาวน์เกรด
การแสดงค่าของนโยบาย
[
{
"update_manifest_url": "https://awesome-kitchen-sink.glitch.me/update.json",
"web_bundle_id": "aiv4bxauvcu3zvbu6r5yynoh4atkzqqaoeof5mwz54b4zfywcrjuoaacai",
"channel": "beta",
"pinned_version": "0.7.0",
"allow_downgrades": true
}
]
คำอธิบายพารามิเตอร์ของสคีมา
channel(สตริง ไม่บังคับ): สั่งให้ Chrome ประเมินเฉพาะ เวอร์ชันที่กำหนดให้กับช่องทางนี้ในไฟล์ Manifest การอัปเดต หากละเว้น Chrome จะประเมินช่องทาง "เริ่มต้น"pinned_version(สตริง ไม่บังคับ): ล็อกอุปกรณ์ไว้กับ สตริงเวอร์ชันที่ระบุอย่างชัดเจน ระบบจะบล็อกการอัปเดตเบื้องหลังอัตโนมัติหลังจากนั้นallow_downgrades(บูลีน ไม่บังคับ): เปิดใช้ความสามารถในการย้อนกลับ หากเป็น "จริง" และจับคู่กับpinned_versionเก่าที่ถูกต้อง Chrome จะทริกเกอร์การติดตั้งใหม่แบบดาวน์เกรด คำเตือน: การตั้งค่าพารามิเตอร์นี้เป็น "จริง" จะบล็อกการอัปเดตเวอร์ชันที่ใหม่กว่ามาตรฐานทั้งหมด แม้ว่าจะละเว้นฟิลด์pinned_versionก็ตาม
IWA ที่ไม่มีการจัดการ (ผู้ใช้ติดตั้ง) (จาก 150)
สำหรับ Isolated Web App ที่ไม่มีการจัดการซึ่งผู้ใช้ติดตั้งเอง การกำหนดเวอร์ชันจะทำงานโดยมีการโต้ตอบจากผู้ใช้ด้วยตนเอง
แพ็กเกจการติดตั้ง ──► ผู้ใช้เลือกช่องทาง ──► การตรวจสอบอัตโนมัติในช่องทางที่เลือก
ข้อกำหนดเบื้องต้นของไฟล์ Manifest สำหรับการอัปเดตอัตโนมัติ
IWA ที่ผู้ใช้ติดตั้งต้องมีฟิลด์ update_manifest_url ที่ถูกต้องในไฟล์ Manifest ของเว็บแอปในเครื่อง (ข้อมูลเมตาที่แพ็กเกจไว้ภายในแพ็กเกจที่ /.well-known/manifest.webmanifest) จึงจะ ตรวจสอบและรับการอัปเดตเป็นระยะอัตโนมัติในเบื้องหลังได้
หากละเว้น URL นี้จากไฟล์ Manifest ในเครื่องของแอปพลิเคชัน กลไกการอัปเดตที่ไม่มีการจัดการจะไม่ทำการตรวจสอบเบื้องหลัง และแอปพลิเคชันจะยังคงตรึงอยู่ที่เวอร์ชันการติดตั้งเริ่มต้นอย่างถาวร
การเลือกช่องทางด้วยตนเอง
ระหว่างการติดตั้ง IWA ที่ไม่มีการจัดการครั้งแรก เบราว์เซอร์จะตรวจสอบไฟล์ Manifest การอัปเดตและแสดงตัวเลือกช่องทางที่พร้อมใช้งาน (เช่น "เสถียร" "เบต้า") ให้ผู้ใช้โดยตรงหากนักพัฒนาแอปกำหนดค่าช่องทางไว้หลายช่องทาง
กฎวงจรที่สำคัญ
- แหล่งที่มาของการติดตั้งครั้งแรก: ไม่ว่าผู้ใช้จะเลือกช่องทางใดในการติดตั้ง การติดตั้งเริ่มต้นจะติดตั้งใช้งานไฟล์ที่แพ็กเกจไว้ภายในแพ็กเกจการติดตั้งที่ให้มาเสมอ
- การอัปเดตหลังจากนั้น: เมื่อติดตั้งแล้ว ระบบจะค้นหาการอัปเดตในอนาคตจากช่องทางที่เลือกเท่านั้น แอปจะอัปเดตก็ต่อเมื่อมีการเผยแพร่เวอร์ชันที่ สูงกว่า เวอร์ชันที่ติดตั้งไปยังช่องทางเป้าหมายนั้น
- การเปลี่ยนช่องทาง: หากต้องการเปลี่ยนไปใช้ช่องทางการอัปเดตอื่นหลังจากติดตั้งแล้ว ผู้ใช้ต้องถอนการติดตั้ง IWA และติดตั้งใหม่ โดยเลือกช่องทางที่ต้องการในขั้นตอนการติดตั้ง
วิธีทดสอบการติดตั้งใช้งานที่มีการจัดการ
สำหรับผู้ดูแลระบบที่จัดการอุปกรณ์ผ่านคอนโซลผู้ดูแลระบบของ Chrome Enterprise หรือกำหนดค่านโยบายโดยตรง
- ไปที่แผงรายละเอียดแอป ในการตั้งค่าองค์กร
- ใช้พร็อพเพอร์ตี้การกำหนดค่าเพื่อทดสอบการปักหมุดและเป้าหมายช่องทาง เนื่องจากการควบคุมเหล่านี้เข้ากันได้กับเซสชันผู้ใช้มาตรฐาน เซสชันผู้เยี่ยมชมที่มีการจัดการ (MGS) และคีออสก์อย่างสมบูรณ์ คุณจึงตรวจสอบลักษณะการทำงานในสภาพแวดล้อมการติดตั้งใช้งานเป้าหมายทั้งหมดได้
- หากต้องการตรวจสอบการอัปเดตในเครื่อง ให้ไปที่
chrome://web-app-internalsในไคลเอ็นต์ทดสอบเพื่อบังคับให้ตรวจสอบการอัปเดตด้วยตนเองและวิเคราะห์แพ็กเกจไฟล์ Manifest ที่เข้ามา
บทสรุป
สถาปัตยกรรมด้านความปลอดภัยของ Isolated Web App ได้รับการออกแบบมาเพื่อเพิ่มขีดความสามารถให้นักพัฒนาแอปในขณะที่ยังคงรักษาความสามารถในการคาดการณ์และการควบคุมลักษณะการทำงานของวงจรแอปพลิเคชันอย่างเข้มงวด การใช้ประโยชน์จากฟีเจอร์การจัดการเวอร์ชันของ Chrome ช่วยให้นักพัฒนาแอปและผู้ดูแลระบบไอทีสร้างไปป์ไลน์การติดตั้งใช้งานที่มีประสิทธิภาพซึ่งสอดคล้องกับมาตรฐานการปฏิบัติตามข้อกำหนดและเป้าหมายการดำเนินงานที่เข้มงวดได้
เมื่อออกแบบและจัดการกลยุทธ์การอัปเดตของแอปพลิเคชัน โปรดคำนึงถึงหลักการสำคัญต่อไปนี้
- ใช้ช่องทางแบบก้าวหน้า: ช่องทางการอัปเดต (เช่น
beta,devหรือวงแหวนที่กำหนดเอง) ช่วยให้คุณรวบรวมข้อมูลการวัดและส่งข้อมูลทางไกลและคำติชมได้อย่างก้าวหน้า วิธีนี้ช่วยให้การอัปเดตที่สำคัญได้รับการยืนยันอย่างเข้มงวดก่อนที่จะเผยแพร่ให้ผู้ใช้ทั่วไปในช่องทางเริ่มต้น - ปักหมุดเพื่อความเสถียร: ในสภาพแวดล้อมขององค์กรที่มีโครงสร้างสูงหรือมีการปฏิบัติตามข้อกำหนดเป็นหลัก ให้ล็อกปลายทางที่สำคัญไว้กับ pinned_version ที่ถูกต้องและได้รับการยืนยันแล้วเพื่อป้องกันการดำเนินงานจากการหยุดชะงักหรือการหยุดชะงักของเวิร์กโฟลว์ที่ไม่คาดคิด
- เก็บการดาวน์เกรดไว้สำหรับกรณีฉุกเฉิน: ตระหนักว่าการดาวน์เกรดเวอร์ชันเป็นวาล์วนิรภัยที่ทรงประสิทธิภาพและแก้ไขปัญหาได้ ซึ่งก่อนหน้านี้ไม่สามารถทำได้ อย่างไรก็ตาม เนื่องจากระบบจะทริกเกอร์การติดตั้งใหม่ทั้งหมดและล้างพื้นที่เก็บข้อมูลไคลเอ็นต์ในเครื่องทั้งหมด (IndexedDB, LocalStorage, คุกกี้) การดาวน์เกรดจึงควรเก็บไว้ใช้สำหรับการแก้ไขปัญหาด้านความปลอดภัยที่สำคัญเท่านั้น สำหรับการแพตช์ทั่วไป การติดตั้งใช้งานการอัปเดตเวอร์ชันย่อยที่มองไปข้างหน้าเป็นกลยุทธ์ที่เหมาะสมที่สุดเสมอ
- ทำความเข้าใจแฟล็กนโยบาย: โปรดทราบถึงสวิตช์การดูแลระบบ การเปิด
allow_downgradesจะหยุดการอัปเดตเวอร์ชันที่ใหม่กว่าทั้งหมด แม้ว่าจะไม่ได้กำหนดการปักหมุดไว้ก็ตาม - สร้างความสมบูรณ์แบบไบต์ต่อไบต์: ตรวจสอบว่าหมายเลขเวอร์ชันเดียวกันที่ติดตั้งใช้งานในช่องทางต่างๆ แมปกับแพ็กเกจที่ตรงกันแบบไบต์ต่อไบต์เพื่อหลีกเลี่ยงสถานะแอปพลิเคชันที่ไม่แน่นอนเมื่อไคลเอ็นต์เปลี่ยนจากช่องทางหนึ่งไปอีกช่องทางหนึ่ง
การผสานรวมฟีเจอร์เหล่านี้เข้ากับไฟล์ Manifest การอัปเดตและสคีมานโยบายขององค์กรโดยตรงจะช่วยให้คุณมั่นใจได้ถึงขั้นตอนการอัปเดตที่เชื่อถือได้ ตรวจสอบได้ และปลอดภัย ซึ่งรักษาการรับประกันความน่าเชื่อถือสูงของระบบนิเวศ Isolated Web App