ภาพรวม AOSP

Android คือระบบปฏิบัติการสำหรับอุปกรณ์หลากหลายประเภทที่มี รูปแบบของอุปกรณ์ เอกสารประกอบและซอร์สโค้ดสำหรับ Android มีไว้สำหรับ ทุกคนในฐานะโครงการโอเพนซอร์ส Android (AOSP) คุณสามารถใช้ AOSP เพื่อสร้างตัวแปรที่กำหนดเองของระบบปฏิบัติการ Android สำหรับอุปกรณ์ของคุณเอง

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

เอกสารประกอบส่วนนี้ช่วยให้นักพัฒนาแอป AOSP รายใหม่สามารถเริ่มต้นใช้งาน แพลตฟอร์มและดำเนินงานที่สำคัญด้านการพัฒนา

คำที่จำเป็น

ต่อไปนี้เป็นรายการคำศัพท์และคำจำกัดความที่ใช้ในส่วน เริ่มเอกสารประกอบแล้ว คุณควรศึกษาคำจำกัดความแต่ละรายการก่อนดำเนินการต่อ ต่อไป

นักพัฒนาแอป Android

นักพัฒนาแอป Android เขียนแอป Android หรือแอปพลิเคชันที่ทำงานบน Android นักพัฒนาแอปมี 2 ประเภท ได้แก่ บุคคลที่หนึ่ง (1p) และ นักพัฒนาแอปบุคคลที่สาม (3p)

นักพัฒนาแอปบุคคลที่หนึ่ง Android
นักพัฒนาแอป Android ที่มีสิทธิ์เข้าถึง AOSP System API และการเขียน และแอปที่ได้รับสิทธิ์และจากผู้ผลิตอุปกรณ์
นักพัฒนาแอปบุคคลที่สามสำหรับ Android
นักพัฒนาแอป Android ที่ใช้ SDK สาธารณะของ Android เพียงอย่างเดียวในการสร้าง แอป Android

หากต้องการพัฒนาแอปของบุคคลที่สามสำหรับ Android โปรดดูหัวข้อ developers.android.com ข้อมูลเกี่ยวกับ เว็บไซต์นี้มีไว้สำหรับผู้ที่ทำงานร่วมกับ AOSP โดยตรงเท่านั้น

Android Debug Bridge (adb)
เครื่องมือบรรทัดคำสั่ง (adb) ที่ช่วยให้เวิร์กสเตชันสื่อสารกับอุปกรณ์เสมือนจริง อุปกรณ์จำลองซอฟต์แวร์ หรืออุปกรณ์จริงได้
อุปกรณ์ที่เข้ากันได้กับ Android
อุปกรณ์ที่เรียกใช้แอปของบุคคลที่สามซึ่งเขียนโดยนักพัฒนาแอปบุคคลที่สามได้ โดยใช้ Android SDK และ NDK อุปกรณ์ที่เข้ากันได้กับ Android ต้องเป็นไปตาม ข้อกำหนดของ เอกสารข้อกำหนดความเข้ากันได้ (CDD) และส่ง ความเข้ากันได้ของชุดทดสอบ (CTS) อุปกรณ์ที่เข้ากันได้กับ Android จะมีสิทธิ์เข้าร่วมในระบบนิเวศของ Android ซึ่งรวมถึงการอนุญาตให้ใช้สิทธิสำหรับ Android Play Store, การอนุญาตให้ใช้สิทธิสำหรับชุดแอปพลิเคชันและ API ของ Google Mobile Services (GMS) และการใช้เครื่องหมายการค้า Android ทุกคนสามารถ ใช้ซอร์สโค้ดของ Android แต่จะถือว่าเป็นส่วนหนึ่งของระบบนิเวศของ Android อุปกรณ์ต้องใช้ร่วมกับ Android ได้ หากต้องการข้อมูลเพิ่มเติมเกี่ยวกับความเข้ากันได้ และ CTS โปรดดู ภาพรวมโปรแกรมความเข้ากันได้กับ Android
เอกสารคำจำกัดความความเข้ากันได้ (CDD)
เอกสารที่ระบุข้อกำหนดด้านซอฟต์แวร์และฮาร์ดแวร์สำหรับอุปกรณ์ที่เข้ากันได้กับ Android
ผู้ร่วมให้ข้อมูล

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

ประเภทของการมีส่วนร่วมโค้ดที่ Google ยอมรับนั้นมีขีดจำกัด ตัวอย่างเช่น คุณอาจต้องร่วมให้ข้อมูล API ของแอปพลิเคชันอื่น เช่น สภาพแวดล้อมที่ใช้ C++ Google จะปฏิเสธการบริจาคดังกล่าวเนื่องจาก Android สนับสนุนให้แอปพลิเคชันทำงานในรันไทม์ ART ในทำนองเดียวกัน Google จะไม่ ยอมรับการสนับสนุน เช่น ไลบรารี GPL หรือ LGPL ที่ไม่สามารถทำงานร่วมกับ เป้าหมายการออกใบอนุญาต

หากสนใจมีส่วนร่วมในซอร์สโค้ด โปรดติดต่อ Google ก่อนเริ่มทำงาน

ชุดทดสอบความเข้ากันได้ (CTS)

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

หมึกกระดอง

อุปกรณ์ระบบ Android เสมือนที่กำหนดค่าได้ ซึ่งสามารถเรียกใช้จากระยะไกล ข้อเสนอระบบคลาวด์ของบุคคลที่สาม เช่น Google Cloud Engine และในระบบ Linux เครื่อง x86

นักพัฒนาซอฟต์แวร์

ในบริบทของ AOSP นักพัฒนาซอฟต์แวร์คือใครก็ตามที่ทำงานกับ AOSP คำว่า "นักพัฒนาซอฟต์แวร์" โดยทั่วไปจะใช้เพื่ออ้างอิงถึงบุคคลต่างๆ อาจอ่านเอกสารนี้ เช่น ผู้ผลิตอุปกรณ์ดั้งเดิม (OEM), ผู้ผลิตโทรศัพท์มือถือ, ผู้ให้บริการ และครีเอเตอร์ระบบวงจรรวม (System-on-a-Chip หรือ SoC)

บริการของ Google Mobile (GMS)

คอลเล็กชันของแอป Google และ API ที่ติดตั้งล่วงหน้าในอุปกรณ์ได้

Target

การเรียงสับเปลี่ยนของอุปกรณ์ เช่น รุ่นหรือรูปแบบของอุปกรณ์ที่เฉพาะเจาะจง ตัวอย่างเช่น aosp_cf_x86_64_phone-userdebug แสดงถึงโทรศัพท์ x86 65MB ที่มีข้อมูลการแก้ไขข้อบกพร่องซึ่งออกแบบมาเพื่อใช้งานบนโปรแกรมจำลอง Cuttlefish

ปรัชญาการกำกับดูแล

กลุ่มบริษัทซึ่งรู้จักกันในชื่อ Open Handset Alliance (OHA) ซึ่งนำโดย Google มาจาก Android ทุกวันนี้ บริษัทหลายแห่ง ทั้งสมาชิกดั้งเดิมของ OHA และ คนอื่นๆ ได้ลงทุนมหาศาลใน Android โดยบริษัทเหล่านี้ได้จัดสรร ทรัพยากรทางวิศวกรรมที่สำคัญเพื่อปรับปรุง Android และนำอุปกรณ์ Android ออกสู่ตลาด

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

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

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

สิ่งต่อไปที่ควรทำ