1-bob. Zamonaviy ta’lim muhitida dasturlash texnologiyalarning о‘rni


Download 32.83 Kb.
Sana03.04.2023
Hajmi32.83 Kb.
#1322134
Bog'liq
12036 17962 III BOB


1-BOB. ZAMONAVIY TA’LIM MUHITIDA DASTURLASH TEXNOLOGIYALARNING О‘RNI

    1. Dasturlash texnologiyalarning nazariy asoslari

Ilova asoslari
Android ilovalari Kotlin, Java va C++ tillari yordamida yozilishi mumkin. Android SDK vositalari sizning kodingizni har qanday ma'lumotlar va manba fayllari bilan birga APK yoki Android ilovalari to'plamiga jamlaydi.
Android toʻplami qoʻshimchali arxiv fayli boʻlib, .apkish vaqtida talab qilinadigan Android ilovasining mazmunini oʻz ichiga oladi va u Android qurilmalari ilovani oʻrnatish uchun foydalanadigan fayldir.
Qoʻshimchali arxiv fayli boʻlgan Android ilovalari toʻplami .aabAndroid ilova loyihasining mazmunini, shu jumladan ish vaqtida talab qilinmaydigan qoʻshimcha metamaʼlumotlarni oʻz ichiga oladi. AAB nashriyot formati boʻlib, uni Android qurilmalarida oʻrnatib boʻlmaydi, u APK yaratish va imzolashni keyingi bosqichga kechiktiradi. Masalan, ilovangizni Google Play orqali tarqatayotganda, Google Play serverlari ilovani oʻrnatishni talab qilayotgan maʼlum bir qurilma tomonidan talab qilinadigan manbalar va kodlarni oʻz ichiga olgan optimallashtirilgan APKʼlarni yaratadi.
Har bir Android ilovasi quyidagi Android xavfsizlik funksiyalari bilan himoyalangan oʻzining xavfsizlik sinov muhitida yashaydi:
Android operatsion tizimi ko'p foydalanuvchili Linux tizimi bo'lib, unda har bir ilova boshqa foydalanuvchi hisoblanadi.
Odatiy bo'lib, tizim har bir ilovaga noyob Linux foydalanuvchi identifikatorini tayinlaydi (identifikator faqat tizim tomonidan qo'llaniladi va ilovaga noma'lum). Tizim ilovadagi barcha fayllar uchun ruxsatlarni o'rnatadi, shunda faqat ushbu ilovaga tayinlangan foydalanuvchi identifikatori ularga kira oladi.
Har bir jarayon o'z virtual mashinasiga (VM) ega, shuning uchun ilova kodi boshqa ilovalardan ajratilgan holda ishlaydi.
Odatiy bo'lib, har bir ilova o'zining Linux jarayonida ishlaydi. Android tizimi dasturning istalgan komponentini bajarish kerak bo'lganda jarayonni boshlaydi va undan keyin kerak bo'lmaganda yoki tizim boshqa ilovalar uchun xotirani tiklashi kerak bo'lganda jarayonni o'chiradi.
Android tizimi eng kam imtiyoz tamoyilini amalga oshiradi . Ya'ni, har bir ilova, sukut bo'yicha, faqat o'z ishini bajarish uchun zarur bo'lgan komponentlarga kirish huquqiga ega va boshqa emas. Bu juda xavfsiz muhitni yaratadi, unda ilova tizimning unga ruxsat berilmagan qismlariga kira olmaydi. Biroq, ilovaning boshqa ilovalar bilan maʼlumotlarni almashishi va tizim xizmatlariga kirishi mumkin boʻlgan usullar mavjud:
Bir xil Linux foydalanuvchi identifikatorini almashish uchun ikkita ilovani tashkil qilish mumkin, bu holda ular bir-birining fayllariga kirishlari mumkin. Tizim resurslarini tejash uchun bir xil foydalanuvchi identifikatoriga ega ilovalar bir xil Linux jarayonida ishlashni va bir xil VMni almashishni ham tartibga solishi mumkin. Ilovalar ham xuddi shu sertifikat bilan imzolangan bo'lishi kerak.
Ilova qurilma joylashuvi, kamera va Bluetooth ulanishi kabi qurilma maʼlumotlariga kirish uchun ruxsat soʻrashi mumkin. Foydalanuvchi ushbu ruxsatlarni aniq berishi kerak. Qo'shimcha ma'lumot olish uchun Tizim ruxsatnomalari bilan ishlashga qarang .
Ushbu hujjatning qolgan qismi quyidagi tushunchalarni taqdim etadi:
Ilovangizni belgilaydigan asosiy ramka komponentlari.
Ilovangiz uchun komponentlar va kerakli qurilma xususiyatlarini e'lon qiladigan manifest fayli.
Ilova kodidan alohida bo'lgan va ilovangizga turli xil qurilma konfiguratsiyalari uchun o'z xatti-harakatlarini oqilona optimallashtirish imkonini beruvchi manbalar.
Ilova komponentlari
Ilova komponentlari Android ilovasining asosiy qurilish bloklaridir. Har bir komponent tizim yoki foydalanuvchi ilovangizga kirishi mumkin boʻlgan kirish nuqtasidir. Ba'zi komponentlar boshqalarga bog'liq.
Ilova komponentlarining to'rt xil turi mavjud:
Faoliyatlar
Xizmatlar
Translyatsiya qabul qiluvchilar
Kontent provayderlari
Har bir tur alohida maqsadga xizmat qiladi va komponent qanday yaratilishi va yo'q qilinishini belgilaydigan alohida hayot aylanishiga ega. Quyidagi bo'limlar to'rt turdagi ilova komponentlarini tavsiflaydi.
Faoliyatlar
Faoliyat foydalanuvchi bilan muloqot qilish uchun kirish nuqtasidir. Bu foydalanuvchi interfeysi bilan bitta ekranni ifodalaydi. Masalan, elektron pochta ilovasida yangi elektron xatlar ro'yxatini ko'rsatadigan bitta faoliyat, elektron pochta yozish uchun boshqa faoliyat va elektron xatlarni o'qish uchun boshqa faoliyat bo'lishi mumkin. Faoliyatlar elektron pochta ilovasida yaxlit foydalanuvchi tajribasini shakllantirish uchun birgalikda ishlasa ham, ularning har biri boshqalardan mustaqildir. Shunday qilib, agar elektron pochta ilovasi ruxsat bergan bo'lsa, boshqa ilova ushbu harakatlardan birini boshlashi mumkin. Masalan, kamera ilovasi foydalanuvchiga rasmni almashishga ruxsat berish uchun yangi xatlar tuzadigan elektron pochta ilovasidagi faoliyatni boshlashi mumkin. Faoliyat tizim va ilova oʻrtasidagi quyidagi asosiy oʻzaro aloqalarni osonlashtiradi:
Tizim faoliyatni o'z ichiga olgan jarayonni davom ettirishini ta'minlash uchun foydalanuvchi hozirda nimaga g'amxo'rlik qilayotganini (ekranda nima borligini) kuzatib borish.
Ilgari ishlatilgan jarayonlarda foydalanuvchi qaytishi mumkin bo'lgan (to'xtatilgan faoliyat) narsalarni o'z ichiga olishini bilish va shuning uchun bu jarayonlarni saqlashga ko'proq ustunlik beradi.
Ilovaga uning jarayonini oʻchirishda yordam berish, shunda foydalanuvchi avvalgi holati tiklangan holda faoliyatga qaytishi mumkin.
Ilovalar uchun foydalanuvchi oqimlarini bir-biri o'rtasida amalga oshirish va tizimga ushbu oqimlarni muvofiqlashtirish usulini taqdim etish. (Bu erda baham ko'rishning eng klassik misoli.)
Siz faoliyatni sinfning kichik sinfi sifatida amalga oshirasiz Activity. ActivitySinf haqida qo'shimcha ma'lumot olish uchun Faoliyatlarni ishlab chiquvchi qo'llanmasiga qarang.

