Muhammad al-xorazmiy nomidagi tоshkent axbоrоt texnоlоgiyalari universiteti mustaqil ish mavzu



Download 384,13 Kb.
bet3/11
Sana26.02.2022
Hajmi384,13 Kb.
#468679
1   2   3   4   5   6   7   8   9   10   11
Bog'liq
11 (2)

2. Android platformasi haqida
Android (yunoncha so’z) odam sifat robot ma’nosini ifoda etadi. Balki mana shuning uchun Android operatsion tizimi logotipida robot tasvirlangandir.
Android operatsion tizimining yaratilishi tarixi 2002-yillardan boshlangan. Mana shu davrda Google korporatsiyasi yaratuvchilari E. Rubinning dasturiy ishlanmalari to’plami bilan qiziqib qoladilar. Dastlab mobil qurilmalar uchun yangi operatsion tizimni yaratish loyihasi bilan katta maxfiylik ostida Android Inc. Kompaniyasi shug’ullangan, ushbu kompaniyani keyinchalik Google sotib oladi.
Android Linux yadrosiga asoslangan kommunikatorlar, planshetli kompyuterlar, elektron kitoblar, raqamli musiqa uskunalari, qo’l soatlari, netbuklar va smartbuklar uchun portativ (tarmoqli) operatsion tizimdir.
Keyinchalik Google Open Handset Alliance (OHA) alyansini tashkil qildi, u hozirda ham platformani qo’llab-quvvatlash va yanada rivojlantirish bilan shug’ullanadi. Android Google tomonidan ishlab chiqilgan kutubxona orqali qurilmani boshqaruvchi Java-ilovasini yaratishga imkon beradi. Android Native Development Kit Si va boshqa tillarda yozilgan ilovalarni yaratadi.
2012-yilning uchinchi choragida sotilgan smartfonlarning 75 foizida Android operatsion tizimi o’rnatilgan.
Android ilovasi quyidagilardan iborat.
Android SDK (View, Activity, ContentProvider, Service, BroadcastReciever, niyat) va Android SDKda bir-birining vorisi bo'lmagan Java sinflari.

  • ilova bayonoti;

  • string, rasm va boshqalar kabi manbalar;

  • fayllar.

