android architecture

10
Mr.Jenchke Tachagomain [email protected]

Upload: jenchoke-tachagomain

Post on 23-Dec-2014

122 views

Category:

Technology


2 download

DESCRIPTION

Android Architecture ​Architecture Layer Application Framework Layer

TRANSCRIPT

Page 1: Android architecture

Mr.Jenchke [email protected]

Page 2: Android architecture

  แอนดรอยด�เป็�นซอฟต์�แวร�ที่��มี�โครงสร�างแบบสแต์�ก (Stack) ซ��งรวมีเอาระบบป็ฏิ!บ"ต์!การ (Operating System), มี!ดเด!ลแวร� (Middleware) และแอพพล!เคชั"นที่��ส&าค"ญเข้�าไว�ด�วยก"น เพ*�อใชั�ส&าหร"บที่&างานบนอ-ป็กรณ์�พกพาเคล*�อนที่�� (Mobile Devices) เชั/น โที่รศั"พที่�มี*อถื*อ เป็�นต์�น

การที่&างานข้องแอนดรอยด�มี�พ*2นฐานอย4/บนระบบล�น-กซ� เคอร�เนล (Linux Kernel) ซ��งใชั� Android SDK (Software Development Kit) เป็�นเคร*�องมี*อส&าหร"บการพ"ฒนาแอพพล!เคชั"นบนระบบป็ฏิ!บ"ต์!การ Android และใชั�ภาษา Java ในการพ"ฒนา

สถืาป็8ต์ยกรรมีข้องแอนดรอยด� (Android Architecture) น"2นถื4กแบ/งออกเป็�นล&าด"บชั"2น ออกเป็�น4ชั"2น

Android Architecture

Page 3: Android architecture

Android Architecture Diagram

C / C++

Java

Page 4: Android architecture

Applicati on Layer

ชั"2นน�2จะเป็�นชั"2นที่��อย4/บนส-ดข้องโครงสร�างสถืาป็8ต์ยกรรมี Android ซ��งเป็�นส/วนข้องแอพพล!เคชั"นที่��พ"ฒนาข้�2นมีาใชั�งาน เชั/น แอพพล!เคชั"นร"บ/ส/งอ�เมีล�, SMS, ป็ฏิ!ที่!น, แผนที่��, เว�บเบราเซอร�, รายชั*�อผ4�ต์!ดต์/อ เป็�นต์�น ซ��งแอพพล!เคชั"นจะอย4/ในร4ป็แบบข้องไฟล� .apk

Page 5: Android architecture

Applicati on Framework Layer• Activity Manager: เป็�นต์"วจ"ดการเก��ยวก"บก!จกรรมีที่"2งหมีดใน Life

cycle ข้องการพ"ฒนา Android Applications

• Content Providers: เป็�นส/วนที่��ใชั�ควบค-มีการเข้�าถื�งข้�อมี4ลที่��มี�การใชั� งานร/วมีก"น (Share data) ระหว/าง Applications ที่��แต์กต์/างก"น เชั/น ข้�อมี4ลผ4�

ต์!ดต์/อ (Contact), ร4ป็ภาพ• Telephony Manager: เป็�นต์"วจ"ดการเก��ยวก"บการโที่รและการเข้�าถื�ง

ข้�อมี4ลการใชั�งานการโที่ร (voice calls, access voice calls, telephony applications ).

• Location Manager: เป็�นส/วนที่��จ"ดการเก��ยวก"บค/าต์&าแหน/งข้อง เคร*�องอ-ป็กรณ์�พกพาเคล*�อนที่�� (GPS)

• Resource Manager: เป็�นส/วนที่��จ"ดการข้�อมี4ลต์/างๆ ที่��ไมี/ใชั/ส/วนข้อง โค�ดโป็รแกรมี เชั/น ร4ป็ภาพ, localized strings, layout ซ��งจะอย4/ในไดเร�คที่อร�

res

• View System : เป็�นส/วนที่��ใชั�ในการควบค-มีการที่&างานส&าหร"บการ สร�างแอพพล!เคชั"น เชั/น lists, grids, text boxes, buttons และ embeddable web

