ΠŸΠΎΠΌΠΎΡ‰ΡŒ Π² написании студСнчСских Ρ€Π°Π±ΠΎΡ‚
АнтистрСссовый сСрвис

АрхитСктура ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ Google Android

Π Π΅Ρ„Π΅Ρ€Π°Ρ‚ΠŸΠΎΠΌΠΎΡ‰ΡŒ Π² Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΠΈΠ£Π·Π½Π°Ρ‚ΡŒ ΡΡ‚ΠΎΠΈΠΌΠΎΡΡ‚ΡŒΠΌΠΎΠ΅ΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹

Π£Ρ€ΠΎΠ²Π΅Π½ΡŒ Applications. Бюда относятся Π±Π°Π·ΠΎΠ²Ρ‹Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, прСдустановлСнныС Π½Π° Android. Π­Ρ‚ΠΎ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€, ΠΏΠΎΡ‡Ρ‚ΠΎΠ²Ρ‹ΠΉ ΠΊΠ»ΠΈΠ΅Π½Ρ‚, ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° для ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠΈ SMS, ΠΊΠ°Ρ€Ρ‚Ρ‹, ΠΊΠ°Π»Π΅Π½Π΄Π°Ρ€ΡŒ, ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€ ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚ΠΎΠ². Бписок ΠΈΠ½Ρ‚Π΅Π³Ρ€ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΌΠ΅Π½ΡΡ‚ΡŒΡΡ Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡ‚ΠΈ ΠΎΡ‚ ΠΌΠΎΠ΄Π΅Π»ΠΈ устройства ΠΈ Π²Π΅Ρ€ΡΠΈΠΈ Android. Π’Π°ΠΊΠΆΠ΅ Π½Π° ΡΡ‚ΠΎΠΌ ΡƒΡ€ΠΎΠ²Π½Π΅ располагаСтся стороннСС ΠŸΠž. БистСма позволяСт ΡƒΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°Ρ‚ΡŒ Π΅Π³ΠΎ Π±Π΅Π· ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠΉ, поэтому всС… Π§ΠΈΡ‚Π°Ρ‚ΡŒ Π΅Ρ‰Ρ‘ >

АрхитСктура ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ Google Android (Ρ€Π΅Ρ„Π΅Ρ€Π°Ρ‚, курсовая, Π΄ΠΈΠΏΠ»ΠΎΠΌ, ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Π°Ρ)

Π Π΅Ρ„Π΅Ρ€Π°Ρ‚

АрхитСктура ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ Google Android

Google Android — это ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΉ стСк для ΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½Ρ‹Ρ… устройств, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΡƒΡŽ систСму, ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ΅ обСспСчСниС ΠΏΡ€ΠΎΠΌΠ΅ΠΆΡƒΡ‚ΠΎΡ‡Π½ΠΎΠ³ΠΎ слоя (middleware) ΠΈ ΠΎΡΠ½ΠΎΠ²Π½Ρ‹Π΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠ΅ прилоТСния (e-mail-ΠΊΠ»ΠΈΠ΅Π½Ρ‚, ΠΊΠ°Π»Π΅Π½Π΄Π°Ρ€ΡŒ, ΠΊΠ°Ρ€Ρ‚Ρ‹, Π±Ρ€Π°ΡƒΠ·Π΅Ρ€, ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚Ρ‹ ΠΈ Π΄Ρ€.).

Π’ΠΎΠΏΡ€Π΅ΠΊΠΈ распространСнному мнСнию, Android установлСн Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π° ΠΏΠ»Π°Π½ΡˆΠ΅Ρ‚Π°Ρ… ΠΈ ΡΠΌΠ°Ρ€Ρ‚Ρ„ΠΎΠ½Π°Ρ…, Π½ΠΎ ΠΈ Π½Π° элСктронных ΠΊΠ½ΠΈΠ³Π°Ρ…, Ρ†ΠΈΡ„Ρ€ΠΎΠ²Ρ‹Ρ… проигрыватСлях, Π½Π°Ρ€ΡƒΡ‡Π½Ρ‹Ρ… часах, Π½Π΅Ρ‚Π±ΡƒΠΊΠ°Ρ… ΠΈ Π΄Π°ΠΆΠ΅ ΠΎΡ‡ΠΊΠ°Ρ… Google.

Π­Ρ‚Π° ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° являСтся самой популярной Π½Π° Ρ€Ρ‹Π½ΠΊΠ΅: ΠΎΠ½Π° установлСна Π½Π° 68% устройств. Число ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ Π² ΠΌΠ°Π³Π°Π·ΠΈΠ½Π΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Google Play ΠΏΡ€Π΅Π²Ρ‹ΡˆΠ°Π΅Ρ‚ 600 000 Π΅Π΄ΠΈΠ½ΠΈΡ†. Π—Π° Π²ΡΡ‘ врСмя Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΌΠ°Π³Π°Π·ΠΈΠ½Π° Π±Ρ‹Π»ΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΎ 20 ΠΌΠ»Ρ€Π΄ установок ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. Богласно заявлСниям Π­Π½Π΄ΠΈ Π ΡƒΠ±ΠΈΠ½Π° — руководитСля Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Android Π² Google — Π΅ΠΆΠ΅Π΄Π½Π΅Π²Π½ΠΎ Π² ΠΌΠΈΡ€Π΅ активируСтся 1.3 ΠΌΠ»Π½ Android-устройств.

Π­Ρ‚ΠΈ Π΄Π°Π½Π½Ρ‹Π΅ ΠΈ ΠΏΠΎΠ±ΡƒΠ΄ΠΈΠ»ΠΈ мСня ΠΈΡΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚ΡŒ вопрос ΠΎΠ± Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π΅ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹.

АрхитСктура Android

Рисунок 1. Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π° ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ Google Android

АрхитСктура Google Android состоит ΠΈΠ· Ρ‡Π΅Ρ‚Ρ‹Ρ€Π΅Ρ… ΡƒΡ€ΠΎΠ²Π½Π΅ΠΉ (нумСрация ΠΎΠ±ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚ порядок ΡƒΡ€ΠΎΠ²Π½Π΅ΠΉ снизу Π²Π²Π΅Ρ€Ρ…).

1) Π―Π΄Ρ€ΠΎ OS Linux вСрсии 2.6 обСспСчиваСт Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ систСмы. Оно ΠΎΡ‚Π²Π΅Ρ‡Π°Π΅Ρ‚ Π·Π° Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ, ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΠ°ΠΌΡΡ‚ΡŒΡŽ, энСргосистСмой ΠΈ ΠΏΡ€ΠΎΡ†Π΅ΡΡΠ°ΠΌΠΈ, Π° Ρ‚Π°ΠΊΠΆΠ΅ прСдоставляСт сСтСвой стСк ΠΈ ΠΌΠΎΠ΄Π΅Π»ΡŒ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ΠΎΠ². ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, ΠΎΠ½ΠΎ ΠΈΠ³Ρ€Π°Π΅Ρ‚ ΡΠ²ΡΠ·ΡƒΡŽΡ‰ΡƒΡŽ Ρ€ΠΎΠ»ΡŒ ΠΌΠ΅ΠΆΠ΄Ρƒ Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½Ρ‹ΠΌ обСспСчСниСм ΠΈ ΠΎΡΡ‚Π°Π»ΡŒΠ½ΠΎΠΉ Ρ‡Π°ΡΡ‚ΡŒΡŽ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ стСка.

2) ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ΅ обСспСчСниС ΠΏΡ€ΠΎΠΌΠ΅ΠΆΡƒΡ‚ΠΎΡ‡Π½ΠΎΠ³ΠΎ слоя — Π½Π°Π±ΠΎΡ€ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ (Libraries), ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π½Ρ‹ΠΉ для обСспСчСния ваТнСйшСго Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»Π° для ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ.

Π’ΠΎΡ‚ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΠ· Π½ΠΈΡ…:

Β· Surface Manager — ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡ‚Π½Ρ‹ΠΉ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€ ΠΎΠΊΠΎΠ½. ВмСсто Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΡ‚Ρ€ΠΈΡΠΎΠ²Ρ‹Π²Π°Ρ‚ΡŒ Π³Ρ€Π°Ρ„ΠΈΠΊΡƒ Π² Π±ΡƒΡ„Π΅Ρ€ дисплСя, систСма посылаСт ΠΏΠΎΡΡ‚ΡƒΠΏΠ°ΡŽΡ‰ΠΈΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ отрисовки Π² Π·Π°ΠΊΠ°Π΄Ρ€ΠΎΠ²Ρ‹ΠΉ Π±ΡƒΡ„Π΅Ρ€, Π³Π΄Π΅ ΠΎΠ½ΠΈ Π½Π°ΠΊΠ°ΠΏΠ»ΠΈΠ²Π°ΡŽΡ‚ΡΡ вмСстС с Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ, составляя Π½Π΅ΠΊΡƒΡŽ ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡ†ΠΈΡŽ, Π° ΠΏΠΎΡ‚ΠΎΠΌ выводятся ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ Π½Π° ΡΠΊΡ€Π°Π½. Π­Ρ‚ΠΎ позволяСт ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ интСрСсныС Π±Π΅ΡΡˆΠΎΠ²Π½Ρ‹Π΅ эффСкты, ΠΏΡ€ΠΎΠ·Ρ€Π°Ρ‡Π½ΠΎΡΡ‚ΡŒ ΠΎΠΊΠΎΠ½ ΠΈ ΠΏΠ»Π°Π²Π½Ρ‹Π΅ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Ρ‹.

Β· Media Framework — Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ, Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½Ρ‹Π΅ Π½Π° Π±Π°Π·Π΅ PacketVideo OpenCORE. Π‘ ΠΈΡ… ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ систСма осущСствляСт запись / воспроизвСдСниС Π°ΡƒΠ΄ΠΈΠΎΠΈ Π²ΠΈΠ΄Π΅ΠΎ — ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚Π°, Π° Ρ‚Π°ΠΊΠΆΠ΅ Π²Ρ‹Π²ΠΎΠ΄ статичСских ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ. ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ΡΡ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Ρ‹ MPEG4, H.264, MP3, AAC, AMR, JPG ΠΈ PNG ΠΈ Π΄Ρ€.

Β· SQLite — рСляционная Π‘Π£Π‘Π”, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠ°Ρ Π² Android Π² ΠΊΠ°Ρ‡Π΅ΡΡ‚Π²Π΅ основного Π΄Π²ΠΈΠΆΠΊΠ° для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Π±Π°Π·Π°ΠΌΠΈ Π΄Π°Π½Π½Ρ‹Ρ…, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹ΠΌΠΈ прилоТСниями для хранСния ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ.

Β· 3D Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ — ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ для отрисовки 3D-Π³Ρ€Π°Ρ„ΠΈΠΊΠΈ, ΠΏΡ€ΠΈ возмоТности ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½ΠΎΠ΅ ускорСниС. Π Π΅Π°Π»ΠΈΠ·ΡƒΡŽΡ‚ΡΡ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ API OpenGL ES 1.0.

Β· FreeType — Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° для Ρ€Π°Π±ΠΎΡ‚Ρ‹ для растСризации ΡˆΡ€ΠΈΡ„Ρ‚ΠΎΠ² ΠΈ ΠΎΡΡƒΡ‰Π΅ΡΡ‚влСния ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ Π½Π°Π΄ Π½ΠΈΠΌΠΈ.

Β· LibWebCore — Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π½ΠΎΠ³ΠΎ Π΄Π²ΠΈΠΆΠΊΠ° WebKit.

Β· SGL (Skia Graphics Engine) — Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с 2D-Π³Ρ€Π°Ρ„ΠΈΠΊΠΎΠΉ.

Β· Libc — стандартная Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° языка C, настроСнная для Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π½Π° ΡƒΡΡ‚ройствах Π½Π° Π±Π°Π·Π΅ Linux.

ВсС Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ написаны Π½Π° ΡΠ·Ρ‹ΠΊΠ΅ C++ ΠΈ ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΠΎΠ²Π°Π½Ρ‹ ΠΏΠΎΠ΄ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠ΅ Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½ΠΎΠ΅ обСспСчСниС устройства.

На ΡΡ‚ΠΎΠΌ ΠΆΠ΅ ΡƒΡ€ΠΎΠ²Π½Π΅ располагаСтся срСда выполнСния Android Runtime. Она состоит ΠΈΠ· Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠΉ Java-ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Dalvik ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ ядра. Dalvik ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ Ρ€Π°Π±ΠΎΡ‚Ρƒ Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΠ΅Ρ‚ Ρ„Π°ΠΉΠ»Ρ‹ Π² ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠΌ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅. dex, ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠΌ для устройств с ΠΌΠ°Π»Ρ‹ΠΌ количСством памяти. Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ ядра написаны Π½Π° ΡΠ·Ρ‹ΠΊΠ΅ Java ΠΈ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ ΡˆΠΈΡ€ΠΎΠΊΠΈΠΉ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Ρ… возмоТностСй.

