Android dasturiy ta'minotini ishlab chiqish

Vikipediya, ochiq ensiklopediya
Android toʻplami [1]
[1] Nexus 4, Google Nexus seriyasining bir qismi, „ishlab chiquvchilar uchun qulay“ qurilmalar qatori[2]

Android dasturiy taʼminotini ishlab chiqish — bu Android operatsion tizimida ishlaydigan qurilmalar uchun ilovalar yaratish jarayoni. Google[3] „Android ilovalari Kotlin, Java va C++ tillari yordamida yozilishi“ Android dasturiy taʼminot ishlab chiqish toʻplami (SDK) yordamida boshqa tillardan ham foydalanish mumkinligini taʼkidlaydi. Go, JavaScript, C, C++ yoki assembly kabi Java boʻlmagan barcha virtual mashina (JVM) tillari JVM til kodi yordamiga muhtoj boʻlib, u asboblar bilan taʼminlanishi mumkin, ehtimol cheklangan API yordami bilan. Baʼzi dasturlash tillari va vositalari platformalararo ilovalarni qoʻllab- quvvatlash imkonini beradi (yaʼni Android va iOS uchun). 2008-yilda dastlabki SDK chiqarilgandan beri uchinchi tomon vositalari, ishlab chiqish muhitlari va tilni qoʻllab-quvvatlash ham rivojlanishda va kengayishda davom etdi. Yakuniy foydalanuvchilarga Android ilovasini tarqatishning rasmiy mexanizmi Google Play hisoblanadi; u, shuningdek, bosqichma-bosqich bosqichma-bosqich ilovalarni chiqarishga, shuningdek, sinovdan oʻtgan dasturlarning versiyalarini tarqatishga imkon beradi.

Rasmiy rivojlanish vositalari[tahrir | manbasini tahrirlash]

Android dasturiy taʼminotini ishlab chiqish toʻplami (SDK) keng qamrovli ishlab chiqish vositalarini oʻz ichiga oladi. Android SDK platformasi vositalari adb va fastboot kabi buyruq qatori vositalaridan iborat toʻliq SDK ning alohida yuklab olinadigan kichik toʻplamidir. Android Debug Bridge (ADB) ulangan Android qurilmasida buyruqlarni ishga tushirish vositasidir. Fastboot — bu fayl tizimlarini miltillash uchun ishlatiladigan protokol. C/C++ da yozilgan kod Android Native Development Kit (NDK) yordamida ARM yoki x86 mahalliy kodiga (yoki ularning 64-bitli variantlariga) kompilyatsiya qilinishi mumkin.

Android ochiq aksessuarlar ishlab chiqish toʻplami[tahrir | manbasini tahrirlash]

Android 3.1 platformasi (shuningdek, Android 2.3.4 da aks ettirilgan) Android Open Aksessuar qoʻllab-quvvatlashini taqdim etadi, bu tashqi USB apparati (Android USB aksessuari) maxsus „aksessuar“ rejimida Android-da ishlaydigan qurilma bilan oʻzaro ishlash imkonini beradi. Android qurilmasi aksessuar rejimida boʻlsa, ulangan aksessuar USB xost vazifasini bajaradi (avtobusni quvvatlantiradi va qurilmalarni sanab beradi) va Android qurilmasi USB qurilmasi vazifasini bajaradi. Android USB aksessuarlari Android-da ishlaydigan qurilmalarga ulash va aksessuarlar rejimini qoʻllab-quvvatlaydigan Android-quvvatlovchi qurilmalarni aniqlash imkonini beruvchi oddiy protokolga (Android aksessuarlar protokoli) rioya qilish uchun maxsus ishlab chiqilgan[3].

Tashqi apparatni ishlab chiqish[tahrir | manbasini tahrirlash]

Android qurilmasining tashqi elektronika bilan oʻzaro ishlashiga yordam beradigan ishlab chiqish vositalariga IOIO,Android Open Aksessuarlarni ishlab chiqish toʻplami,Microbridge,Triggertrap va boshqalar kiradi.

Android Developer Challenge[tahrir | manbasini tahrirlash]

Android Developer Challenge Android uchun eng innovatsion dasturni topish uchun tanlov edi. Google ADC I va ADC II oʻrtasida taqsimlangan jami 10 million AQSh dollari miqdoridagi sovrinlarni taklif qildi.ADC I 2008-yil 2-yanvardan 14-aprelgacha hujjatlarni qabul qildim. 2008-yil 12-mayda eʼlon qilingan eng istiqbolli 50 ta arizaning har biri keyingi rivojlanish uchun 25 000 dollardan mukofot oldi[4]. Sentabr oyi boshida har biri 275 000 dollar olgan oʻnta jamoa va har biri 100 000 dollar olgan oʻnta jamoa eʼlon qilinishi bilan yakunlandi[5].

