Програмиране за Android

вкл. 09 септември 2013 г. Публикувано в статии

android

Идеята на платформата за Android е изненадваща и продължава да изумява и, разбира се, привлича все повече програмисти всеки ден. Особено отворена архитектура, която ви позволява да променяте всичко, дори стандартните приложения.

програмиране

Предайте потенциален GPhone.

Нека да разгледаме какво подчертава OHA в своята платформа за Android:

Откритост

Вярно е, че като разработчик можете да правите всичко - от изпращане на кратки съобщения само с два реда код до подмяна дори на началния екран на вашето устройство. Можете лесно да създадете и напълно персонализирате операционна система в рамките на няколко седмици, като вече не предоставяте на потребителя стандартните приложения на Google.

"Android е изграден върху ядрото на Linux с отворен код. Той също така използва персонализирана виртуална машина, която е проектирана да оптимизира паметта и хардуерните ресурси в мобилна среда. Android е с отворен код и може да включва нови съвременни технологии, когато станат достъпни. Това е платформата ще продължи да се развива, докато разработчиците пускат нови приложения ".

Тук Google говори за така наречената виртуална машина Dalvik (DalvikVM), която е базирана на регистър. Виртуалната машина, проектирана и написана от Дан Борнстейн и някои други инженери на Google, за да бъде съществена част от платформата Android. В думите "базирани на регистър" намираме първата разлика от нормалните Java виртуални машини (JVM), които са базирани на стека. Вижте "Dalvik.equals (Java) == FALSE" - глава за повече подробности по този въпрос.

Всички приложения са равни

Отново всичко това е вярно. Разработчиците могат да персонализират своето устройство с Android на 100%. Комуникационната система на Android е изградена около така наречените цели, които представляват просто низ (вероятно с някои параметри), който определя действията, които трябва да бъдат обработвани. Пример за това е: "android.provider.Telephony.SMS_RECEIVED"

Можете просто да слушате това намерение, като напишете 5 реда дефиниции. След това ще достигне до системата, че има повече от едно приложение, което иска да обработи това намерение, и ще поиска от потребителя да избере кое приложение ще обработва това намерение.

Нарушаване на ограниченията за приложение

Бърза и лесна разработка на приложения

„Android предоставя достъп до широк спектър от полезни библиотеки и инструменти, които могат да се използват за създаване на сложни приложения. Например, Android дава на разработчиците възможност да получат местоположението на устройството и позволява на устройствата да взаимодействат помежду си. В допълнение, Android съдържа пълен набор от инструменти, създадени от нулата, заедно с платформата, осигуряващи на разработчиците висока производителност и задълбочено разбиране на тяхното приложение ".

След революцията Web 2.0 изграждането на богати на информация приложения за минути вече не е илюзия. Android внесе неизвестни скорости в разработката. Позволете ми да ви покажа пример: Наскоро се натъкнах на модната дума „DrivingDirections“ в документацията за Android.

виртуална машина

Внедряването от Google на DrivingDirections в Android.

Процесът на разработка на приложението в изображението по-горе отне около час и половина! (Включително опростен потребителски интерфейс и всички изображения, които виждате). Бихте ли могли да създадете толкова сложно приложение на друга мобилна платформа? - Не.

Освен това това приложение може да бъде добавено за определяне на текущата позиция на устройството чрез GPS с много малък брой линии. Google подчертава силата на навигацията за Android, базирана на местоположение. Google Maps са толкова свежи в Android, сякаш са създадени само за Android. Възможно е да интегрирате напълно мащабиране и плъзгане на картата, като добавите само три (!) Знака в Java кода на стандартно приложение за Android и три реда XML код. Други приятни функции, които са полезни при Android, са анимации и възпроизвеждане на музика. Започвайки от версия m5, Android SDK съдържа функции за геокодиране напред и назад и освен mp3 възпроизвеждане: ogg, MIDI и някои други формати.

За съжаление разработчиците трябваше да се справят с непълно внедрен SDK за предварителен преглед (първа версия, компилация 'm3-rc20'), където някои ключови части на SDK бяха дори слабо регистрирани. Имаше сериозна липса на документация, изявление от Google:

„Ако не е документирано, все още не кандидатства за работа.“

Друга досадна грешка беше накъсаният звук на емулатора, за който се твърди, че е фиксиран в компилация 'm3-rc37a' около 4 седмици по-късно, но все пак се е случил на някои инсталации преди m5.

Защо „Далвик“? - Виртуалната машина на Далвик е кръстена Борнщайн на рибарското село Далвик в Исландия, където са живели някои от предците му.

Dalvik е името на виртуалната машина на Android. Това е само интерпретатор виртуална машина, която изпълнява файлове във формат Dalvik Executable (* .dex), формат, който е оптимизиран за ефективно изпълнение на паметта и разпределяне на паметта. Виртуалната машина се основава на казуси и може да изпълнява класове, компилирани от компилатора на езика Java, които са преобразувани в нейния естествен формат с помощта на включения инструмент "dx". Виртуалната машина работи на ядро ​​на Linux 2.6, за да подкрепи функционалността (като нишки и управление на паметта на ниско ниво). DalvikVM също е оптимизиран да работи на множество екземпляри от клас памет на ниско ниво. Няколко виртуални машини защитават приложението от унищожаване от друго унищожено приложение.

Разлики от обичайните JavaVM

JavaVM, която днес може да бъде намерена на почти всички настолни компютри, е виртуална машина (VM), базирана на стека. DalvikVM, от друга страна, е базиран на регистър, тъй като мобилните процесори са оптимизирани за изпълнение, базирано на регистър. Също така базирани на регистър виртуални машини позволяват по-бързо време за изпълнение поради повече програми след превод.