Xizmatlar


Xizmat har qanday sabablarga ko'ra dasturning fonda ishlashini ta'minlash uchun umumiy maqsadli kirish nuqtasidir . Bu uzoq muddatli operatsiyalarni bajarish yoki masofaviy jarayonlar uchun ishlarni bajarish uchun fonda ishlaydigan komponent. Xizmat foydalanuvchi interfeysini ta'minlamaydi. Masalan, foydalanuvchi boshqa ilovada boʻlganida xizmat fonda musiqa oʻynashi yoki foydalanuvchining faoliyat bilan oʻzaro taʼsirini bloklamasdan tarmoq orqali maʼlumotlarni olishi mumkin. Faoliyat kabi boshqa komponent xizmatni ishga tushirishi va u bilan oʻzaro aloqada boʻlish uchun uni ishga tushirishi yoki unga bogʻlanishi mumkin.
Tizimga ilovani qanday boshqarishni aytadigan ikki turdagi xizmatlar mavjud: ishga tushirilgan xizmatlar va bog'langan xizmatlar.

Ishga tushgan xizmatlar tizimga ularning ishi tugaguniga qadar ishlashini ta'minlaydi. Bu fonda ba'zi ma'lumotlarni sinxronlashtirish yoki foydalanuvchi ilovani tark etgandan keyin ham musiqa tinglash uchun bo'lishi mumkin. Ma'lumotni fonda sinxronlash yoki musiqa tinglash, shuningdek, tizim ularni qanday boshqarishini o'zgartiradigan ikki xil ishga tushirilgan xizmatlarni ko'rsatadi:


Musiqa tinglash - bu foydalanuvchi to'g'ridan-to'g'ri xabardor bo'lgan narsa, shuning uchun ilova tizimga buni bildirishnoma bilan foydalanuvchiga aytib berish uchun birinchi o'rinda turishni xohlayotganini aytadi; bu holda tizim ushbu xizmat jarayonini davom ettirish uchun juda ko'p harakat qilish kerakligini biladi, chunki u o'tib ketsa, foydalanuvchi baxtsiz bo'ladi.


Muntazam fon xizmati foydalanuvchi ishlayotganligini bevosita biladigan narsa emas, shuning uchun tizim o'z jarayonini boshqarishda ko'proq erkinlikka ega. Agar foydalanuvchini darhol tashvishga soladigan narsalar uchun RAM kerak bo'lsa, u o'ldirishga (va keyinroq xizmatni qayta ishga tushirishga) ruxsat berishi mumkin.
Bog'langan xizmatlar boshqa ilova (yoki tizim) ushbu xizmatdan foydalanishni xohlayotganini aytgani uchun ishlaydi. Bu, asosan, boshqa jarayonga API taqdim etuvchi xizmatdir. Shunday qilib, tizim bu jarayonlar o'rtasida bog'liqlik borligini biladi, shuning uchun agar A jarayoni B jarayonidagi xizmatga bog'langan bo'lsa, u B jarayonini (va uning xizmatini) A uchun davom ettirishi kerakligini biladi. Bundan tashqari, agar A jarayoni biror narsa bo'lsa. foydalanuvchi g'amxo'rlik qilsa, u B jarayonini foydalanuvchi ham qiziqtiradigan narsa sifatida ko'rishni biladi.

Moslashuvchanligi (yaxshi yoki yomon) tufayli xizmatlar barcha turdagi yuqori darajadagi tizim tushunchalari uchun haqiqatan ham foydali qurilish blokiga aylandi. Jonli fon rasmlari, bildirishnoma tinglovchilari, ekran saqlovchilari, kiritish usullari, qulaylik xizmatlari va boshqa koʻplab asosiy tizim funksiyalarining barchasi ilovalar amalga oshiradigan xizmatlar sifatida yaratilgan va tizim ular qachon ishga tushishi kerakligi bilan bogʻlanadi.


Xizmat quyi sinf sifatida amalga oshiriladi Service. ServiceSinf haqida qoʻshimcha maʼlumot olish uchun Xizmatlarni ishlab chiquvchi qoʻllanmasiga qarang.


Eslatma: Agar ilovangiz Android 5.0 (API 21-daraja) yoki undan keyingi versiyasiga mo‘ljallangan bo‘lsa, JobSchedulerharakatlarni rejalashtirish uchun sinfdan foydalaning. JobScheduler quvvat sarfini kamaytirish uchun ishlarni optimal rejalashtirish va Doze API bilan ishlash orqali batareya quvvatini tejash afzalligiga ega. Ushbu sinfdan foydalanish haqida ko'proq ma'lumot olish uchun JobScheduler ma'lumotnoma hujjatlariga qarang.


Translyatsiya qabul qiluvchilar