ADC II 2009-yil 27-mayda eʼlon qilindi[6] ADC II ning birinchi bosqichi 2009-yil 6-oktabrda yopildi[7] 200 ta eng yaxshi arizalarni oʻz ichiga olgan ADC II ning birinchi bosqich gʻoliblari 2009-yil 5-noyabrda eʼlon qilindi.Ikkinchi tur uchun ovoz berish ham shu kuni boshlandi va 25-noyabrda yakunlandi. Google 30-noyabr kuni SweetDreams, What the Doodle bilan ADC II-ning eng yaxshi gʻoliblarini eʼlon qildi va WaveSecure tanlovning umumiy gʻoliblari nominatsiyasida.[5][8]

Jamiyatga asoslangan taqsimotlar[tahrir | manbasini tahrirlash]

FLAC yoʻqotmaydigan audio qoʻllab-quvvatlash va yuklab olingan ilovalarni microSD kartada saqlash qobiliyati kabi bir qator moslashtirish va qoʻshimcha funksiyalarga ega Android asosidagi distribyutsiyalarni (yaʼni proshivka) yaratadigan va baham koʻradigan ochiq manba ishqibozlari hamjamiyati mavjud.Bu odatda qurilmani ildiz otishni oʻz ichiga oladi.Rooting foydalanuvchilarga operatsion tizimga kirish imkonini beradi, bu esa telefonni toʻliq boshqarish imkonini beradi. Rootingning bir qancha kamchiliklari ham bor, jumladan, xakerlik xavfining ortishi, gʻisht boʻlishining yuqori ehtimoli, kafolatni yoʻqotishi, virus hujumi xavfining oshishi va h.k.[9] Qurilmaning yuklash moslamasi ham qulfdan chiqarilgan boʻlishi kerak boʻlsa-da, maxsus mikrodasturni oʻrnatish ham mumkin.Maxsus proshivka eski telefon foydalanuvchilariga faqat yangi versiyalarda mavjud ilovalardan foydalanish imkonini beradi[10].

Ushbu mikrodastur paketlari tez-tez yangilanib turadi, Android funksiyalarining operator tomonidan ruxsat etilgan proshivkada hali rasman chiqarilmagan elementlarini oʻz ichiga oladi va kamroq cheklovlarga ega.CyanogenMod va OMFGB bunday proshivkalarga misol boʻla oladi.

2009-yil 24-sentabrda Google modder Cyanogenga Google-ning yopiq manbali ilovalarini[11] maxsus proshivka ichida qayta tarqatish bilan bogʻliq muammolarni keltirib oʻtishni toʻxtatish va toʻxtatish xatini[12] berdi. Android operatsion tizimining aksariyat qismi ochiq kodli boʻlsa ham, telefonlar Google Play va GPS navigatsiyasi kabi funksiyalar uchun yopiq manbali Google ilovalari bilan birga keladi. Google ushbu ilovalarni faqat litsenziyalangan distribyutorlar tomonidan tasdiqlangan tarqatish kanallari orqali taqdim etishini taʼkidladi.Cyanogen Google litsenziyasiga rioya qildi va xususiy dasturiy taʼminotsiz oʻz rejimini tarqatishda davom etdi.Bu modni oʻrnatish jarayonida litsenziyalangan Google ilovalarini zaxiralash va jarayon tugagach ularni qayta tiklash usulini taqdim etdi[13].

Java standartlari[tahrir | manbasini tahrirlash]

Rivojlanishdagi toʻsiqlar orasida Android-ning oʻrnatilgan Java standartlari, yaʼni Java SE va ME dan foydalanmasligi kiradi.Bu ushbu platformalar uchun yozilgan Java ilovalari va Android platformasi uchun yozilganlar oʻrtasidagi muvofiqlikni oldini oladi. Android Java tili sintaksisi va semantikasidan qayta foydalanadi, lekin u Java SE yoki ME bilan birga toʻliq sinf kutubxonalari va API-larni taqdim etmaydi.[14] Biroq, bozorda Myriad Group va UpOnTek kabi kompaniyalarning Java ME-dan Android-ga oʻzgartirish xizmatlarini taqdim etadigan bir nechta vositalari mavjud. Biroq, bozorda Myriad Group va UpOnTek kabi kompaniyalarning Java ME-dan Android-ga oʻzgartirish xizmatlarini taqdim etadigan bir nechta vositalari mavjud.[15][16] Android oʻzining GUI sinflarini taqdim etadi va Java AWT, Swing yoki JavaFX ni taʼminlamaydi.Toʻliq Java Beans API-ni qoʻllab-quvvatlamaydi. 