browser

• Notification Manager: เป็�นส/วนที่��ควบค-มีอ�เวนต์� (Event) ต์/างๆ ที่�� แสดงบนแถืบสถืานะ (Status bar) เชั/น ในกรณ์�ที่��ได�ร"บข้�อความีหร*อสายที่��

ไมี/ได�ร"บและการแจ�งเต์*อนอ*�นๆ เป็�นต์�น

Page 6: Android architecture

Applicati on Framework Layer

Page 7: Android architecture

Library LayerAndroid ได�รวบรวมีกล-/มีข้องไลบราร�ต์/างๆ ที่��ส&าค"ญและมี�ความีจ&าเป็�นเอาไว�

มีากมีาย เพ*�ออ&านวยความีสะดวกให�ก"บน"กพ"ฒนาและง/ายต์/อการพ"ฒนา โป็รแกรมี โดยต์"วอย/างข้องไลบราร�ที่��ส&าค"ญเชั/น

• System C library: เป็�นกล-/มีข้องไลบราร�มีาต์รฐานที่��อย4/บนพ*2นฐานข้องภาษา C ไลบราร� (libc)

ส&าหร"บ embedded system ที่��มี�พ*2นฐานมีาจาก Linux

• Media Libraries: เป็�นกล-/มีการที่&างานมี"ลต์!มี�เด�ย เชั/น MPEG4, H.264, MP3, AAC, AMR, JPG, PNG

• Surface Manager: เป็�นกล-/มีการจ"ดการร4ป็แบบหน�าจอ การวาดหน�าจอ• 2D/3D library: เป็�นกล-/มีข้องกราฟ<กแบบ 2 มี!ต์! หร*อ SGL (Scalable Graphics Library) และแบบ 3 มี!ต์!

หร*อ OpenGL

• FreeType: เป็�นกล-/มีข้องบ!ต์แมีป็ (Bitmap) และเวคเต์อร� (Vector) ส&าหร"บการเรนเดอร� (Render) ภาพ• SQLite: เป็�นกล-/มีข้องฐานข้�อมี4ล โดยน"กพ"ฒนาสามีารถืใชั�ฐานข้�อมี4ลน�2เก�บข้�อมี4ลแอพพล!เคชั"น

ต์/างๆ ได�• Browser Engine: เป็�นกล-/มีข้องการแสดงผลบนเว�บเบราเซอร�โดยอย4/บนพ*2นฐานข้อง Webkit ซ��งจะ

มี�ล"กษณ์ะคล�ายก"บ Google Chrome

Page 8: Android architecture

Linux Kernel Layer ระบบ Android น"2นถื4กสร�างบนพ*2นฐานข้อง

ระบบป็ฏิ!บ"ต์!การ Linux โดยในชั"2นน�2จะมี�ฟ8งก�ชั"นการที่&างานหลายๆ ส/วน แต์/โดยส/วนมีากแล�วจะเก��ยวข้�องก"บฮาร�ดแวร�โดยต์รง เชั/น การจ"ดการหน/วยความีจ&า (Memory Management) การจ"ดการโพรเซส (Process Management) การเชั*�อมีต์/อเคร*อข้/าย (Networking) เป็�นต์�น

Page 9: Android architecture

Quiz• ระบบ Android น"2นถื4กสร�างบนพ*2นฐานข้องระบบป็ฏิ!บ"ต์!การ

อะไร?• Android Architecture มี�ก�� Layer และมี� Layer อะไรบ�าง?• Android Runtime อย4/ใน Layer อะไรข้อง Android

Architecture?• อะไรเป็�นต์"วจ"ดการก!จกรรมี (Activity) ที่"2งหมีดใน Life cycle

และต์"วการก!จกรรมี (Activity) อย4/ใน Layer อะไรข้อง Android Architecture?

• Surface Manager ใชั�ที่&าอะไรและอย4/ใน Layer อะไร?• Display Driver อย4/ใน Layer อะไร?

Page 10: Android architecture

Thank