ตั้งแต่วันที่ 27 มีนาคม 2025 เป็นต้นไป เราขอแนะนำให้ใช้ android-latest-release
แทน aosp-main
เพื่อสร้างและมีส่วนร่วมใน AOSP โปรดดูข้อมูลเพิ่มเติมที่หัวข้อการเปลี่ยนแปลงใน AOSP
ภาพรวมของ 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 คือชุดการทดสอบหน่วยที่ออกแบบมาเพื่อผสานรวมเข้ากับเวิร์กโฟลว์ประจำวัน วัตถุประสงค์ของ CTS คือเพื่อเปิดเผยความเข้ากันไม่ได้ และตรวจสอบว่าซอฟต์แวร์ยังคงเข้ากันได้ตลอดกระบวนการพัฒนา
- ปลาหมึกกระดอง
อุปกรณ์เสมือนที่ทำงานด้วยระบบปฏิบัติการ Android ซึ่งสามารถกำหนดค่าได้และทำงานจากระยะไกลได้โดยใช้ข้อเสนอระบบคลาวด์ของบุคคลที่สาม เช่น Google Cloud Engine และทำงานในเครื่อง Linux x86 ในพื้นที่
- นักพัฒนาแอป
ในบริบทของ AOSP นักพัฒนาแอปคือทุกคนที่ทำงานร่วมกับ AOSP ไม่ว่าในทางใดก็ตาม คําว่า "นักพัฒนาแอป" ใช้เพื่ออ้างอิงบุคคลทั่วไปที่อาจอ่านเอกสารประกอบนี้ เช่น ผู้ผลิตอุปกรณ์ดั้งเดิม (OEM) ผู้สร้างโทรศัพท์มือถือ ผู้ให้บริการ และนักพัฒนาระบบวงจรรวมบนชิป (SoC)
- บริการของ Google Mobile (GMS)
ชุดแอปและ API ของ Google ที่ติดตั้งล่วงหน้าในอุปกรณ์ได้
- Target
การเปลี่ยนรูปแบบของอุปกรณ์ เช่น รุ่นหรือรูปแบบที่เฉพาะเจาะจง ตัวอย่างเช่น aosp_cf_x86_64_only_phone-userdebug
แสดงถึงโทรศัพท์ x86 ขนาด 65 MB ที่มีข้อมูลการแก้ไขข้อบกพร่องซึ่งออกแบบมาเพื่อทำงานบนโปรแกรมจำลอง 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 ไปยังอุปกรณ์ โดยไม่ได้ติดตั้งใช้งานข้อกำหนดหรือดูแลจัดการการเผยแพร่
สิ่งต่อไปที่ควรทำ
ตัวอย่างเนื้อหาและโค้ดในหน้าเว็บนี้ขึ้นอยู่กับใบอนุญาตที่อธิบายไว้ในใบอนุญาตการใช้เนื้อหา Java และ OpenJDK เป็นเครื่องหมายการค้าหรือเครื่องหมายการค้าจดทะเบียนของ Oracle และ/หรือบริษัทในเครือ
อัปเดตล่าสุด 2025-07-27 UTC
[[["เข้าใจง่าย","easyToUnderstand","thumb-up"],["แก้ปัญหาของฉันได้","solvedMyProblem","thumb-up"],["อื่นๆ","otherUp","thumb-up"]],[["ไม่มีข้อมูลที่ฉันต้องการ","missingTheInformationINeed","thumb-down"],["ซับซ้อนเกินไป/มีหลายขั้นตอนมากเกินไป","tooComplicatedTooManySteps","thumb-down"],["ล้าสมัย","outOfDate","thumb-down"],["ปัญหาเกี่ยวกับการแปล","translationIssue","thumb-down"],["ตัวอย่าง/ปัญหาเกี่ยวกับโค้ด","samplesCodeIssue","thumb-down"],["อื่นๆ","otherDown","thumb-down"]],["อัปเดตล่าสุด 2025-07-27 UTC"],[],[],null,["# AOSP overview\n\n*Android* is an operating system for a wide array of devices with different\nform factors. The documentation and source code for Android is available to\nanyone as the *Android Open Source Project (AOSP)*. You can use\nAOSP to create custom variants of the Android OS for your own devices.\n\nAOSP is designed so that there's no central point of failure, where one\nindustry player restricts or controls the innovations of another. Therefore,\nAOSP is a full, production-quality developer product with source code open for\ncustomization and porting.\n\nThis section of documentation helps new AOSP developers get started with the\nplatform and to perform essential development tasks.\n\nRequired terms\n--------------\n\nFollowing is a list of terms and definitions used throughout the Getting\nStarted documentation. You should study each definition before continuing\nfurther.\n\n*Android app developer*\n\n: Android app developers writes *Android apps* or applications that run on\n Android. There are two classification of app developers: first-party (1p) and\n third-party (3p) app developers.\n\n *Android first-party app developer*\n : An Android app developer that has access to AOSP System APIs and writes\n privileged and device manufacturer apps.\n\n *Android third-party app developer*\n : An Android app developer who solely uses Android's public SDK to create\n Android apps.\n\nIf you want to develop third-party apps for Android, refer to\n[`developers.android.com`](https://developer.android.com/). The information on\nthis website is solely for those working directly with AOSP.\n\n*Android debug bridge (adb)*\n: A command-line tool (`adb`) that allows your workstation communicate with a\n virtual, software-emulated, or physical device.\n\n*Android-compatible device*\n: A device that can run any third-party app written by third-party developers\n using the Android SDK and NDK. Android-compatible devices must adhere to the\n requirements of the\n [Compatibility Definition Document (CDD)](#cdd) and pass the\n [Compatibility Test Suite (CTS)](#cts). Android-compatible\n devices are eligible to participate in the Android ecosystem which includes\n potential licensure of the Android Play Store, potential licensure the\n [Google Mobile Services (GMS)](#gms) suite of\n applications and APIs, and use of the Android trademark. Anyone is welcome to\n use the Android source code, but to be considered part of the Android ecosystem,\n a device must be Android-compatible. For further information on compatibility\n and CTS, see the\n [Android Compatibility Program overview](/docs/compatibility/overview)\n\n*Compatibility Definition Document (CDD)*\n: A document that enumerates the software and hardware requirements for an\n Android-compatible device.\n\n*Contributor*\n\n: A person who makes contributions to the AOSP source code. Contributors\n can be employees of Google, employees from other companies, and individuals\n with no company affiliation. Every AOSP contributor uses the same tools, follows\n the same code review process, and is subject to the same coding style. You\n don't have to be a contributor to use AOSP; you can download AOSP,\n modify it for your own needs, and deploy it on a device without contributing\n code for others to use.\n\n There are limits to the type of code contributions Google accepts. For example,\n you might want to contribute an alternative application API, such as a full\n C++-based environment. Google would decline that contribution because Android\n encourages applications to be run in the ART runtime. Similarly, Google doesn't\n accept contributions such as GPL or LGPL libraries that are incompatible with\n licensing goals.\n\n If you are interested in contributing source code,\n [contact Google](/docs/setup/community) prior to beginning work.\n\n*Compatibility Test Suite (CTS)*\n\n: A free, commercial-grade test suite, available for download as a binary or as\n source in AOSP. The CTS is a set of unit tests designed to be integrated into\n your daily workflow. CTS's intent is to reveal incompatibilities, and ensure\n that the software remains compatible throughout the development process.\n\n*Cuttlefish*\n\n: A configurable virtual Android-powered device that can run remotely, using\n third-party cloud offerings, such as Google Cloud Engine, and locally on Linux\n x86 machines.\n\n*Developer*\n\n: In the context of AOSP, a developer is anyone who works with AOSP in any\n way. The term \"developer\" is used to generically refer to the various people who\n might read this documentation, such as original equipment manufacturers\n (OEMs), handset makers, carriers, and System-on-a-Chip (SoC) creators.\n\n*Google Mobile Services (GMS)*\n\n: A collection of Google apps and APIs that can be pre-installed on devices.\n\n*Target*\n\n: A permutation of a device, such as a specific model or form factor. For\n example, `aosp_cf_x86_64_only_phone-userdebug` represents a x86 65MB phone with\n debugging information that is designed to run on the cuttlefish emulator.\n\nGovernance philosophy\n---------------------\n\nA group of companies known as the Open Handset Alliance (OHA), led by Google,\noriginated Android. Today, many companies---both original members of the OHA and\nothers---have invested heavily in Android. These companies have allocated\nsignificant engineering resources to improve Android and bring Android devices\nto market.\n\nThe companies that have invested in Android have done so because they believe an\nopen platform is necessary. Android is intentionally and explicitly an open\nsource effort (as opposed to free software); a group of organizations with\nshared needs has pooled resources to collaborate on a single implementation of a\nshared product. First and foremost, the Android philosophy is pragmatic. The\nobjective is a shared product that each contributor can tailor and customize.\n\nOf course, uncontrolled customization can lead to incompatible implementations.\nTo prevent incompatibility, the Android Open Source Project (AOSP) maintains\nthe\n[Android Compatibility program](/docs/compatibility/overview),\nwhich spells out what it means to be Android-compatible and what's required of\ndevice builders to achieve that status. Anyone can use the Android source code\nfor any purpose, and Google welcomes all legitimate uses. However, to take part\nin the shared ecosystem of applications OHA members are building around Android,\ndevice builders must participate in the Android Compatibility program.\n\nAOSP is led by Google, who maintains and further develops Android. Although\nAndroid consists of multiple subprojects, AOSP is strictly project management.\nGoogle views and manage Android as a single, holistic software product, not a\ndistribution, specification, or collection of replaceable parts. Google's intent\nis that device builders port Android to a device; they don't implement a\nspecification or curate a distribution.\n\nWhat's next?\n------------\n\n- If you're new to AOSP and want to run through a tutorial on AOSP\n development, proceed with [AOSP tutorial](/docs/setup/start).\n\n- If you believe that your device needs to be Android-compatible, refer to the\n [Android Compatibility program](/docs/compatibility/overview).\n\n- If you want to learn about the background of AOSP, including Google's\n participation in the platform, see\n [AOSP frequently asked questions](/docs/setup/about/faqs)."]]