Wednesday, December 29, 2010

Програмиране на приложения за Андроид

android-logo

За Андроид

От известно време започнах да се интересувам от програмирането на приложения за Андроид операционна система, и реших да драсна два реда за нея . Андроид е операционна система базирана на Линукс със Java програмен интерфейс. Естественно и тя си има своите специфики Усмивка . За програмирането са осигурени инструменти, като компилатор, дебъгер и емулатор на Андроид устройства. Както може би по-вечето от вас знаят проекта Андроид се ръководи от Гугъл. Андроид използва специална Java виртуална машина наречена Dalvik. Има инструмент наречен “dx” с помоща на който може да се конвертира Java Class кода  във "dex" (Dalvik Executable) файлове. Приложенията за Андроид са пакетирани във формат .apk (Android Package) файлове. За да улесни работата на програмистите Гугъл е осигурил Инструменти за Програмиране за Андроид или Android Development Tools (ADT) за програмата Eclipse.  ADT осигурява автоматично конвертиране от java class във dex файлове, както и създаването на .apk приложения. Андорид поддържа 2-D и 3-D графики използвайки OpenGL библиотеките, както и SQLite база данни. Всяко Андроид приложение се стартира със свой собствен процес и е изолирано от другите стартирани приложения! Което си е добре с оглед на това, че ако едно приложение се увреди или бъгне по някакъв начин, то няма да попречи на работата на другите! Найс а?

Важни Андроид компоненти. 

Ето и някои от по важните компоненти за едно Андроид приложение.

  • Activity – Представя тип слой от приложението например екран, който потребителя ще вижда. Едно приложение може да има няколко слоя активности и може да превключва между тях по време на работа на проложението. Потребителския интерфейс на тези слоеве е изграден от widget класове които са свързани от "android.view.View" Слоевете view се управляват от  ViewGroups.
  • Services – Услугите ви осигуряват фонови задачи без наличието на интерфейс. Те могат да известяват потребителя посредством notification framework в Андроид.
  • Content Provider – Доставя данни от приложението . Благодарение на този компонент можете да споделяте данни с други приложения. Андроид съдържа SQLite база данни, която може да служи като доставчик на тези данни. 
  • Intents – Това са асинхронни съобщения, които позволяват приложението да иска функционалност от други услуги или дейности. Приложението може директно да извика услуга или дейност (explicit intent) или да извести  “системата за регистрация на услуги и приложения на Андроид”  за тези си намерения (implicit intents). Например приложението може да извика чрез Intent приложението за контакти. Приложението се регистрира посредством Intent филтър (IntentFilter).  Компонента Intent е много мощен инструмент благодарение на който можете да създавате свободно свързани приложения.
  • Broadcast Receiver  - Получава системни съобщения, както и асинхронни съобщения implicit intents (за справка виж малко по на-горе). Може да се използва за реакция при променящи се условия в системата. Приложението може да се регистрира като приемник (Broadcast Receiver ) за определени събития, и може да се стартира при наличието на такова (събитие).

Стига толкова за днес. Когато имам свободно време смятам да продължа по темата.

No comments:

Post a Comment