Darhaqiqat, ko'plab sinflar mavjud, ammo bular asosiy hisoblanadi. Sariq sarg'ish - ishlab chiquvchi to'g'ridan-to'g'ri ishlaydi (xususan ulardan meros olingan). Qolganlari juda muhim, ammo kamroq keng tarqalgan bo'lib qo'llaniladi.
View- barcha foydalanuvchi interfeysi vidjetlari uchun asosiy sinf hisoblanadi (GUI vidjetlari). Android dasturining interfeysi bu sinfning vorislari daraxt ko’rinishidadir. Ushbu daraxtni muntazam ravishda yaratishingiz mumkin, ammo bu noto'g'ri. Foydalanuvchi interfeysi XML (qatlamli fayllar, tartib-fayllar) yordamida aniqlanadi (Androidni ifodalash) [3].
Activity klassi va uning pastki sinflari foydalanuvchi interfeysi ortidagi mantiqni o'z ichiga oladi. Yaqindan tekshirish bo'yicha ushbu sinf ViewModelga Model-View-ViewModel modelida mos keladi (MVVM). Activityning ostki klassi va foydalanuvchi interfeysi o'rtasidagi munosabatlar tur xildir. Odatda, har bir activity ostki klassida u bilan bog'langan faqat bitta UI qatlami mavjud va aksincha. Activity sikl jarayoniga ega.
Sikl davrida Activity uchta holatdan birida bo'lishi mumkin:
Faol va ishlayotgan - bu foydalanuvchi interfeysi oldingi o'rinda (texnik jihatdan - faollashtirish stackining yuqori qismida).
To'xtatildi - bu foydalanuvchi interfeysi e'tiborda chetda qolgan holat. Bu holatda kod bajarilmaydi.
Tugallangan - agar foydalanuvchi interfeysi ko'rinmasa. Ushbu holatda, kod ijro etilmaydi.
ContentProvider sinf va uning voris sinflari MVVM arxitekturasida modelni ifodalaydi. Ko'pgina amaliy holatlarda, bu SQLite ma'lumotlar bazasida, URIga asoslangan kirish usuli bilan qoplangan. Nazariy jihatdan hech kim dasturchini ma'lumotlar bazasidan boshqa narsa asosida ContentProvider yaratish uchun ishlatmaydi. Biroq, kontent provayderning mavjud so'rovlar () usuli JDBC ResultSet interfeysiga va uning qanday ishlashiga juda o'xshash Cursor obyektini qaytaradi. Shuning uchun, kontent provayderlarining haqiqiy maqsadi ma'lumotlar bazasini qamrab olishi shubhali bo'lishi mumkin emas [3].
Kontent provayderlarining asosiy g'oyasi AJAX ilovalarining arxitekturasiga asoslangan bo’ladi. AJAX ilovalari odatda MVVM arxitekturasidan foydalanadi, bu yerda model server tomonidagi URI sifatida ifodalanadi (lekin bu HTML5 bilan o'zgartirildi). Haqiqatan ham, kontent provayderlarining URI yordamida so'ralishi va MIME turlarini qo'llagan holda kengaytma yaratish AJAX ning yadroda ekanligini ko'rsatadi.
Uyali qurilmada to'la huquqli munosabat bazasi bo'lishi juda ajoyib! (2005 yil, mobil telefonlar hozirgi kunga qaraganda ancha zaif bo’lishgan). Natijada ular ikkita yaxshi fikrni bir ContentProvider sinfiga birlashtirdi. Odatda dasturiy ta'minotni ishlab chiqish jarayonida bo'lgani kabi, ikkita yaxshi g'oyani birlashtirib turish har doim ham yaxshi natijaga olib kelmaydi. Androidda biz kontent provayderlarining bir nechta engillashtiradigan dizayniga egamiz.
Android Service me'moriy dizayni OSGI xizmatlaridan olingan.
Xizmatlar Google tomonidan ishlaydigan dasturchilar tomonidan yaratildi, chunki Androidning oqim modeli tufayli paydo bo'lgan mantiqiy muammo.
Activity faol va faqat uning foydalanuvchi interfeysi oldingi holatida ishlaydi. Boshqa activity interfeysi hozirgi holatni o'zi bilan yopib qo'yadi, oxirgisi, hatto biror narsa qilsa ham to'xtaydi. Agar operatsiyani amalga oshirish jarayonida birinchi o'rinda bo'lmasa ham, operatsiyani bajarish kerak bo'lsa nima bo'ladi? Activityning yordami bilan buni qila olmaysiz. Buni ContentProvider yordami bilan qila olmaysiz, chunki ular o'zlarining sikl aylanish davrlariga ega emaslar va ularni ishlatadigan activity faol bo'lgan holatda bajarilishi mumkin.
Bu yerda servis yordamga keladi. Ularni amalga oshirish jarayoni oldingi o'rinlarda bo'lmasa ham amalga oshirilishi mumkin. Shunday qilib, agar siz fonda ishlashni davom ettiradigan vaqtni qisqartiruvchi operatsiyani amalga oshirayotgan bo'lsangiz va activityni boshlaydigan xizmatni yaratishingiz kerak.
Servis shuningdek, sikl aylanish jarayoniga ham ega. Buning ma'nosi, uni ba'zi holatlar uchun Android ilovasi tomonidan uyg'unlashtirishi va ishga tushirishi mumkin.
Yuqorida aytilganidek, Service ContentProvier'dan ko'ra ko'proq umumiy maqsadlarga ega. Ma'lumotlar bazasidan foydalanishi mumkin, ammo uning APIsi ContentProvider holidagi kabi, ma'lumotlar bazasi bilan bog'liq emas. Ko'p hollarda xizmatlar tashqi serverlar bilan bog'lanish uchun ishlatiladi.
BroadcastReceiver sinfi va uning quyi sinflari Android arxitekturasida qo'llaniladigan ta'sir mexanizmida ifodalanadi.
Albatta, Androidning ishlab chiqaruvchisi Android SDKdan kengayishi bilan chegaralanmaydi. U istaganicha o'z sinflarini yozishi mumkin. Ammo ular Android SDK sinflari uchun faqat yordamchi sinflar bo'lishadi.
Android manifesti.
Android Manifesti - Android dasturining yana bir muhim qismi. Idea Eclipse uchun plugin paydo bo'lishidan kelib chiqqan.
Android manifesti XML fayli bo'lib, bir nechta vazifalarni bajaradi. Google shunday ta'riflaydi:

  • java dastur paketining nomini bildiradi. Paket nomi dastur uchun yagona identifikator;

  • ilovaning tarkibiy qismlari – xizmatlar va kontent provayderlarini tavsiflab beradi. Komponentlarning har birini amalga oshiradigan va ularning qobiliyatlarini e'lon qiluvchi sinf nomlarini belgilaydi (masalan, ular qaysi xabarni ko'rib chiqishlari mumkin). Bular Android tizimiga qaysi komponentlarni va qaysi sharoitda ishga tushirilishini bilish imkonini beradi;

  • dastur komponentlari o'z ichiga oladigan jarayonlarni oldindan belgilaydi;

  • ilovaning API xavfsiz qismlariga kirish va boshqa ilovalar bilan ishlashga ruxsat berishi kerak bo'lgan ruxsatnomalarni e'lon qiladi. Bundan tashqari, dastur komponentlariga kirish uchun zarur bo'lgan ruxsatlarni e'lon qiladi;

  • ilova ishlayotganda profiling va boshqa ma'lumotni ta'minlaydigan asboblar sinflari;

  • bular faqat manifestda mavjud bo'lib, dastur ishlab chiqilgan va sinovdan o'tgan;

  • ilova talab qiladigan Android API minimal darajasini e'lon qiladi;

  • ilovani bog'lash uchun kutubxonalarni ro'yxatlash zarur.

Ikkinchi xatboshiga e'tibor bering. Bu degani, muayyan sinf o'zingizning ilovangizdagi activity, ContentProvider, BroadcastReceiver yoki xizmatni kengaytirsa, bu sinf manifestda tasvirlanmaguncha ishlatilmaydi.


Download 384,13 Kb.

Do'stlaringiz bilan baham:
1   2   3   4   5   6   7   8   9   10   11




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish