Դաս 3 – Android Develpment: Architecture

0

Android օպերացիոն համակարգը իրենից ներկայացնում է ծրագրային բաղադրիչների խումբ, որը բաժանված է հինգ մասերի և չորս հիմնական շերտերի, ինչպես ցույց է տրված ստորև ներկայացված դիագրամյում:

architecture

Linux kernel

Ներքևի մասում գտնվում է Linux – Linux 3.6 մոտավորապես 115 patche-երով։ Այն ապահովում է աբստրակցիայի մակարդակը ապարատային սարքի միջև և պարունակում է բոլոր անհրաժեշտ hardware driver-ները, ինչպիսիք տեսախցիկը, ստեղնաշարը, դիսփլեյը այլն: Բացի այդ, kernel-ը  նաև զբաղվում է բոլոր այն բաներով, որից Linux, իրոք, լավ է, ինչպիսիք են ցանցային և լայն սպեկտոռի սարքերի driver-ները։

Libraries

Linux kernel-ի վերևի մասում գտնվում է Libraries set-ը (գրադարաններ), որը ներառում է Web browser engine WebKit-ը, հայտնի libc, SQLite տվյալների բազան, որը օգտակար շտեմարան է  հավելվածի տվյալների պահպանման և փոխանակման համար, librarie-ներ նվագարկելու, աուդիո և վիդեո ձայնագրելու համար, ինչեպս նաև SSL, որը  պատասխանատու է Ինտերնետ անվտանգության համար և այլն:

Android Libraries

Այս կատեգորիան ներառում է Java-ի վրա հիմնված Librarie-ները, որոնք հատուկ են Android ծրագրավորմանը: Այս կատեգորիայի Librarie-ների օրինակները  ներառում են application framework librarie-ները՝ user interface-ի կառուցման, գրաֆիկական պատկերի տվյալների բազայի հասանելիության հետ միասին: Որոշ առանցքային Android librarie-ներ, որոնք հասանելի են Android ծրագրավորողների համար հետևյալն են՝

android.app – Ապահովում է մուտք դեպի հավելվածի մոդելի և բոլոր Android հավելվածների հիմնասյուն է։

android.content – Նպաստում է բովանդակության հասանելիությանը, publishing և messagin հավելվածների և հավելվածի բաղադրիչների միջև:

android.database – Ապհովում է մուտքը դեպի տվյալներ, որոնք հրապարակվել են content provider-ների կողմից և իր մեջ ներառում է SQLite QLite database management classes։

android.opengl – Java ինտերֆեյս OpenGL ES 3D graphics rendering API-ի համար։

android.os – Ապահովում է հավելվածին ստանդարտ օպերացիոն համակարգի ծառայություններով, որոնց թվում են՝ messages, system services և inter-process communication։

android.text – Օգտագործվում է տեքստը սարքի էկրանին վիզուլիզացնելու և շահարկելու համար։

android.view – հիմնական կառուցողական նյութը հավելվածի user interface-ի համար։

android.widget – նախապես կառուցված user interface-ի բաղադրիչների հարուստ հավաքածու, ինչպիսիք են buttons, labels, list views, layout managers, radio buttons և այլն։

android.webkit – հավաքածու, որը նախատեսված է վեբ-բրաուզինգը հասանելի դարձնել հավելվածում։

Android runtime – ում Java վրա հիմնված հիմնական librarie-ները հաղթահարելուց հետո, եկել է ժամանակը ուշադրություն դարձնել C / C ++ վրա հիմնված librarie-ներին, որոնք ներառված են Android software-ի փաթեթում։

Android Runtime

Սա architecture-ի երրորդ բաժինը է և գտնվում է երկրորդ շերտի ներքևում։ Այս բաժինը ապահովում է առանցքային բաղադրիչը՝ Dalvik Virtual Machine-ը, որը Java Virtual Machine-ի մի տեսակ՝ հատուկ նախագծված և օպտիմիզացված Android-ի համար։

Dalvik VM օգտկար է դարձնում Linux-ի հիմնական առանձնահատկությունները, ինչպիսիք են memory management և multi-threading, որոնք կազմում են  Java ծրագրվորման լեզվի անբաժան մասը: Dalvik VM հնարավորություն է տալիս ամեն Android հավելվածին առաջադրել իր սեփական գործընթացը, իր սեփական Dalvik VM-ով։

Android Runtime-ը ապահովում է նաև մի շարք հիմնական librarie-ներ, որը հնարավորություն է տալիս Android ծրագրավորողներին գրել Android հավելվածներ՝ օգտագործելով ստանդարտ Java ծրագրավորման լեզու։

Application Framework

Application Framework շերտը ապահովում է հավելվածներին բազմաթիվ բարձր մակարդակի ծառայություններով Java դասերի ձևով: Ծրագրավորողները կարող են օգտվել այդ ծառայություններից իրենց հավելվածներում։

Android Framework ներառում է հետևյալ հիմնական ծառայությունները –

Activity Manager – վերահսկում է հավելվածի կյանքի ցիցլկի բոլոր ասպեկտները և գործունեությունը։

Content  Providers – Թույլ է տալիս հավելվածին հրապարակելու և կիսել տվյալներով այլ ծրագրերի հետ։

Resource Manager – Ապահովում է մուտք դեպի ոչ-կոդային աղբյուները, ինչպիսիք են տողերը, գունավոր պարամետրերը և ինտերֆեյսի դասավորությունը։

Notifications Manager- Թույլ է տալիս հավելվածին ուղղարկել հիշեցումներ և ծանուցումներ օգտատերին։

View System- view-ների հավաքածու, որը օգտագործվում է user interface-ներ  ստեղծելու համար։

Applications

Դուք կարող եք գտնել բոլոր այն Android հավելվածները վերևի շերտում: Ձեր գրած հավելվածները կտեղադրվեն միայն այս շերտում։ Նման հավելվածների օրինակներն են՝ Contacts Books, Browser, Games և այլն։

Share.