Translyatsiya qabul qiluvchisitizimga muntazam foydalanuvchilar oqimidan tashqarida hodisalarni ilovaga yetkazish imkonini beruvchi komponent boʻlib, ilovaga butun tizim boʻylab eshittirish eʼlonlariga javob berishga imkon beradi. Translyatsiya qabul qiluvchilar ilovaning yana bir aniq belgilangan yozuvi bo'lgani uchun tizim hatto hozirda ishlamayotgan ilovalarga ham eshittirishlarni yetkazib berishi mumkin. Shunday qilib, masalan, ilova foydalanuvchiga yaqinlashib kelayotgan voqea haqida xabar berish uchun bildirishnoma yuborish uchun signalni rejalashtirishi mumkin... va bu signalni ilovaning BroadcastReceiver qurilmasiga yetkazish orqali ilova ishga tushgunga qadar ishlamay qolishi shart emas. signal o'chadi. Ko'pgina eshittirishlar tizimdan kelib chiqadi, masalan, ekran o'chganligi, batareya quvvati kamligi yoki rasm olinganligi haqida xabar beruvchi eshittirish. Ilovalar translyatsiyalarni ham boshlashi mumkin, masalan, boshqa ilovalarga ba'zi ma'lumotlar qurilmaga yuklab olingani va ular foydalanishi mumkinligi haqida xabar berish uchun. Translyatsiya qabul qiluvchilar foydalanuvchi interfeysini ko'rsatmasa ham, ular mumkin efir hodisasi sodir bo'lganda foydalanuvchini ogohlantirish uchun holat paneli bildirishnomasini yarating. Odatda, eshittirish qabul qiluvchisi boshqa komponentlar uchun shlyuz bo'lib, juda kam ish hajmini bajarishga mo'ljallangan. Misol uchun, u JobServicehodisaga asoslangan ba'zi ishni bajarishni rejalashtirishi mumkinJobScheduler
Eshittirish qabul qiluvchisi quyi sinf sifatida amalga oshiriladi va har bir eshittirish ob'ekt BroadcastReceiver sifatida etkazib beriladi . IntentQo'shimcha ma'lumot olish uchun BroadcastReceiversinfga qarang.
Kontent provayderlari
Kontent provayderi fayl tizimida, SQLite maʼlumotlar bazasida, internetda yoki ilovangiz kirishi mumkin boʻlgan boshqa doimiy saqlash joyida saqlashingiz mumkin boʻlgan umumiy ilova maʼlumotlar toʻplamini boshqaradi. Kontent provayderi ruxsat bergan bo'lsa, kontent provayderi orqali boshqa ilovalar ma'lumotlarni so'rashi yoki o'zgartirishi mumkin. Misol uchun, Android tizimi foydalanuvchining aloqa ma'lumotlarini boshqaradigan kontent provayderini taqdim etadi. Shunday qilib, tegishli ruxsatlarga ega bo'lgan har qanday ilova kontent provayderiga so'rov yuborishi mumkin, masalan ContactsContract.Data, ma'lum bir shaxs haqidagi ma'lumotlarni o'qish va yozish. Kontent provayderini ma'lumotlar bazasidagi abstraktsiya deb o'ylash jozibali, chunki bu umumiy holat uchun juda ko'p API va yordam mavjud. Biroq, ular tizim dizayni nuqtai nazaridan boshqa asosiy maqsadga ega. Tizim uchun kontent provayderi URI sxemasi bilan identifikatsiya qilingan nomli ma'lumotlar elementlarini nashr qilish uchun ilovaga kirish nuqtasidir. Shunday qilib, ilova o'z ichiga olgan ma'lumotlarni URI nom maydoniga qanday qilib xaritalashni xohlashini hal qilishi mumkin va bu URI'larni boshqa ob'ektlarga beradi, ular o'z navbatida ma'lumotlarga kirish uchun ulardan foydalanishlari mumkin. Ilovani boshqarishda tizimga imkon beradigan bir nechta maxsus narsalar mavjud:
URI belgilash ilovaning ishlayotganligini talab qilmaydi, shuning uchun URIlar oʻz ilovalari oʻchirilgandan keyin ham saqlanib qolishi mumkin. Tizim faqat tegishli URI dan ilova maʼlumotlarini olishi kerak boʻlganda, unga ega boʻlgan ilova hali ham ishlayotganligiga ishonch hosil qilishi kerak.
Ushbu URI'lar muhim nozik xavfsizlik modelini ham ta'minlaydi. Misol uchun, ilova o'zida mavjud bo'lgan tasvir uchun URI ni joylashtirishi mumkin, lekin boshqa ilovalar unga erkin kira olmasligi uchun kontent provayderini qulflangan holda qoldiring. Ikkinchi ilova vaqtinchalik URI ruxsatnomasi orqali ushbu URI ga kirishga harakat qilganda, tizim ushbu ilovaga vaqtinchalik URI ruxsatnomasi orqali maʼlumotlarga kirishga ruxsat berishi mumkin, shunda unga faqat shu URI orqasidagi maʼlumotlarga kirishga ruxsat beriladi, lekin ikkinchi ilovada boshqa hech narsa yoʻq. .
Kontent provayderlari ilovangiz uchun shaxsiy boʻlgan va baham koʻrilmagan maʼlumotlarni oʻqish va yozish uchun ham foydalidir.
Kontent provayderi ContentProvider boshqa ilovalarga tranzaktsiyalarni amalga oshirishga imkon beruvchi standart API to'plamining pastki sinfi sifatida amalga oshiriladi va amalga oshirishi kerak. Qo'shimcha ma'lumot olish uchun Kontent provayderlari ishlab chiquvchi qo'llanmasiga qarang.
Android tizimi dizaynining o'ziga xos jihati shundaki, har qanday ilova boshqa ilova komponentini ishga tushirishi mumkin. Misol uchun, agar siz foydalanuvchi qurilma kamerasi yordamida suratga olishni xohlasangiz, buni amalga oshiradigan boshqa ilova bo'lishi mumkin va sizning ilovangiz o'zingiz suratga olish harakatini ishlab chiqish o'rniga undan foydalanishi mumkin. Kamera ilovasidagi kodni kiritishingiz yoki hatto unga havola qilishingiz shart emas. Buning o'rniga, siz shunchaki suratga oladigan kamera ilovasida faoliyatni boshlashingiz mumkin. Tugallangach, siz undan foydalanishingiz uchun surat hatto ilovangizga qaytariladi. Foydalanuvchiga kamera aslida ilovangizning bir qismidek tuyuladi.
Tizim komponentni ishga tushirganda, u hali ishlamayotgan bo'lsa, ushbu ilova uchun jarayonni boshlaydi va komponent uchun zarur bo'lgan sinflarni yaratadi. Misol uchun, agar ilovangiz suratga oladigan kamera ilovasida faoliyatni boshlasa, u ilovangiz jarayonida emas, balki kamera ilovasiga tegishli jarayonda ishlaydi. Shuning uchun, boshqa tizimlardagi ilovalardan farqli o'laroq, Android ilovalarida bitta kirish nuqtasi yo'q ( main()funksiya yo'q).
Tizim har bir ilovani boshqa ilovalarga kirishni cheklovchi fayl ruxsatlari bilan alohida jarayonda ishga tushirganligi sababli, ilovangiz boshqa ilovadan komponentni bevosita faollashtira olmaydi. Biroq, Android tizimi mumkin. Komponentni boshqa ilovada faollashtirish uchun tizimga ma'lum komponentni ishga tushirish niyatingizni bildiruvchi xabar yuboring. Keyin tizim siz uchun komponentni faollashtiradi.
Komponentlarni faollashtirish
To'rt komponent turidan uchtasi - harakatlar, xizmatlar va eshittirish qabul qiluvchilari - intent deb nomlangan asinxron xabar tomonidan faollashtirilgan . Niyatlar ish vaqtida individual komponentlarni bir-biriga bog'laydi. Siz ularni komponent sizning ilovangizga yoki boshqa komponentlarga tegishli bo'ladimi, boshqa komponentlardan harakat talab qiladigan messenjerlar deb hisoblashingiz mumkin.
Niyat ob'ekt bilan yaratilgan bo'lib Intent, u ma'lum bir komponentni (aniq niyat) yoki muayyan turdagi komponentni (nopiskop niyat) faollashtirish uchun xabarni belgilaydi.
Faoliyatlar va xizmatlar uchun maqsad amalga oshiriladigan harakatni (masalan, biror narsani ko'rish yoki yuborish ) belgilaydi va ishga tushirilayotgan komponent bilishi kerak bo'lgan boshqa narsalar qatorida harakat qilish uchun ma'lumotlarning URI-ni ko'rsatishi mumkin. Misol uchun, niyat tasvirni ko'rsatish yoki veb-sahifani ochish uchun faoliyat so'rovini etkazishi mumkin. Ba'zi hollarda siz natijani olish uchun faoliyatni boshlashingiz mumkin, bu holda faoliyat natijani ham qaytaradi Intent. Masalan, siz foydalanuvchiga shaxsiy kontaktni tanlashiga va uni sizga qaytarishiga ruxsat berish niyatida bo'lishingiz mumkin. Qaytish maqsadi tanlangan kontaktga ishora qiluvchi URI ni o'z ichiga oladi.
Eshittirish qabul qiluvchilar uchun maqsad shunchaki efirga uzatilayotgan e'lonni belgilaydi. Masalan, qurilmaning batareya quvvati kamligini bildiruvchi eshittirish faqat batareya quvvati kamligini bildiruvchi maʼlum boʻlgan amallar qatorini oʻz ichiga oladi .
Faoliyatlar, xizmatlar va translyatsiya qabul qiluvchilaridan farqli o'laroq, kontent provayderlari maqsad bilan faollashtirilmaydi. To'g'rirog'i, ular bir so'rov bilan maqsadli bo'lganda faollashadi ContentResolver. Kontentni hal qiluvchi provayder bilan tranzaktsiyalarni amalga oshiradigan komponentga kerak bo'lmasligi uchun kontent provayderi bilan barcha to'g'ridan-to'g'ri tranzaktsiyalarni boshqaradi va buning o'rniga ContentResolverob'ektdagi usullarni chaqiradi. Bu kontent provayderi va ma'lumot talab qiluvchi komponent o'rtasida mavhumlik qatlamini qoldiradi (xavfsizlik uchun).
Har bir turdagi komponentni faollashtirishning alohida usullari mavjud:
Siz harakatni boshlashingiz yoki Intentga startActivity()yoki belgisini o'tkazish orqali unga yangi narsa berishingiz mumkin startActivityForResult() (faoliyat natijani qaytarishini xohlasangiz).
Android 5.0 (API 21-daraja) va undan keyingi versiyalarida siz JobSchedulerharakatlarni rejalashtirish uchun sinfdan foydalanishingiz mumkin. Oldingi Android versiyalari uchun ga o'tish orqali xizmatni boshlashingiz mumkin (yoki davom etayotgan xizmatga yangi ko'rsatmalar berish Intent) startService(). Intentga o'tkazish orqali xizmatga ulanishingiz mumkin bindService().
, , yoki Intentkabi usullarga o'tish orqali translyatsiyani boshlashingiz mumkin .sendBroadcast()sendOrderedBroadcast()sendStickyBroadcast()
Kontent provayderiga qo'ng'iroq qilib so'rovni amalga oshirishingiz query()mumkin ContentResolver.
Niyatlardan foydalanish haqida qoʻshimcha maʼlumot olish uchun “ Niyatlar va maqsad filtrlari” hujjatiga qarang. Quyidagi hujjatlar muayyan komponentlarni faollashtirish haqida ko'proq ma'lumot beradi: Faoliyatlar , Xizmatlar , BroadcastReceiverva Kontent provayderlari .
Manifest fayli
Android tizimi ilova komponentini ishga tushirishdan oldin tizim ilovaning manifest faylini oʻqish orqali komponent mavjudligini bilishi kerak , AndroidManifest.xml. Ilovangiz ushbu fayldagi barcha komponentlarini eʼlon qilishi kerak, ular ilova loyihasi katalogining ildizida boʻlishi kerak.
Manifest ilova komponentlarini e'lon qilishdan tashqari bir qancha ishlarni ham bajaradi, masalan:
Ilova talab qiladigan har qanday foydalanuvchi ruxsatlarini, masalan, Internetga kirish yoki foydalanuvchi kontaktlarini o'qishga kirishni aniqlaydi.
Ilova foydalanadigan APIlar asosida ilova tomonidan talab qilinadigan minimal API darajasini eʼlon qiladi.
Kamera, bluetooth xizmatlari yoki multitouch ekran kabi ilova tomonidan ishlatiladigan yoki talab qilinadigan apparat va dasturiy taʼminot xususiyatlarini eʼlon qiladi.
Ilova bilan bog'lanishi kerak bo'lgan API kutubxonalarini e'lon qiladi (Android Framework API'laridan tashqari), masalan, Google Xaritalar kutubxonasi .
Komponentlarni e'lon qilish
Manifestning asosiy vazifasi tizimni ilova komponentlari haqida xabardor qilishdir. Masalan, manifest fayli faoliyatni quyidagicha e'lon qilishi mumkin:





android:label="@string/example_label" ... >

...


Elementda atribut ilovani identifikatsiya qiluvchi belgi uchun resurslarga ishora qiladi .android:icon


Elementda atribut quyi sinfning to'liq malakali sinf nomini belgilaydi va atribut faoliyat uchun foydalanuvchi ko'rinadigan yorliq sifatida foydalanish uchun qatorni belgilaydi.android:nameActivityandroid:label


Siz quyidagi elementlardan foydalangan holda barcha ilova komponentlarini e'lon qilishingiz kerak:
faoliyat uchun elementlar.
xizmatlar uchun elementlar.
eshittirish qabul qiluvchilar uchun elementlar.

kontent provayderlari uchun elementlar.


Manbangizga kiritgan, lekin manifestda e'lon qilmagan harakatlar, xizmatlar va kontent provayderlari tizimga ko'rinmaydi va shuning uchun hech qachon ishlay olmaydi. Biroq, translyatsiya qabul qiluvchilar manifestda e'lon qilinishi yoki dinamik ravishda kodda BroadcastReceiverob'ektlar sifatida yaratilishi va qo'ng'iroq qilish orqali tizimda ro'yxatdan o'tkazilishi mumkin registerReceiver().
Ilovangiz uchun manifest faylini qanday tuzish haqida koʻproq maʼlumot olish uchun AndroidManifest.xml fayli hujjatlariga qarang.
Komponentlarning imkoniyatlarini e'lon qilish
Yuqorida muhokama qilinganidek, komponentlarni faollashtirishIntent bo'limida harakatlar, xizmatlar va translyatsiya qabul qiluvchilarini boshlash uchun foydalanishingiz mumkin . Niyatda Intent maqsadli komponentni aniq nomlash (komponent sinfi nomidan foydalanish) orqali foydalanishingiz mumkin. Bundan tashqari, amalga oshiriladigan harakat turini va ixtiyoriy ravishda harakatni amalga oshirishni xohlagan ma'lumotlarni tavsiflovchi yashirin niyatdan foydalanishingiz mumkin. Yashirin niyat tizimga qurilmada harakatni bajarishi va uni ishga tushirishi mumkin bo'lgan komponentni topishga imkon beradi. Agar maqsadda tasvirlangan amalni bajara oladigan bir nechta komponentlar mavjud bo'lsa, foydalanuvchi qaysi birini ishlatishni tanlaydi.
Diqqat: Agar ni ishga tushirish niyatidan foydalansangiz, aniqService maqsaddan foydalanib ilovangiz xavfsiz ekanligiga ishonch hosil qiling . Xizmatni boshlash uchun yashirin niyatdan foydalanish xavfsizlikka xavf tug'diradi, chunki siz qaysi xizmat niyatga javob berishiga ishonchingiz komil emas va foydalanuvchi qaysi xizmat ishga tushishini ko'ra olmaydi. Android 5.0 (API darajasi 21) dan boshlab, agar siz yashirin niyat bilan qo'ng'iroq qilsangiz, tizim istisno qiladi . Xizmatlaringiz uchun maqsadli filtrlarni e'lon qilmang.bindService()
Tizim qabul qilingan niyatni qurilmadagi boshqa ilovalarning manifest faylida taqdim etilgan niyat filtrlari bilan solishtirish orqali niyatga javob beradigan komponentlarni aniqlaydi .

