Операційна система Android

Даний дипломний проект повинен бути реалізований для смартфонів з операційною системою Android. Android — операційна система і платформа для мобільних телефонів та планшетних комп'ютерів, створена компанією Google на базі ядра Linux. Підтримується альянсом Open Handset Alliance (OHA). Хоча Android базується на ядрі Linux, він стоїть дещо осторонь Лінукс-спільноти та Лінукс-інфраструктури. Базовим елементом цієї операційної системи є реалізація Dalvik віртуальної машини Java, і все програмне забезпечення і застосування спираються на цю реалізацію Java. Android, Inc. була заснована в Пало-Альто, у Каліфорнії, у жовтні 2003 року Енді Рубін (Andy Rubin, співзасновник компанії Danger), Річ Майнер (Rich Miner, співзасновник Wildfire Communications, Inc.), Нік Сірс (Nick Sears, колишній віце-президент компанії T-Mobile) і Кріс Уайт (Chris White, очолював дизайн і розробку інтерфейсу в WebTV) для розробки, за словами Рубіна «більш розумних мобільних пристроїв, які краще знають про місце перебування власника і його вподобання». Ранні наміри компанії полягали в тому, щоб розробити вдосконалену операційну систему для цифрових фотоапаратів, але було зрозуміло, що ринок пристроїв не був достатньо великим, і вони спрямували свої зусилля на розробку операційної системи для смартфонів, щоб конкурувати з Symbian і Windows Mobile (на той момент Apple ще не випустила iPhone).

Незважаючи на минулі досягнення засновників і ранніх співробітників, Android, Inc. працювала таємно, показуючи тільки, що вона працювала над програмним забезпеченням для мобільних телефонів. У той же самий рік Рубін залишився без грошей. Стів Перлман, близький друг Рубіна, приніс йому 10 тис. доларів готівкою у конверті та відмовився від своєї частки в компанії.

12 листопада 2007 OHA представила засоби для розробки ПЗ для Android'а (software development kit) для ознайомлення, яка включала засоби для розробки та відлагодження програм, бібліотеки, емулятор, документацію, приклади програм, навчальний посібник (tutorial), FAQs та інше. Для розробки необхідно завантажити Android SDK для x86 платформ з Windows XP або Vista, Mac OS X 10.4.8 чи старшою, або Ubuntu Linux (Dapper Drake або старшу версію). Під іншими дистрибутивами Linux'а також повинно працювати, але напряму, така можливість, не підтримується. Також необхідно встановлений Eclipse 3.2 або старшу, з Java Development Tools та плагіном Android SDK, або Java і Javac 1.5 або 1.6, Apache Ant, та Python 2.2. Програми для Android є програмами в нестандартному байт-коді для віртуальної машини Dalvik.

Google пропонує для вільного завантаження інструментарій для розробки (Software Development Kit), який призначений для x86-машин під операційними системами Linux, Mac OS X (10.4.8 або вище), Windows XP, Windows Vista та Windows 7. Для розробки потрібен Java Development Kit 5 або новіший.

Розробку додатків для 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 рекомендується використовувати для розробки ділянок коду, критичних до швидкості.

Версії: Перша версія Android була випущена 23 вересня 2008 року і носила назву 1.0 Astroboy, а наступна — 1.1 Bender. Від назв у честь відомих роботів згодом довелося відмовитися через розбіжності з правовласниками. З 2008 року Android пережив численні оновлення, які поступово покращували операційну систему, додаючи нові функції, та виправляли помилки у попередніх випусках. І тепер кодове ім'я кожного великого релізу Android, починаючи з версії 1.5, являє собою назву якого-небудь десерту. Перші букви найменувань в порядку версій відповідають літерами латинського алфавіту (курсивом виділено майбутні і/або непідтверджені версії):

1.5 Cupcake («кекс»),

1.6 Donut («пампушка»),

2.0/2.1 Eclair («еклер» або «глазур»),

2.2 Froyo (скорочення від «заморожений йогурт»),

2.3 Gingerbread («імбирний пряник»),

3.0 Honeycomb («медові стільники»),

4.0 Ice Cream Sandwich («брикет морозива»),

4.1/4.2/4.3 Jelly Bean («желейні боби»),

4.4 KitKat (на честь однойменного бренду шоколадних батончиків),

Licorice («локриця»),

Marshmallow («зефір»),

Nougat («нуга»).

Платформа легко пристосовується для використання VGA, 2D графічних бібліотек, 3D графічних бібліотек розроблених на основі OpenGL ES 1.0 специфікації, традиційних інструментаріїв для смартфонів. Програми написані на Java можна скомпілювати в Dalvik байткод і виконувати на Dalvik virtual machine, яка являє собою розроблену спеціально для використання на мобільних пристроях VM'у, не зважаючи на те, що не є стандартною Java Virtual Machine. Отже, щоб створити чат-програму для операційної системи Android, мені потрібно використовувати мову програмування Java.