อิมเมจระบบทั่วไป (GSI) คือ การใช้Android ที่แท้จริงกับโครงการโอเพนซอร์ส Android (AOSP) ที่ไม่มีการปรับเปลี่ยน ซึ่งเรียกใช้บนอุปกรณ์ Android ได้หลายประเภท
นักพัฒนาแอปสามารถติดตั้งและเรียกใช้ GSI ของ Android เวอร์ชันล่าสุดเพื่อดำเนินการแอป การทดสอบบนอุปกรณ์ Android รุ่นต่างๆ ที่มีอยู่ และใช้ GSI จาก ขั้นตอนการเผยแพร่ระบบปฏิบัติการ Android รวมถึงเวอร์ชันตัวอย่างสำหรับนักพัฒนาซอฟต์แวร์และเวอร์ชันเบต้า กำลังเพิ่ม GSI ในขั้นตอนการยืนยันและการทดสอบจะช่วยให้คุณ ประโยชน์:
- การครอบคลุมการทดสอบที่กว้างขึ้นในชุดอุปกรณ์จริงที่มากขึ้น
- มีเวลามากขึ้นในการแก้ปัญหาความเข้ากันได้ของแอป
- โอกาสเพิ่มเติมในการแก้ปัญหาความเข้ากันได้ใน Android ที่มีการรายงาน โดยนักพัฒนาแอป
โครงการ GSI เปิดอยู่ แหล่งที่มา และช่วยปรับปรุงระบบนิเวศของ Android ด้วยการให้วิธีใหม่ๆ ในการปรับปรุงแอป และคุณภาพของระบบปฏิบัติการ ก่อนที่จะเปิดตัว Android แต่ละรุ่น
![การรองรับ GSI ในอุปกรณ์ต่างๆ](https://developer.android.google.cn/static/topic/generic-system-image/images/gsi-support.png?authuser=8&hl=th)
GSI มีฟังก์ชันการทำงานหลักของระบบที่เหมือนกันสำหรับอุปกรณ์ทุกเครื่อง ติดตั้งใน กล่าวคือ GSI ไม่ได้รวมข้อมูล การกำหนดค่าเอง ด้วยเหตุนี้ คุณจึงอาจพบความแตกต่างด้านพฤติกรรมใน สถานการณ์ต่อไปนี้
- การโต้ตอบที่เกี่ยวข้องกับ UI
- เวิร์กโฟลว์ที่ขอฟีเจอร์ฮาร์ดแวร์ที่ใหม่กว่า
ตรวจสอบการปฏิบัติตามข้อกำหนดของอุปกรณ์
GSI ทำงานได้เฉพาะในอุปกรณ์ที่มีลักษณะดังต่อไปนี้
- ปลดล็อก Bootloader แล้ว
- เป็นไปตามข้อกำหนดเสียงแหลมทั้งหมด
- เปิดตัวด้วย Android 9 (API ระดับ 28) ขึ้นไป อัปเกรดอุปกรณ์เป็น Android 9 จากเวอร์ชันก่อนหน้าอาจรองรับหรือไม่รองรับ GSI
วิธีพิจารณาว่าอุปกรณ์ใช้ GSI ได้หรือไม่และใช้ GSI OS เวอร์ชันใด ควรติดตั้ง ให้ทำดังนี้
ตรวจหาการสนับสนุน Treble โดยการเรียกใช้คำสั่งต่อไปนี้
adb shell getprop ro.treble.enabled
หากการตอบสนองคือ
false
แสดงว่าอุปกรณ์ไม่รองรับ GSI และคุณ ไม่ควรดำเนินการต่อ หากคำตอบคือtrue
ให้ไปยังขั้นตอนถัดไปตรวจสอบการสนับสนุนข้ามเวอร์ชันโดยเรียกใช้คำสั่งต่อไปนี้
adb shell cat /system/etc/ld.config.version_identifier.txt \ | grep -A 20 "\[vendor\]"
ในเอาต์พุต ให้ดูในส่วน
[vendor]
สำหรับnamespace.default.isolated
.หากค่าสำหรับแอตทริบิวต์นั้นเป็น
true
แสดงว่าอุปกรณ์รองรับโดยสมบูรณ์ ชุดเครื่องมือพัฒนาซอฟต์แวร์แบบเนทีฟสำหรับผู้ให้บริการ (VNDK) และสามารถใช้ได้ ระบบปฏิบัติการ (OS) GSI เวอร์ชันที่ใหม่กว่าระบบปฏิบัติการในอุปกรณ์ เวอร์ชัน หากเป็นไปได้ ให้ใช้ระบบปฏิบัติการ GSI เวอร์ชันล่าสุดที่มีอยู่หากค่าสำหรับแอตทริบิวต์คือ
false
แสดงว่าอุปกรณ์ทำงานไม่ครบถ้วน เป็นไปตามข้อกำหนดของ VNDK และอุปกรณ์ใช้ได้เฉพาะ GSI สำหรับระบบปฏิบัติการในอุปกรณ์เดียวกัน เวอร์ชัน เช่น อุปกรณ์ Android 10 (API เวอร์ชัน 29) ที่ไม่ได้ เป็นไปตามข้อกำหนดของ VNDK จะโหลดได้เฉพาะอิมเมจ GSI ของ Android 10 เท่านั้นประเภทสถาปัตยกรรม CPU ของ GSI ต้องตรงกับสถาปัตยกรรม CPU ของอุปกรณ์ ถึง ค้นหาสถาปัตยกรรม CPU ที่เหมาะสมสำหรับอิมเมจ GSI เรียกใช้คำสั่งต่อไปนี้ คำสั่ง:
adb shell getprop ro.product.cpu.abi
ใช้เอาต์พุตนี้เพื่อระบุว่าจะใช้อิมเมจ GSI ใดเมื่อแฟลช อุปกรณ์ เช่น ใน Pixel 5 เอาต์พุตจะระบุว่า CPU สถาปัตยกรรมคือ
arm64-v8a
ดังนั้นคุณจะใช้ GSI ประเภทarm64
ดาวน์โหลด GSI
การรับ GSI ทำได้หลายวิธี ขึ้นอยู่กับความต้องการด้านการพัฒนาของคุณ
- สำหรับ GSI ตัวอย่างและ Android GSI ที่ใช้ GMS ให้ดาวน์โหลดรูปภาพจาก หน้าการเผยแพร่ GSI
สำหรับอิมเมจ GSI ที่สร้างไว้ล่วงหน้าซึ่งไม่มีแอปพลิเคชัน GMS ให้ดาวน์โหลดอิมเมจจาก เว็บไซต์ AOSP CI
หากต้องการสร้าง GSI ของ Android โดยไม่ใช้ GMS ให้ดาวน์โหลดซอร์สโค้ดจาก AOSP และสร้าง GSI ของคุณ
ติดตั้ง GSI
การติดตั้ง GSI จะขึ้นอยู่กับอุปกรณ์ โปรดติดต่อผู้ผลิตอุปกรณ์ของคุณสำหรับ เครื่องมือและกระบวนการที่แน่นอน สำหรับอุปกรณ์ Google Pixel เช่น Pixel 3 และ ใหม่กว่า มีวิธีการติดตั้งหลายวิธี ดังนี้
- รูปภาพ GSI แฟลชด้วยตนเอง: ดูข้อกำหนดสำหรับ GSI แบบแฟลช
- การใช้การอัปเดตระบบแบบไดนามิก (DSU) สำหรับอุปกรณ์ที่ใช้ Android 10 อยู่แล้วหรือ สูงกว่า: ดูหน้าการอัปเดตระบบแบบไดนามิก
แสดงความคิดเห็น
GSI มีไว้เพื่อช่วยคุณตรวจสอบความถูกต้องของแอปใน Android ขอขอบคุณที่ ความคิดเห็นเกี่ยวกับภาพ เครื่องมือ และกระบวนการใช้ GSI ในอุปกรณ์ อุปกรณ์
หากต้องการแจ้งให้เราทราบถึงข้อบกพร่องหรือคำขอฟีเจอร์ ให้ใช้เครื่องมือติดตามปัญหาโดยเฉพาะ คอมโพเนนต์ สำหรับ GSI