Tarix va bozor ulushi[tahrir | manbasini tahrirlash]

Android Google tomonidan boshqariladigan Open Handset Alliance tomonidan yaratilgan. Android platformasi uchun ilovalarni ishlab chiqish boʻyicha dastlabki fikrlar aralash edi.[17] Koʻrsatilgan muammolar qatoriga xatolar, hujjatlarning yoʻqligi, QA infratuzilmasining etarli emasligi va ommaviy muammolarni kuzatish tizimining yoʻqligi kiradi.[18] 2007-yil dekabr oyida MergeLab mobil startap asoschisi Adam Makbet shunday dedi: „Funktsionallik mavjud emas, yomon hujjatlashtirilgan yoki ishlamaydi... Bu praym-taymga tayyor emasligi aniq.“[19] Shunga qaramay, Android-ga moʻljallangan ilovalar platforma eʼlon qilingandan bir hafta oʻtib paydo boʻla boshladi. Ommaga ochiq boʻlgan birinchi dastur Ilon oʻyini edi.[20][21]

Android SDK ning oldindan koʻrish versiyasi 2007-yil 12-noyabrda chiqarilgan. 2008-yil 15-iyulda Android Developer Challenge Team tasodifan Android Developer Challenge-ning barcha ishtirokchilariga SDK ning yangi relizi „shaxsiy“ yuklab olish maydonida mavjud ekanligi haqida e-pochta orqali xabar yubordi. Elektron pochta Android Developer Challenge tanlovining birinchi bosqichi gʻoliblari uchun moʻljallangan edi.Google baʼzi ishlab chiquvchilarga emas, balki baʼzi ishlab chiquvchilarga yangi SDK relizlarini taqdim etayotgani (va bu kelishuvni maxfiy saqlash) oʻsha paytda Android ishlab chiquvchilar hamjamiyatida keng tarqalgan umidsizlikka olib keldi.[22]

2008-yil 18-avgustda Android 0.9 SDK beta-versiyasi chiqarildi. Ushbu nashr yangilangan va kengaytirilgan API, takomillashtirilgan ishlab chiqish vositalari va bosh ekran uchun yangilangan dizaynni taqdim etdi. Yangilash boʻyicha batafsil koʻrsatmalar oldingi versiya bilan ishlaydiganlar uchun mavjud.[23] 2008-yil 23-sentabrda Android 1.0 SDK (1-nashr) chiqarildi.[24] Chiqarilgan eslatmalarga koʻra, u „asosan xatolarni tuzatishni oʻz ichiga olgan, garchi baʼzi kichikroq xususiyatlar qoʻshilgan boʻlsa ham.“ Shuningdek, u 0.9 versiyasidan bir nechta API oʻzgarishlarini oʻz ichiga oladi. U ishlab chiqilgandan beri bir nechta versiyalar chiqarildi.[25] 2008-yil 5-dekabrda Google ilgʻor ishlab chiquvchilar uchun moʻljallangan SIM -qulfsiz va apparat orqali qulfdan chiqarilgan birinchi Android Dev Telefonini eʼlon qildi. Bu HTC Dream telefonining oʻzgartirilgan versiyasi edi. Ishlab chiquvchilar oʻzlarining ilovalarini sinab koʻrish va ulardan foydalanish uchun oddiy isteʼmolchi qurilmalaridan foydalanishlari mumkin boʻlsa-da, baʼzi ishlab chiquvchilar maxsus qulfdan chiqarilgan yoki shartnomasiz qurilmani tanlashlari mumkin.

2013-yil iyul oyi holatiga koʻra, Android uchun bir milliondan ortiq ilovalar ishlab chiqilgan boʻlib, 25 milliarddan ortiq yuklab olingan. 2011-yil iyun oyida oʻtkazilgan tadqiqot shuni koʻrsatdiki, nashr etilgan paytda mobil ishlab chiqaruvchilarning 67 % dan ortigʻi platformadan foydalangan. 2018-yilda Android smartfonlarini yetkazib berish 85 % bozor ulushi bilan 1,2 milliard donadan oshib ketishi prognoz qilinmoqda.