Ilovangiz manifestida faoliyatni eʼlon qilganingizda, ixtiyoriy ravishda faoliyatning imkoniyatlarini eʼlon qiluvchi maqsad filtrlarini qoʻshishingiz mumkin, shunda u boshqa ilovalardan kelgan niyatlarga javob bera oladi. Komponent deklaratsiyasi elementining bolasi sifatida elementni qo'shish orqali komponentingiz uchun maqsad filtrini e'lon qilishingiz mumkin .


Misol uchun, agar siz yangi elektron xat yozish uchun faollik bilan elektron pochta ilovasini yaratsangiz, quyidagi misolda ko'rsatilganidek, "yuborish" niyatlariga (yangi elektron xat yuborish uchun) javob berish uchun intent filtrini e'lon qilishingiz mumkin:



...










ACTION_SEND Agar boshqa ilova ushbu harakat bilan niyat yaratsa va uni ga uzatsa startActivity(), tizim sizning faoliyatingizni boshlashi mumkin, shunda foydalanuvchi qoralama va elektron xat yuborishi mumkin.


Niyat filtrlarini yaratish haqida ko'proq ma'lumot olish uchun " Niyatlar va maqsad filtrlari" hujjatiga qarang.
Ilova talablarini e'lon qilish
Android tomonidan boshqariladigan turli xil qurilmalar mavjud va ularning hammasi ham bir xil xususiyat va imkoniyatlarni ta'minlamaydi. Ilovangiz ilovangiz uchun zarur boʻlgan funksiyalarga ega boʻlmagan qurilmalarga oʻrnatilishiga yoʻl qoʻymaslik uchun manifest faylingizda qurilma va dasturiy taʼminot talablarini eʼlon qilish orqali ilovangiz qoʻllab-quvvatlaydigan qurilmalar turlari uchun profilni aniq belgilashingiz muhim. Ushbu deklaratsiyalarning aksariyati faqat ma'lumot uchun mo'ljallangan va tizim ularni o'qimaydi, lekin Google Play kabi tashqi xizmatlar foydalanuvchilar o'z qurilmasidan ilovalarni qidirganda filtrlashni ta'minlash uchun ularni o'qiydi.
Misol uchun, agar ilovangiz kamerani talab qilsa va Android 8.0 da ( API darajasi 26) joriy qilingan API lardan foydalansa, siz ushbu talablarni eʼlon qilishingiz kerak.
minSdkVersionva uchun qiymatlar targetSdkVersionilova modulingiz build.gradlefaylida oʻrnatiladi:

android {


...
defaultConfig {
...
minSdkVersion 26
targetSdkVersion 29
}
}

Eslatma:minSdkVersion to'g'ridan - to'g'ri manifest faylida o'rnatmang targetSdkVersion, chunki ular yaratish jarayonida Gradle tomonidan qayta yoziladi. Qo'shimcha ma'lumot olish uchun API darajasi talablarini ko'rsating .


Kamera funksiyasini toʻgʻridan-toʻgʻri ilovangizning manifest faylida eʼlon qiling:

android:required="true" />
...