КаТдоС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π² Android Runtime запускаСтся Π² ΡΠΎΠ±ΡΡ‚Π²Π΅Π½Π½ΠΎΠΌ экзСмплярС Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠΉ ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Dalvik. Π’ΠΎ Π΅ΡΡ‚ΡŒ, всС Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰ΠΈΠ΅ процСссы ΠΈΠ·ΠΎΠ»ΠΈΡ€ΠΎΠ²Π°Π½Ρ‹ ΠΎΡ‚ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмы ΠΈ Π΄Ρ€ΡƒΠ³ ΠΎΡ‚ Π΄Ρ€ΡƒΠ³Π°. ΠžΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΡŒ структуры Android Runtime позволяСт ΠΎΡΡƒΡ‰Π΅ΡΡ‚Π²Π»ΡΡ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρƒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ строго Π² Ρ€Π°ΠΌΠΊΠ°Ρ… Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠΉ ΠΌΠ°ΡˆΠΈΠ½Ρ‹. Благодаря этому ядро ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмы Π·Π°Ρ‰ΠΈΡ‰Π΅Π½ΠΎ ΠΎΡ‚ Π²Π»ΠΈΡΠ½ΠΈΡ со ΡΡ‚ΠΎΡ€ΠΎΠ½Ρ‹ Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ². Код с ΠΎΡˆΠΈΠ±ΠΊΠ°ΠΌΠΈ ΠΈΠ»ΠΈ врСдоносноС ΠŸΠž Π½Π΅ ΡΠΌΠΎΠ³ΡƒΡ‚ ΠΈΡΠΏΠΎΡ€Ρ‚ΠΈΡ‚ΡŒ систСму ΠΈΠ»ΠΈ само устройство. Ѐункция Π·Π°Ρ‰ΠΈΡ‚Ρ‹, ΠΊΡ€ΠΎΠΌΠ΅ нСпосрСдствСнного выполнСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°, являСтся ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ· ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Ρ… для этого уровня.

3) Π‘Π»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ — Application Framework, ΠΈΠ»ΠΈ каркас ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. ИмСнно Ρ‡Π΅Ρ€Π΅Π· каркасы ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ ΠΏΠΎΠ»ΡƒΡ‡Π°ΡŽΡ‚ доступ ΠΊ API, прСдоставляСмым ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π°ΠΌΠΈ систСмы, Π»Π΅ΠΆΠ°Ρ‰ΠΈΠΌΠΈ Π½ΠΈΠΆΠ΅ ΡƒΡ€ΠΎΠ²Π½Π΅ΠΌ. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, благодаря Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π΅ Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠ°, Π»ΡŽΠ±ΠΎΠΌΡƒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡŽ ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‚ΡΡ ΡƒΠΆΠ΅ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½Ρ‹Π΅ возмоТности Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, ΠΊ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΎ ΠΏΠΎΠ»ΡƒΡ‡Π°Ρ‚ΡŒ доступ.

Π’ Π±Π°Π·ΠΎΠ²Ρ‹ΠΉ Π½Π°Π±ΠΎΡ€ сСрвисов ΠΈ ΡΠΈΡΡ‚Π΅ΠΌ, Π»Π΅ΠΆΠ°Ρ‰ΠΈΡ… Π² ΠΎΡΠ½ΠΎΠ²Π΅ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ прилоТСния ΠΈ ΡΠ²Π»ΡΡŽΡ‰ΠΈΡ…ся частями Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠ°, входят:

Β· Π‘ΠΎΠ³Π°Ρ‚Ρ‹ΠΉ ΠΈ Ρ€Π°ΡΡˆΠΈΡ€ΡΠ΅ΠΌΡ‹ΠΉ Π½Π°Π±ΠΎΡ€ прСдставлСний (Views), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ использован для создания Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½Ρ‹Ρ… ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ² ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, списков, тСкстовых ΠΏΠΎΠ»Π΅ΠΉ, Ρ‚Π°Π±Π»ΠΈΡ†, ΠΊΠ½ΠΎΠΏΠΎΠΊ ΠΈΠ»ΠΈ Π΄Π°ΠΆΠ΅ встроСнного web-Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°.

Β· ΠšΠΎΠ½Ρ‚Π΅Π½Ρ‚-ΠΏΡ€ΠΎΠ²Π°ΠΉΠ΄Π΅Ρ€Ρ‹ (Content Providers), ΡƒΠΏΡ€Π°Π²Π»ΡΡŽΡ‰ΠΈΠ΅ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΎΠ΄Π½ΠΈ прилоТСния ΠΎΡ‚ΠΊΡ€Ρ‹Π²Π°ΡŽΡ‚ для Π΄Ρ€ΡƒΠ³ΠΈΡ…, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Ρ‚Π΅ ΠΌΠΎΠ³Π»ΠΈ ΠΈΡ… ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для своСй Ρ€Π°Π±ΠΎΡ‚Ρ‹.

