Ідея платформи Android дивувала і продовжує дивувати і, звичайно, привертає все більше і більше програмістів кожен день. Особливо відкритою архітектурою, що дозволяє змінити все, що завгодно, навіть зі стандартними програмами.
Render потенційного GPhone.
Давайте поглянемо, що OHA виділяє в своїй платформі Android:
Це правда, як розробник ви можете робити все, від відправки коротких повідомлень з тільки двома рядками коду, до заміни навіть домашнього екрану вашого пристрою. Можна легко створити і повністю налаштувати операційну систему протягом декількох тижнів, котрі дають більше стандартні програми Google користувачеві.
"Android побудована на відкритому ядра Linux. Крім того, вона використовує призначену для користувача віртуальну машину, яка була призначена для оптимізації пам'яті і апаратних ресурсів в мобільному середовищі. Android має відкритий вихідний код, в нього можуть бути включені нові сучасні технології в міру їх появи. Ця платформа буде продовжувати розвиватися, поки розробники виробляють нові додатки ".
Тут Google говорить про так званих Dalvik віртуальної машині (DalvikVM), яка заснована на регістрах. Віртуальна машина, розроблена і написана Dan Bornstein і деякими іншими інженерами Google, щоб бути важливою частиною платформи Android. У словах "на основі регістрів" ми знаходимо перша відмінність від нормальних віртуальних машинах Java (JVM), які засновані на стеку. Див. "Dalvik.equals (Java) == FALSE" - главу для більш докладної інформації з цього питання.
Всі додатки рівні
Знову все це правда. Розробники можуть 100% налаштувати своє Android-пристрій. Система зв'язку Андроїда побудована на основі так званих цілей, які є просто рядком (можливо, з деякими параметрами), що визначає дії, які повинні бути оброблені. Прикладом цього є: "android.provider.Telephony.SMS_RECEIVED"
Можна просто слухати про це Intent, написавши 5 рядків визначень. Потім до системи дійде, що є більш ніж один додаток, яке хоче обробляти цей Intent, і вона попросить користувача вибрати, яке з додатків буде обробляти цей Intent.
Руйнування обмежень додатки
Швидка і проста розробка додатків
"Android надає доступ до широкого спектру корисних бібліотек і інструментів, які можуть бути використані для створення складних додатків. Наприклад, Android дає розробникам можливість отримати розташування пристрою і дає їм змогу взаємодіяти один з одним. Крім того, Android містить повний набір інструментів, які були створені з нуля, разом з платформою, що забезпечує розробникам високу продуктивність і глибоке розуміння їх застосування ".
Після революції Web 2.0, створення наповнених інформацією додатків в лічені хвилини більше не є ілюзією. Андроїд приніс в розробку невідомі швидкості. Дозвольте мені показати приклад: Нещодавно я спіткнувся об розумне слово 'DrivingDirections' в документації андроїда.
Google реалізація DrivingDirections в Андроїд.
Процес розробки програми в зображенні вище зайняв приблизно півтори години! (Включаючи простий користувальницький інтерфейс і все зображення, які Ви бачите). Можна було створити такий складний додаток на будь-який інший мобільній платформі? - Ні.
Додатково в цей додаток могло бути додано визначення поточної позиції пристрою через GPS з зовсім невеликою кількістю рядків. Google підкреслює потужність навігації Андроїда на основі служб розташування. Карти Google є настільки чіткими в межах Андроїда, як ніби вони був розроблені тільки для Андроїда. Можна інтегрувати, повністю змінюють масштаб зображення і перетягують карту, додаючи тільки три (!) Символу в java-коді стандартного додатка Андроїда і три рядки XML-коду. Іншими хорошими особливостями, які зручні з андроїдом, є Анімація і відтворення музики. Починаючи з версії m5 Андроїд SDK містить функції для прямого і зворотного геокодування і, на додаток до mp3, відтворення: ogg, MIDI і деяких інших форматів.
На жаль розробники повинні були мати справу з не повністю здійсненим preview-SDK (перша версія, білд 'm3-rc20'), де деякі ключові частини SDK навіть були погано зареєстровані. Була гостра нестача документації, заяву від Google:
"Якщо воно не було документовано - воно ще не претендує на роботу."
Іншим дратівливим багом був мінливий звук емулятора, який, було сказано, пофіксено в білді 'm3-rc37a' приблизно 4 тижні, але все ще траплявся на деяких установках до m5.
Чому "Dalvik"? - Віртуальну машину Dalvik назвав Bornstein в честь рибальського села Dalvik в Ісландії, де деякі з його предків жили.
Dalvik - назва віртуальної машини Андроїда. Це - віртуальна машина тільки для інтерпретатора, яка виконує файли в Dalvik Executable (* .dex) форматі, форматі, який оптимізований для ефективної пам'яті і розподіляється пам'яттю виконання. Віртуальна машина заснована на регістрі, і вона може виконати класи, відкомпілювалися мовним компілятором Java, які були перетворені в його рідній формат з використанням включеного "dx" інструменту. VM запущена на Linux 2.6 ядрі, щоб лежати в основі функціональних можливостей (таких як організація потокової обробки і управління пам'яттю низького рівня). DalvikVM був також оптимізований, щоб працювати у множинних примірниках класу з пам'яттю низького рівня. Кілька VMs захищають додаток від руйнування іншим зруйнованим Додатком.
JavaVM, якого можна знайти на багатьох настільному комп'ютері в даний час, є заснованої на стеку Віртуальної Машиною (VM). DalvikVM, з іншого боку заснований регістр, тому що мобільні процесори оптимізовані для заснованого на регістрі виконання. Також засновані на регістрі VMs дозволяють більш швидкий час виконання за рахунок програм, яких більше після трансляції.