Ushbu misollarda ko'rsatilgan deklaratsiyalar bilan kamerasi bo'lmagan yoki Android versiyasi 8.0 dan past bo'lgan qurilmalar ilovangizni Google Play'dan o'rnatolmaydi. Biroq, ilovangiz kameradan foydalanishini e'lon qilishingiz mumkin, lekin uni talab qilmaydi . Bunday holda, ilovangiz atributni o‘rnatishi required va falseish vaqtida qurilmada kamera bor-yo‘qligini tekshirishi va tegishlicha kamera funksiyalarini o‘chirib qo‘yishi kerak.
Ilovangizning turli qurilmalar bilan mosligini qanday boshqarishingiz haqida batafsil maʼlumot “ Qurilma muvofiqligi ” hujjatida keltirilgan.
Ilova resurslari
Android ilovasi shunchaki koddan iborat emas - u manba kodidan alohida resurslarni, masalan, tasvirlar, audio fayllar va ilovaning vizual taqdimoti bilan bog'liq barcha narsalarni talab qiladi. Masalan, siz XML fayllari bilan animatsiyalarni, menyularni, uslublarni, ranglarni va faoliyat foydalanuvchi interfeyslari tartibini belgilashingiz mumkin. Ilova resurslaridan foydalanish kodni o'zgartirmasdan ilovangizning turli xususiyatlarini yangilashni osonlashtiradi. Muqobil resurslar to‘plamini taqdim etish turli xil tillar va ekran o‘lchamlari kabi turli xil qurilma konfiguratsiyasi uchun ilovangizni optimallashtirish imkonini beradi.
Android loyihangizga kiritgan har bir resurs uchun SDK yaratish vositalari noyob tamsayı identifikatorini belgilaydi, undan ilova kodingizdan yoki XMLda belgilangan boshqa manbalardan manbaga murojaat qilish uchun foydalanishingiz mumkin. Misol uchun, agar ilovangizda logo.png(katalogda saqlangan res/drawable/) nomli rasm fayli boʻlsa, SDK vositalari ismli resurs identifikatorini yaratadi R.drawable.logo. Ushbu identifikator ilovaga xos butun songa mos keladi, siz undan rasmga murojaat qilish va uni foydalanuvchi interfeysiga kiritish uchun foydalanishingiz mumkin.
Sizning manba kodingizdan alohida resurslarni taqdim etishning eng muhim jihatlaridan biri bu turli xil qurilma konfiguratsiyalari uchun muqobil resurslarni taqdim etish qobiliyatidir. Masalan, XML-da UI satrlarini belgilash orqali siz satrlarni boshqa tillarga tarjima qilishingiz va bu qatorlarni alohida fayllarda saqlashingiz mumkin. Keyin Android resurs katalogi nomiga (masalan, frantsuzcha satr qiymatlari uchun) va foydalanuvchi til sozlamalariga qo‘shadigan til kvalifikatori asosida foydalanuvchi interfeysingizga tegishli til qatorlarini qo‘llaydi .
Android ko'plab turli xil kvalifikatsiyalarni qo'llab-quvvatlaydimuqobil resurslaringiz uchun. Kvalifikator - bu resurslardan foydalanish kerak bo'lgan qurilma konfiguratsiyasini aniqlash uchun manba kataloglaringiz nomiga qo'shadigan qisqa qator. Misol uchun, qurilma ekranining yo'nalishi va o'lchamiga qarab, harakatlaringiz uchun turli tartiblarni yaratishingiz kerak. Qurilma ekrani portret yo'nalishida (baland) bo'lsa, siz tugmalar bilan tartibni vertikal bo'lishini xohlashingiz mumkin, lekin ekran landshaft yo'nalishida (keng) bo'lsa, tugmalar gorizontal ravishda hizalanishi mumkin. Yo'nalishga qarab tartibni o'zgartirish uchun siz ikki xil tartibni belgilashingiz va har bir tartibning katalog nomiga mos kvalifikatsiyani qo'llashingiz mumkin. Shundan so'ng, tizim joriy qurilma yo'nalishiga qarab avtomatik ravishda tegishli tartibni qo'llaydi.
Ilovalarni yaratish uchun dasturlar. Asosiy tushunchalar.
Biz eng yaxshilarini sanab o'tamiz darslik yuragiga kirishdan oldin dasturlarni yaratish uchun dasturlar, Ba'zilari bor dastlabki ma'lumotlar Shu munosabat bilan siz bilishingiz kerak.
Avvalo, shuni yodda tutingki, qo'llanmaning boshida aytib o'tganimdek, dasturlarni, ular mo'ljallangan platformadan qat'i nazar, ishlab chiqish uchun bilish juda muhimdir. dasturlash tillari. Eng ko'p uchraydigan narsalar Android o'g'il Java y XMLvaqt uchun IOS / iPad OS u erda Swift (Apple tomonidan 2014 yilda chiqarilgan) va Ob'ektiv-C (ilovalar asos bo'lgan tarixiy til iPhone y iPad Boshidan).
Dasturlash tillarini o'rganganingizdan so'ng, ulardan foydalanib, ilovalaringizni ishlab chiqishingiz mumkin dasturiy ta'minot ushbu qo'llanmada gaplashmoqchi bo'lganlar singari ushbu maqsadda maxsus foydalanilgan. Shu bilan birga, ko'rib chiqilayotgan dasturlar ikki xil toifaga bo'linishi kerak: SDK va JDK mavjud.
SDK (Software Development Kit qisqartmasi) to'g'ridan-to'g'ri egasi bo'lgan kompaniyalarda mavjud operatsion tizimlar (Google, Android va Apple, iOS / iPadOS misolida) va batafsil boshqaruvni taklif qiladigan mos yozuvlar platformasidan to'liq foydalanish imkoniyatini beradi. Bundan tashqari, ular bir nechta testlarni o'tkazishga imkon beradi.
Biroq, mustaqil dasturlar tashqi kompaniyalar tomonidan ishga tushiriladi va integratsiyalashgan muhitda dasturlarni ishlab chiqish imkoniyatini taklif qiladi. Ular foydalanish uchun juda oddiy va litsenziyangizga qarab sizga ko'p platformali mos keladigan loyihani yaratishga imkon beradi.
Android ilovasini yarating
Yuqorida aniqlik kiritmasdan, biz masalaning asl mohiyatiga kiramiz. Bunday holda dasturlarni yaratish uchun eng yaxshi dasturlardan biri, Android studiyasi yozuvga ega. Aslida, bu to'g'ridan-to'g'ri Google tomonidan taqdim etilgan vosita. Bu bepul va Windows, macOS, Linux va ChromeOS bilan mos keladi.
Dasturni shaxsiy kompyuteringizga yuklab olish uchun tegishli veb-saytga o'ting va tugmani bosing Android Studio-ni yuklab oling sahifaning o'rtasida joylashgan. Keyin katakchani belgilang Yuqoridagi shartlarni o'qib chiqdim va qabul qilaman, ko'rsatilgan shaklda joylashgan va ustiga bosing ko'k tugma.
Yuklash tugallandi, agar siz Windows-dan foydalanayotgan bo'lsangiz, oching .exe fayli. Va ekranda ko'rsatilgan oynada tugmachalarni bosing ha, Keyingi (ketma-ket uch marta) e o'rnatish. Keyin tugmani yana bir marta bosing Keyingi va tugatish tugmachasini bosib sozlashni yakunlang.
Agar foydalanayotgan bo'lsangiz macOS, o'rniga oching .dmg to'plami olingan va sudrab Android Studio ikonkasi papkada ilovalar Mac. Keyin ustiga o'ng tugmasini bosing va elementni tanlang ochiq kontekst menyusidan. Keyin tugmani bosing ochiq ekranda paydo bo'lgan oynada, sertifikatlanmagan ishlab chiqaruvchilarning ilovalarida Apple cheklovlarini tahlil qilib, dasturni ishga tushirish uchun (faqat boshidan amalga oshirilishi kerak bo'lgan operatsiya).
Android Studio-ning asosiy oynasi paydo bo'lgandan so'ng operatsion tizim ishlatilgan bo'lsa, tugmachalarni bosing yaxshi, Keyingi (ketma-ket uch marta) va tugatish, keyin dastur ishga tushishi va tugashi uchun komponentni yuklab olishni kuting.
Shunday qilib, variantni tanlab yangi loyiha yaratishni boshlang Yangi Android Studio loyihasini boshlang va siz boshlamoqchi bo'lgan modulni tanlang. Endi ishlab chiqmoqchi bo'lgan dasturingizni nomlang, foydalanmoqchi bo'lgan SDK versiyasini tanlang, tugmani bosing Keyingi, mavjud bo'lgan oldindan aniqlangan bazalarning qaysi biri sizni qiziqtirayotganini ko'rsating, qiymatlarni sozlang (agar sizda alohida ehtiyojlar bo'lmasa, oldindan belgilab qo'yganlarni ham tark etishingiz mumkin) va tugmasini bosing tugatish.
Keyin, siz shunday tuzilgan bo'lib chiqadigan dastur muharriri ishtirokida bo'lasiz: chap tomonda loyihani tashkil etadigan elementlar bilan tuzilish, o'ng tomonda kodni kiritish joyi va tepada joylashgan joy. ob'ektlarni kiritish va boshqa operatsiyalarni bajarish uchun menyu va tugmalar.
Kerak bo'lsa, qila olasiz qo'riqchi menyuni bosish orqali siz ishlab chiqqan dastur loyihasi fayl chap yuqori qismida joylashgan va ikkinchisidan tegishli elementni tanlash. Qo'shimcha ma'lumot olish uchun siz Google rasmiy ravishda taqdim etadigan Android Studio foydalanuvchi qo'llanmasini tekshirishingiz mumkin.
Ilovangizni ishlab chiqishni tugatgandan so'ng, agar siz uni ichida nashr etmoqchi bo'lsangiz Play Store, Android uchun virtual va rasmiy ilovalar do'koni birinchi navbatda a dasturchi hisobi ikkinchisini Google hisobingiz bilan bog'lang. Bitim to'lovni o'z ichiga oladi $ 25.
Buning uchun Konsol sahifasiga o'ting Google Play va arizangizni Google-ga yuklashingiz kerak APK fayli, boshqarish metadata (ya'ni versiya va tizim talablari) va ular bilan ishlash tijorat qismi (sarlavha, tavsif va boshqalar).
Shunday qilib, yuklab olishga ruxsat berishni xohlasangiz, tanlang ozod ilova yoki mavjud bo'lsa haq evaziga, nol narxda, lekin bilan reklama qilish yoki, yana, bilan ilova ichidagi xaridlar. Play Console-dan foydalanish va uning ishlashi haqida ko'proq ma'lumot olish uchun men rasmiy qo'llanmani o'qishni maslahat beraman.
IOS / iPadOS dasturlarini yaratish uchun dasturlar
Endi gaplashaylik IOS / iPad OS. Bunday holda, sizga shuni ma'lum qilamanki, ushbu maqsad uchun ishlatiladigan eng yaxshi echimlar orasida, shubhasiz, shunga o'xshash narsa yo'q Xcode. Bu iPhone va iPad dasturlarini ishlab chiqish uchun Apple tomonidan to'g'ridan-to'g'ri taqdim etilgan dasturiy ta'minot. Bu bepul, u faqat MacOS-da ishlaydi va u dasturiy ta'minot va veb-saytlarning ishlashini tekshirishga imkon beradigan qurilmalar emulyatorini birlashtiradi.
Mac-ga Xcode-ni yuklab olish uchun Mac App Store-ning tegishli bo'limiga tashrif buyuring va tugmachalarni bosing olish e o'rnatish. Agar kerak bo'lsa, yuklash orqali avtorizatsiya qiling Apple ID paroli o Touch ID (agar siz foydalanayotgan Mac-ni qo'llab-quvvatlasa texnologiya oldingi). Keyin tugmani bosib dasturni ishga tushiring ochiq ekranda yoki Xcode ikonkasi hozirgina qo'shilgan Launchpad.
Xcode oynasi paydo bo'lgandan so'ng, tugmachani bosing rozi bo'lmoqyozing Mac ma'muriyatining paroli va dasturiy ta'minot ishlashi uchun zarur bo'lgan qismlarni o'rnatishni kuting. Keyin variantni tanlang Yangi Xcode loyihasini yarating, foydalanmoqchi bo'lgan shablonni tanlang va loyihaga tayinlanadigan nomni kiriting.

Shu nuqtada, siz nihoyat quyidagicha tashkil etilgan dastur muharriridan foydalanishni boshlashingiz mumkin: chap tomonda loyiha tuzilishi, o'rtada kodni kiritish uchun bo'lim, o'ng tomonda tomoshabin va qism. Qo'shimcha foydali funktsiyalar va buyruqlarga ega yuqori va pastki soyali tugmalar va menyu.


Ilovangizni ishlab chiqishni tugatgandan so'ng, menyuni bosish orqali loyihani saqlashingiz mumkin fayl yuqori chap qismida va ikkinchisidan tegishli elementni tanlash. Qo'shimcha ma'lumot uchun Xcode veb-saytini Apple veb-saytida tekshirishingizni maslahat beraman.
Agar xohlasangiz, siz o'zingiz ishlab chiqqan ilovani taqdim etishga qaror qilishingiz mumkin App Store. Buning uchun, ammo, sizda bo'lishi kerak dasturchi hisobi va so'rov tugmachani bosib, Apple Developer dasturi veb-saytidagi maxsus veb-sayt orqali amalga oshirilishi kerak Ro'yxatdan o'tishni boshlang. Shuni yodda tutingki, operatsiya pullik, u qimmatga tushadi Yiliga $ 99.
Nashr qilish jarayoni har doim Xcode va keyinchalik, orqali amalga oshiriladi App Store ulanish, Apple-da Internetga joylashtiriladigan ilovaning barcha ma'lumotlarini kiritishga imkon beruvchi veb-platforma App Store, iOS / iPadOS uchun virtual va rasmiy ilovalar do'koni.
Hatto iOS / iPadOS dasturlari uchun ham siz o'zingizning "yaratishingizni" mavjud qilishga qaror qilishingiz mumkin ozod o haq evaziga. Shuningdek, siz ilovani bepul, ammo taqdim etish imkoniyatini ko'rib chiqishingiz mumkin reklama ilova yoki taklif doirasida ilova ichidagi xaridlar. Qo'shimcha ma'lumotlar uchun sizni Apple Developer dasturining veb-saytini tekshirishga taklif qilaman.
Bepul dasturlar yarating
Men ilgari taklif qilgan, ya'ni SDK bo'lgan dasturlarni yaratish dasturlariga alternativa sifatida, ushbu toifaga tegishli boshqa uchinchi tomon dasturlariga ishonishni o'ylashingiz mumkin. Agar siz qiziqmoqchi bo'lsangiz, IMHO eng qiziqarli vaqtinchalik echimlarni taqdim etadigan quyida keltirilganlarni topasiz.
Crown SDK (Windows / macOS)
Crown SDK Windows va MacOS uchun ishlab chiqishga imkon beradigan bepul dastur Android uchun ilovalar va iOS / iPadOS, o'z foydalanuvchilariga kompaniyada muvaffaqiyatli bo'lish uchun zarur bo'lgan barcha narsalarni taqdim etadi. Esda tutish kerak bo'lgan yagona narsa shundaki, Mac-da iPhone va iPad uchun ilovalarni ishlab chiqish uchun foydalanish mumkin, agar men oldingi bosqichda aytib o'tgan Xcode dasturi o'rnatilgan bo'lsa.
Dasturni shaxsiy kompyuteringizga yuklab olish uchun tegishli veb-saytga o'ting va tugmani bosing download yuqori o'ng tomonda joylashgan.
Agar foydalanayotgan bo'lsangiz, yuklab olish jarayonini yakunlang Windows, oching .msi to'plami va ish stolida ko'rsatilgan oynada tugmani bosing Keyingi. Keyin element yonidagi katakchani belgilang Men Litsenziya shartnomasi shartlarini qabul qilaman, tugmasini yana bosing Keyingi (ketma-ket ikki marta), tugmachada o'rnatish va tugmalarni bosib konfiguratsiyani yakunlang ha y tugatish.
En macOS, o'rniga oching .dmg to'plami olingan va ish stolida ko'rsatilgan oynada tugmachani bosing rozi bo'lmoq. Keyin harakatlantiring Corona SDK jildi papkada ilovalar Mac-ni, so'ngra ni bosing Crown simulyatori tasvirchasi hozirgina qo'shilgan Launchpad, dasturni ishga tushirish uchun.
Endi Corona SDK oynasini ko'rsangiz, tugmani bosib hisob qaydnomangizni ro'yxatdan o'tkazing (talab qilinadi) ro'yxatga olish va siz ko'rayotgan brauzer ekranida so'ralgan ma'lumotlar yoziladi. Ushbu bosqichni tugatgandan so'ng, dasturga o'zingizning shaxsiy ma'lumotlaringiz bilan kiring va tegishli maydonlarga kiriting.
Keyin tugmachani bosing Yangi loyiha, berilgan sohada ishlab chiqiladigan dasturga tayinlashni xohlagan nomni kiriting va loyihani saqlash uchun papkani ko'rsating. Keyin mavjud shablonlardan birini tanlang, ekran va yo'nalish bilan bog'liq sozlamalarni o'rnating va tugmani bosing yaxshi.
Shuning uchun, dasturning konkret rivojlanishini davom eting, konsol oynasida kod satrlarini yozing. Shakllangan oynada mobil telefon, boshqa tomondan, oldindan ko'rishingiz mumkin. Barcha kiritilgan o'zgarishlar real vaqtda saqlanadi. Qo'shimcha ma'lumot uchun tegishli veb-saytda rasmiy dastur qo'llanmalarini o'qishingiz mumkin.