Β· ΠœΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€ рСсурсов (Resource Manager), ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°ΡŽΡ‰ΠΈΠΉ доступ ΠΊ Ρ€Π΅ΡΡƒΡ€ΡΠ°ΠΌ Π±Π΅Π· Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ (Π½Π΅ Π½Π΅ΡΡƒΡ‰ΠΈΠΌΠΈ ΠΊΠΎΠ΄Π°), Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΊ ΡΡ‚Ρ€ΠΎΠΊΠΎΠ²Ρ‹ΠΌ Π΄Π°Π½Π½Ρ‹ΠΌ, Π³Ρ€Π°Ρ„ΠΈΠΊΠ΅, Ρ„Π°ΠΉΠ»Π°ΠΌ ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠΌ.

Β· ΠœΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€ ΠΎΠΏΠΎΠ²Π΅Ρ‰Π΅Π½ΠΈΠΉ (Notification Manager), благодаря ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌΡƒ всС прилоТСния ΠΌΠΎΠ³ΡƒΡ‚ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Ρ‚ΡŒ собствСнныС увСдомлСния для ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ Π² ΡΡ‚Ρ€ΠΎΠΊΠ΅ состояния.

Β· ΠœΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€ дСйствий (Activity Manager), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ управляСт ΠΆΠΈΠ·Π½Π΅Π½Π½Ρ‹ΠΌΠΈ Ρ†ΠΈΠΊΠ»Π°ΠΌΠΈ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, сохраняСт Π΄Π°Π½Π½Ρ‹Π΅ ΠΎΠ± ΠΈΡΡ‚ΠΎΡ€ΠΈΠΈ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Π΄Π΅ΠΉΡΡ‚виями, Π° Ρ‚Π°ΠΊΠΆΠ΅ прСдоставляСт систСму Π½Π°Π²ΠΈΠ³Π°Ρ†ΠΈΠΈ ΠΏΠΎ Π½ΠΈΠΌ.

Β· ΠœΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€ мСстополоТСния (Location Manager), ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΠΉ прилоТСниям пСриодичСски ΠΏΠΎΠ»ΡƒΡ‡Π°Ρ‚ΡŒ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅ ΠΎ Π³Π΅ΠΎΠ³Ρ€Π°Ρ„ичСском ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ устройства.

Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, прилоТСния Π² ΠžΠ‘ Android ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΠΎΠ»ΡƒΡ‡Π°Ρ‚ΡŒ Π² ΡΠ²ΠΎΡ‘ распоряТСниС Π²ΡΠΏΠΎΠΌΠΎΠ³Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ инструмСнты.

ΠžΡ‚Π»ΠΈΡ‡ΠΈΡ Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠ° ΠΎΡ‚ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ

Β· Π€Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ выполняСт ΠΊΠΎΠ΄, написанный для Π½Π΅Π³ΠΎ, Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ ΠΈΡΠΏΠΎΠ»Π½ΡΡŽΡ‚ΡΡ сами.

Β· Π€Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊ состоит ΠΈΠ· Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ с Ρ€Π°Π·Π½ΠΎΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒΡŽ ΠΈ Π½Π°Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ, Π° Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΡΡŽΡ‚ Π½Π°Π±ΠΎΡ€Ρ‹ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ, Π±Π»ΠΈΠ·ΠΊΠΈΡ… ΠΏΠΎ Π»ΠΎΠ³ΠΈΠΊΠ΅.

