Автор работы: Пользователь скрыл имя, 21 Декабря 2013 в 19:13, лекция
Android (Андро́ід) - операційна система для смартфонів, планшетних комп'ютерів, електронних книг, цифрових програвачів, наручних годин, нетбуків і смартбуків, окулярів Google та інших пристроїв, заснована на ядрі Linux і власної реалізації Java від Google.
Хоча Android базується на ядрі Linux, він стоїть дещо осторонь Лінукс-спільноти та Лінукс-інфраструктури. Базовим елементом цієї операційної системи є реалізація Dalvik віртуальної машини Java, і все програмне забезпечення і застосування спираються на цю реалізацію Java.
1. Операційна система Android
2. Версії Android. Історія створення
3. Системна архітектура Android
4. Застосування на різних апаратних платформах
5. Розробка програмного забезпечення
6. Переваги та недоліки
7. Реалізація мультиплатформеності в Android
7.1. Формат інсталяційних пакетів .apk
7.1.1. Структура .apk
7.2. Віртуальна машина Dalvik
7.3. Архітектура ARM
7.4. Архітектура x86
7.5. Архітектура MIPS
7.6. WebKit
7.6.1. Історія створення WebKit
7.6.2. WebKit2
7.6.3. Компоненти WebKit
7.6.4. Програми, що використовують WebKit
Операційна система Android
Лекція
Операційна система Android
7. Реалізація мультиплатформеності в Android
7.1. Формат інсталяційних пакетів .apk
7.2. Віртуальна машина Dalvik
7.3. Архітектура ARM
7.4. Архітектура x86
7.5. Архітектура MIPS
7.6. WebKit
Література
1. Голощапов А. Google Android: программирование для мобильных устройств. - СПб.: БХВ-Петербург, 2010. - 448 с.
2. Коматинэни С., Маклин Д., Хэшими С. Google Android: программирование для мобильных устройств = Pro Android 2. - 1-е изд. - СПб.:Питер, 2011. - 736 с.
3. Сатия Коматинени,
Дэйв Маклин. Android 4 для профессионалов.
Создание приложений для
4. Роджерс Р., Ломбардо Д. Android. Разработка приложений. - М.: ЭКОМ Паблишерз, 2010. - 400 с.
5. Донн Фелкер. Android: разработка приложений. - М.: Диалектика, 2011. - 336 с.
1. Операційна система Android
Android (Андро́ід) - операційна система для смартфонів, планшетних комп'ютерів, електронних книг, цифрових програвачів, наручних годин, нетбуків і смартбуків, окулярів Google та інших пристроїв, заснована на ядрі Linux і власної реалізації Java від Google.
Хоча Android базується на ядрі Linux, він стоїть дещо осторонь Лінукс-спільноти та Лінукс-інфраструктури. Базовим елементом цієї операційної системи є реалізація Dalvik віртуальної машини Java, і все програмне забезпечення і застосування спираються на цю реалізацію Java.
Первісно розроблялася компанією Android Inc., яку потім купила Google. Згодом Google ініціювала створення альянсу Open Handset Alliance (OHA), який зараз займається підтримкою і подальшим розвитком платформи. Android дозволяє створювати Java-додатки, керуючі пристроєм через розроблені Google бібліотеки.
Android Native Development Kit дозволяє
портувати (але не
В 79,3 % смартфонів, проданих у другому кварталі 2013 року, була встановлена операційна система Android.
У липні 2005 року корпорація Google купила компанію Android Inc. 5 листопада 2007 року компанія офіційно оголосила про створення Open Handset Alliance і анонсувала відкриту мобільну платформу Android, а 12 листопада 2007 року альянс представив першу версію пакета для розроблювачів Android «Early Look» SDK і емулятор Android.
23 вересня 2008 року офіційно
вийшла перша версія
В 2009 році було презентовано цілих чотири оновлення платформи. Так, у лютому вийшла версія 1.1 з виправленням різних помилок. У квітні й вересні вийшли ще два оновлення - 1.5 «Cupcake» і 1.6 «Donut» відповідно. Оновлення «Cupcake» привнесло суттєві зміни: віртуальна клавіатура, відтворення і запис відео, браузер та інші. В «Donut» вперше з'явилися підтримка різних дозволів (разрешений) і щільності екрана й мереж CDMA. У жовтні того ж року вийшла версія операційної системи Android 2.0 «Eclair» з підтримкою декількох аккаунтів Google, підтримкою браузером мови HTML5 та інших нововведень, а також після невеликого оновлення в межах версії «Eclair» (2.1) з'явилися «живі шпалери» і був видозмінений екран блокування.
У середині 2010 року[ Google представила Android версії 2.2 під найменуванням «Froyo», а наприкінці 2010 року - Android 2.3 «Gingerbread». Після оновлення «Froyo» стало можливо використовувати смартфон у якості точки доступу, використовувати традиційне блокування смартфона цифровим або буквено-цифровим паролем та інші зміни, а оновлення «Gingerbread» привнесло більш повний контроль над функцією копіювання й вставки, покращення керування живленням і контролю над додатками, підтримку декількох камер на пристрої і т.д.
22 лютого 2011 року[ була офіційно представлена орієнтована на інтернет-планшети платформа Android 3.0 «Honeycomb».
Android 4.0 «Ice Cream Sandwich», що вийшла 19 жовтня 2011 року, - перша універсальна платформа, яка призначена як для планшетів, так і для смартфонів.
У червні 2012 вийшло оновлення за назвою «Jelly Bean» з порядковим номером 4.1, який змінився на 4.2 внаслідок невеликого оновлення наприкінці жовтня того ж року й на 4.3 після оновлення в липні 2013.
Вихід нової версії Android 5.0 «Key Lime Pie» заплановано на листопад 2013 року.
Рис.1. Версії Android
Системна архітектура Android наведена на рис.2.
Рис.2. Системна архітектура Android
Ядро Linux
Операційна система Android побудована на ядрі Linux. У нашому випадку Linux забезпечує рівень абстракцій між обладнанням та іншими частинами стека Android.
З погляду внутрішньої архітектури Android використовує Linux для керування пам'яттю, процесами, мережною взаємодією та іншими можливостями операційної системи. Користувачі Android ніколи не побачать Linux, а програми ніколи не будуть звертатися до служб Linux напряму.
Інструментарій
Платформа легко пристосовується для використання VGA, 2D графічних бібліотек, 3D графічних бібліотек розроблених на основі OpenGL ES 1.0 специфікації, традиційних інструментаріїв для смартфонів.
Бази даних
SQLite для структурованих даних
Технології зв'язку
Android підтримує багато технологій, що забезпечують зв'язок, у тому числі: GSM, Bluetooth, EDGE, 3G та WiFi.
Обмін повідомленнями
Для обміну повідомленнями доступні як SMS, так і MMS сервіси, у тому числі й потокові повідомлення.
Веб браузери
На Android'і доступний веб браузер, розроблений на основі WebKit application framework.
Java Virtual Machine
Програми написані на Java можна скомпілювати в Dalvik байткод і виконувати на Dalvik virtual machine, яка являє собою розроблену спеціально для використання на мобільних пристроях VM'у, не зважаючи на те, що не є стандартною Java Virtual Machine.
Підтримка медіа
Android підтримує такі формати
для аудіо/відео даних та
Підтримка нестандартного обладнання
Android підтримує відеокамери, фотоапарати, дотикові екрани, GPS, компаси, акселерометри, та прискорювачі 3D графіки.
Середовище розробки
Містить емулятор, засоби відлагодження, профілювання пам'яті та швидкодії, плагін для Eclipse IDE.
Крім смартфонів і планшетів, операційну систему Android встановлюють також на інші пристрої. Так, наприкінці 2009 року з'явилася в продажу перша фоторамка, що працює на Android. У червні 2011 року італійська компанія Blue Sky анонсувала випуск інтелектуальних наручного годинника i’m Watch під керуванням ОС Android. У серпні 2012 року Nikon представила першу у світі фотокамеру, яка також працює на Android. У серії «Google Nexus» присутні не тільки смартфони і планшети, але й медіаплейер Nexus Q, працюючий на Android.
Крім того, ентузіасти портували Android на низку відомих пристроїв, серед яких, наприклад, смартфони на платформі Windows Mobile HTC Touch Dual і HTC TyTN II, на яких Android був запущений у режимі емуляції. Також було здійснено повноцінне портування на такі пристрої, як інтернет-планшети, працюючі на Maemo - Nokia N810 і Nokia N900 (порт за назвою Nitdroid), на смартфони Nokia N9, працюючий на платформі MeeGo, і HTC HD2, працюючий на операційній системі Windows Mobile, на якому ОС Android можна запускати як з microSD-карти, так і із внутрішньої NAND- пам'яті (тип flash- пам'яті). При цьому встановлена система має повну, нічим особливо не обмежену функціональність. Крім цього, є вдалий досвід установки Android на деякі пристрої Apple - iPhone, iPod Touch та iPad за допомогою спеціальної програми за назвою Openiboot, яка призначена для запуску на даних пристроях різноманітних ОС, у тому числі й Android. Вийшли прошивки з обмеженою функціональністю на пристроях на операційній системі Bada. Компанія Koolu не тільки зайнялася портуванням Android на Neo FreeRunner, але й будувала свій бізнес на продажі цих смартфонів із предустановленою мобільною платформою від Google. Перший офіційний і загальнодоступний бета-реліз порту Android на Neo Freerunner від Koolu відбувся в грудні 2008 року. Також Android портований на архітектуру x86.
У жовтні 2012 року що було активовано вже більш 500 мільйонів смартфонів і планшетів на базі Android, щодня активується 1,3 мільйони пристроїв на базі цієї операційної системи.
Програми для Android є програмами в нестандартному байт-коді для віртуальної машини Dalvik.
Google пропонує для вільного
завантаження інструментарій
Розробку додатків для Android можна вести мовою Java (не нижче Java 1.5). Існує плагін для Eclipse - «Android Development Tools» (ADT), призначений для Eclipse версій 3.3-3.7. Для IntelliJ IDEA також існує плагін, який полегшує розробку Android-додатків.. Для середовища розробки NetBeans розроблено плагін], який починаючи з версії Netbeans 7.0 перестав бути експериментальним, проте поки не є офіційним. Крім того існує Motodev Studio for Android, що являє собою комплексне середовище розробки, засноване на базі Eclipse і дозволяє працювати безпосередньо з Google SDK.
Крім того в 2009 році на додаток до ADT був опублікований Android Native Development Kit (NDK), пакет інструментаріїв і бібліотек дозволяє вести розробку додатків на мові С/С++. NDK рекомендується використовувати для розробки ділянок коду, критичних до швидкості.
Доступні бібліотеки:
В порівнянні із звичайними додатками Linux, додатки Android підкоряються додатковим правилам]:
Переваги
Android проявляє себе краще одного зі своїх конкурентів, Apple iOS, у низці особливостей, таких як веб-серфінг, інтеграція із сервісами Google Inc. та інших. Також Android, на відміну від iOS, є відкритою платформою, що дозволяє реалізувати на ній більше функцій.
Недоліки
Платформа базується на Java (спеціальна реалізація Dalvik), тому переваги і можливості операційної системи Linux на цій платформі практично не використовуються.
Наприклад, не використовується жоден з популярних графічних тулкітів і бібліотек (наприклад Qt або GTK), що робить малоймовірною появу значної кількості додатків, портованих з повноцінного десктопного варіанту Linux на цю платформу через відсутність поза вибором X-сервера і поширених графічних бібліотек.