Android – Architecture
ระบบปฏิบัติการ Android เป็นสแต็คของส่วนประกอบซอฟต์แวร์ที่ถูกแบ่งออกเป็นห้าส่วนและสี่ชั้นหลักที่แสดงด้านล่างในแผนภาพสถาปัตยกรรม
Linux kernel
อยู่ในชั้นล่างสุดของแผนภาพ คือ Linux 3.6 ที่มีประมาณ 115 แพทช์ นี้จะช่วยให้การใช้งานระหว่างอุปกรณ์กับซอฟต์แวร์ทำงานร่วมกันได้ดี
Libraries
อยู่ด้านบนของ Linux เป็นที่รวบรวมเครื่องมือเว็บบราวเซอร์ Webkit, SQLite, และการเชื่อมต่อ internet ต่างๆ
Android Libraries
- android.app - ให้การเข้าถึงรูปแบบการใช้งานและเป็นรากฐานที่สำคัญของการใช้งานทั้งหมดของ Android
- android.content – อำนวยความสะดวกในการเข้าถึงการเผยแพร่เนื้อหาและการส่งข้อความระหว่างการใช้งานแอพลิเคชันและส่วนประกอบ
- android.database - ใช้ในการเข้าถึงข้อมูลที่เผยแพร่โดยผู้ให้บริการเนื้อหาและรวมถึงการเรียนการจัดการฐานข้อมูล SQLite
- android.opengl - อินเตอร์เฟซ Java เพื่อกราฟิก 3D OpenGL ES API การแสดงผล
- android.os – ให้การใช้งานที่มีการเข้าถึงบริการของระบบการดำเนินงานมาตรฐานรวมถึงข้อความการให้บริการของระบบและการสื่อสารระหว่างกระบวนการ
- android.text – ใช้ในการแสดงผลและจัดการกับข้อความบนหน้าจอโทรศัพท์
- android.view – หน่วยการสร้างพื้นฐานของอินเตอร์เฟซผู้ใช้โปรแกรม
- android.widget - คอลเลกชันที่อุดมไปด้วยของใช้ที่สร้างไว้ล่วงหน้าส่วนติดต่อเช่นปุ่ม, ป้าย, มุมมองรายการผู้จัดการเค้าโครงปุ่ม ฯลฯ
- android.webkit – ชุดการเรียนวัตถุประสงค์เพื่อให้ความสามารถในการท่องเว็บที่ถูกสร้างขึ้นในการใช้งาน
Android Runtime
นี้เป็นส่วนที่สามของสถาปัตยกรรมและอยู่บนชั้นที่สองจากด้านล่าง ส่วนนี้จะให้เป็นองค์ประกอบสำคัญที่เรียกว่าDalvik Virtual Machine ซึ่งเป็นชนิดของโปรแกรม Java Virtual Machine ออกแบบมาเป็นพิเศษและเพิ่มประสิทธิภาพสำหรับ Android
Dalvik VM ทำให้การใช้ลินุกซ์คุณสมบัติหลักเช่นการจัดการหน่วยความจำและแบบมัลติเธรด ในภาษา Java Dalvik VM ช่วยให้ทุกการประยุกต์ใช้ Android ที่จะทำงานในกระบวนการของตัวเองด้วย
Android runtime นอกจากนี้ยังมีชุด libraries หลักที่ช่วยให้นักพัฒนา Android Application ใช้โปรแกรมภาษาจาวามาตรฐาน
Application Framework
- Activity Manager – ควบคุมทุกด้านของ Application Lifecycle และ Activity stack.
- Content Providers - ช่วยให้การใช้งานในการเผยแพร่และใช้ข้อมูลร่วมกันกับโปรแกรมอื่น ๆ
- Resource Manager - ให้การเข้าถึงทรัพยากรที่ฝังตัวที่ไม่ใช่รหัสเช่นสายการตั้งค่าสีและรูปแบบส่วนติดต่อผู้ใช้
- Notifications Manager – ช่วยให้การใช้งานที่จะแสดงการแจ้งเตือนและการแจ้งเตือนให้กับผู้ใช้
- View System - ชุดขยายมุมมองที่ใช้ในการสร้างการเชื่อมต่อผู้ใช้โปรแกรม
Applications
สามารถค้นหา Android Application ทั้งหมดได้ในชั้นนี้ เป็นชั้นที่ใช้งานเพื่อเขียน Application ต่างๆ ยกตัวอย่างเช่น Contacts Books, Browser, Games และอื่นๆ