4) Π£Ρ€ΠΎΠ²Π΅Π½ΡŒ Applications. Бюда относятся Π±Π°Π·ΠΎΠ²Ρ‹Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, прСдустановлСнныС Π½Π° Android. Π­Ρ‚ΠΎ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€, ΠΏΠΎΡ‡Ρ‚ΠΎΠ²Ρ‹ΠΉ ΠΊΠ»ΠΈΠ΅Π½Ρ‚, ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° для ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠΈ SMS, ΠΊΠ°Ρ€Ρ‚Ρ‹, ΠΊΠ°Π»Π΅Π½Π΄Π°Ρ€ΡŒ, ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€ ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚ΠΎΠ². Бписок ΠΈΠ½Ρ‚Π΅Π³Ρ€ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΌΠ΅Π½ΡΡ‚ΡŒΡΡ Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡ‚ΠΈ ΠΎΡ‚ ΠΌΠΎΠ΄Π΅Π»ΠΈ устройства ΠΈ Π²Π΅Ρ€ΡΠΈΠΈ Android. Π’Π°ΠΊΠΆΠ΅ Π½Π° ΡΡ‚ΠΎΠΌ ΡƒΡ€ΠΎΠ²Π½Π΅ располагаСтся стороннСС ΠŸΠž. БистСма позволяСт ΡƒΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°Ρ‚ΡŒ Π΅Π³ΠΎ Π±Π΅Π· ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠΉ, поэтому всС стандартныС прилоТСния ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ Π·Π°ΠΌΠ΅Π½Π΅Π½Ρ‹ Π°Π½Π°Π»ΠΎΠ³Π°ΠΌΠΈ. ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ для Android ΠΏΠΈΡˆΡƒΡ‚ΡΡ Π½Π° ΡΠ·Ρ‹ΠΊΠ΅ Java.

Π—Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅

android ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠΉ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹ΠΉ ΠžΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΠΈ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρ‹ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ Google Android ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΠ»ΠΈ Π΅ΠΉ Π²Ρ‹ΠΉΡ‚ΠΈ Π½Π° ΠΏΠ΅Ρ€Π²ΠΎΠ΅ мСсто срСди Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌ. Π“Π»Π°Π²Π½Ρ‹Π΅ ΠΈΠ· Π½ΠΈΡ…:

1) Π“Ρ€Π°ΠΌΠΎΡ‚Π½ΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½ΠΎΠ΅ ядро, заимствованноС Ρƒ ΡΠΈΡΡ‚Π΅ΠΌΡ‹ Linux.

2) РСгистр-ориСнтированная Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Π°Ρ машина Dalvik для выполнСния ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ.

3) Π˜Π½Π½ΠΎΠ²Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Π΅ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ, Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Ρ€Π°ΡΡˆΠΈΡ€ΡΡŽΡ‰ΠΈΠ΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π» устройств.

4) «Π›Π΅Π³ΠΊΠΎΠ²Π΅ΡΠ½Π°Ρ» Π‘Π£Π‘Π” SQLite для хранСния Π΄Π°Π½Π½Ρ‹Ρ….

5) Π’ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ 3D ΠΈ 2D Π³Ρ€Π°Ρ„ΠΈΠΊΠΈ, ΠΈ Π΄Π°ΠΆΠ΅ комбинирования ΠΈΡ… Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ.

6) ΠœΠ½ΠΎΠ³ΠΎΠ·Π°Π΄Π°Ρ‡Π½ΠΎΡΡ‚ΡŒ ΠΈ ΠΈΠ·ΠΎΠ»ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΡΡ‚ΡŒ процСссов Π΄Ρ€ΡƒΠ³ ΠΎΡ‚ Π΄Ρ€ΡƒΠ³Π°.

7) Π£Π½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρ‹ наряду с Π²Ρ‹ΡΠΎΠΊΠΈΠΌ качСством.

Бписок источников

1. Π“ΠΎΠ»ΠΎΡ‰Π°ΠΏΠΎΠ² А. Π›. Google Android: систСмныС ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ ΠΈ ΡΠ΅Ρ‚Π΅Π²Ρ‹Π΅ ΠΊΠΎΠΌΠΌΡƒΠ½ΠΈΠΊΠ°Ρ†ΠΈΠΈ. — Π‘Пб.: Π‘Π₯Π’-ΠŸΠ΅Ρ‚Π΅Ρ€Π±ΡƒΡ€Π³, 2012. — 384 c.

2. Π€Π΅Π»ΠΊΠ΅Ρ€ Π”. Android: Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ для Ρ‡Π°ΠΉΠ½ΠΈΠΊΠΎΠ². — Πœ.: Π”ΠΈΠ°Π»Π΅ΠΊΡ‚ΠΈΠΊΠ°, 2012. — 336 с.

3. Π₯ашими Π‘., ΠšΠΎΠΌΠ°Ρ‚ΠΈΠ½Π΅Π½ΠΈ Π‘., Маклин Π”. Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ для Android. — Π‘Пб.: ΠŸΠΈΡ‚Π΅Ρ€, 2011. — 736 с.

ΠŸΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ вСсь тСкст
Π—Π°ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ Ρ„ΠΎΡ€ΠΌΡƒ Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ Ρ€Π°Π±ΠΎΡ‚ΠΎΠΉ