Manbalar[tahrir | manbasini tahrirlash]

  1. 1,0 1,1 „The Android Source Code“. Source.Android.com. Qaraldi: 2-fevral 2017-yil.
  2. „Editorial: Why You Should Go Nexus“ (24-sentabr 2012-yil). 18-fevral 2017-yilda asl nusxadan arxivlangan. Qaraldi: 17-aprel 2013-yil.
  3. 3,0 3,1 „Application Fundamentals“. Android Developers.
  4. Chen, Jason „The Top 50 Applications“. Android Developers Blog (12-may 2008-yil). 25-sentabr 2009-yilda asl nusxadan arxivlangan. Qaraldi: 4-sentabr 2009-yil.
  5. 5,0 5,1 „ADC I Top 50 Gallery“. Android Developer Challenge. Qaraldi: 19-may 2009-yil.
  6. „Android Developer Challenge“. Google Code. Qaraldi: 11-yanvar 2008-yil.
  7. Chen, Jason „The Top 50 Applications“. Android Developers Blog (12-may 2008-yil). 25-sentabr 2009-yilda asl nusxadan arxivlangan. Qaraldi: 4-sentabr 2009-yil.
  8. Kharif, Olga „Android Developer Challenge 2 Winners Announced“. BusinessWeek (30-noyabr 2009-yil). Qaraldi: 5-dekabr 2010-yil.
  9. „Rooting: Advantages and Disadvantages“. ITCSE forum. 2014-yil 29-noyabrda asl nusxadan arxivlangan. Qaraldi: 21-sentabr 2013-yil.
  10. „Android 2.1 from Motorola Droid Ported to G1“. Volt Mobile (10-mart 2010-yil). 31-may 2011-yilda asl nusxadan arxivlangan. Qaraldi: 13-may 2011-yil.
  11. Morrill, Dan „A Note on Google Apps for Android“. Android Developers Blog (25-sentabr 2009-yil). 25-oktabr 2009-yilda asl nusxadan arxivlangan. Qaraldi: 26-sentabr 2009-yil.
  12. Wimberly, Taylor „CyanogenMod in trouble?“. Android and me (24-sentabr 2009-yil). 3-oktabr 2009-yilda asl nusxadan arxivlangan. Qaraldi: 26-sentabr 2009-yil.
  13. „The current state...“. CyanogenMod Android ROM (27-sentabr 2009-yil). 3-noyabr 2009-yilda asl nusxadan arxivlangan. Qaraldi: 27-sentabr 2009-yil.
  14. van Gurp, Jilles „Google Android: Initial Impressions and Criticism“. Javalobby (13-noyabr 2007-yil). — „Frankly, I don't understand why Google intends to ignore the vast amount of existing implementation out there. It seems like a bad case of "not invented here" to me. Ultimately, this will slow adoption. There are already too many Java platforms for the mobile world and this is yet another one“. 28-avgust 2008-yilda asl nusxadan arxivlangan. Qaraldi: 7-mart 2009-yil.
  15. „Myriad's New J2Android Converter Fuels Android Applications Gold Rush“ (19-mart 2010-yil). 2011-yil 4-iyulda asl nusxadan arxivlangan. Qaraldi: 2022-yil 1-iyun.
  16. Fruhlinger, Josh „J2Android hopes you don't know that Android is Java-based“. JavaWorld (2010-yil 23-mart). — „On the other hand, you might think this is kind of a scam aimed at developers who don't really understand the nature of the platform they're targeting. My biggest complaint is that you'd think that Mikael Ricknäs, the IDG News Service reporter who wrote the first story linked to above (who toils for the same company that publishes JavaWorld), would have at least mentioned the relationship between Java and Android to make the oddness of this announcement clear.“. Qaraldi: 2020-yil 13-iyul.
  17. Paul, Ryan „Developing apps for Google Android: it's a mixed bag“. Ars Technica (19-dekabr 2007-yil). 20-dekabr 2007-yilda asl nusxadan arxivlangan. Qaraldi: 19-dekabr 2007-yil.
  18. Chu, Eric „ADC 2 Round 1 Scoring Complete“. Android Developers Blog (6-oktabr 2009-yil). 1-noyabr 2009-yilda asl nusxadan arxivlangan. Qaraldi: 3-noyabr 2009-yil.
  19. Morrison, Scott „Glitches Bug Google's Android Software“. The Wall Street Journal (19-dekabr 2007-yil). Qaraldi: 19-dekabr 2007-yil.
  20. „Snake“. Android Freeware. Qaraldi: 14-oktabr 2021-yil.
  21. „First Android Application — Snake“. Mobiles2day (14-noyabr 2007-yil). 2008-yil 11-mayda asl nusxadan arxivlangan. Qaraldi: 2022-yil 1-iyun.
  22. Metz, Cade „Google plays Hide and Seek with Android SDK“. The Register (14-iyul 2008-yil). 6-oktabr 2008-yilda asl nusxadan arxivlangan. Qaraldi: 23-oktabr 2008-yil.
  23. „Android — An Open Handset Alliance Project: Upgrading the SDK“. 13-sentabr 2008-yilda asl nusxadan arxivlangan. Qaraldi: 24-oktabr 2008-yil.
  24. „Other SDK Releases“. Android Developers. Qaraldi: 2-sentabr 2009-yil.
  25. „SDK Archives“. Android Developers.