Bepul dasturlarni yaratish uchun boshqa dasturlar


Bepul dasturlarni yaratish uchun boshqa dasturlarni qidirmoqdamisiz? Quyidagi ro'yxatda topasiz boshqa vositalar juda yaxshi, sen mening so'zimga egasan.
Eclipse IDE (Windows / macOS / Linux): Java tiliga asoslangan dasturlarni ishlab chiqish va kompilyatsiya qilish uchun mo'ljallangan dastur. Uni bepul Android Development Tools (ADT) plaginlari bilan birgalikda ishlatish sizga rivojlanish imkonini beradi Android uchun ilovalar. Bu Windows, macOS va Linux uchun mavjud.
birlik (Windows / macOS): asosan 3D va 2D simulyatsiyalarini yaratish uchun mo'ljallangan dastur, shuning uchun dasturlarni ishlab chiqish o'rniga har xil turdagi o'yinlarni yaratishda foydalaniladi. Bu bepul (agar bundan foydalanadigan yuridik shaxs foyda keltirmasa yoki 100,000 25 AQSh dollaridan ko'proq mablag 'yig'uvchilarga foyda keltirmasa; aks holda siz oyiga XNUMX dollardan boshlab pullik versiyalardan birini ishlatishingiz kerak) va u MacOS-ga qaraganda Windows-da ishlaydi

Visual Studio (Windows / macOS): Windows va macOS bilan mos keladigan bepul Microsoft dasturi. Bu nafaqat mobil qurilmalar, balki shaxsiy kompyuterlar uchun ham bir nechta dasturlash tillari orasidan tanlangan va turli xil operatsion tizimlarga mo'ljallangan dasturlarni ishlab chiqishga imkon beradi.


MIT App ixtirochisi (Onlayn) - bu sizning Google hisobingiz bilan kirgandan so'ng, sizga dasturlarni ishlab chiqishga imkon beradigan bepul veb-dastur Android qurilmalari foydalanish uchun juda oson ingl. muharriri. Aslida, bu dasturlarda matnlarni, tugmachalarni, rasmlarni va turli xil interaktiv elementlarni yaratish va qo'shish uchun sudrab tushirish tizimiga asoslangan.


pufak (Onlayn): Men yuqorida aytib o'tganim singari yana bir onlayn xizmat, bu dasturlarni tortish va tushirishni qo'llab-quvvatlaydigan grafik muharriri orqali ishlab chiqishga imkon beradi. Bu shaxsiy foydalanish va xobbi sifatida bepul, lekin loyihalarni eksport qilish yoki tijorat maqsadlarida foydalanish uchun siz pullik obuna uchun ro'yxatdan o'tishingiz kerak (asosiy narxi oyiga 25 dollar).




Bugungi kunga qadar dasturlarni yaratish uchun dasturlar haqida xabar. Umid qilamanki, bu siz uchun foydali bo'ldi.

Download 32.83 Kb.

Do'stlaringiz bilan baham:




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