Android razvoj softvera

Android razvoj softvera predstavlja proces kreiranja aplikacija koje se koriste na uređajima podržanim Android operativnim sistemom. Android aplikacije je moguće kreirati korišćenjem programskih jezika Kotlin, Java, C++ i raznih drugih, korišćenjem Android softverskog razvojnog alata (engl. Software Development Kit - SDK), ali je moguće kreiranje i uz pomoć drugih programskih jezika. Svi jezici jezici sem Jave poput jezika Go, Java Skript-a, C, C++ i ostalih, zahtevaju korišćenje Javine virtuelne mašine (engl. Java Virtual Machine - JVM), uz određene alate i ograničenom podrškom za api-je (engl. API). Neki programski jezici i softverski alati omogućavaju razvoj mobilnih aplikacija i za Android i iOS operativne sisteme. Zvanični kanal distribucije Android aplikacija ka korisnicima predstavlja Gugl plej (engl. Google Play) prodavnica.

Alati za razvoj Android aplikacija

uredi

Android softverski razvojni alat (engl. SDK) predstavlja sveobuhvatan skup razvojnih alata koji sadrži i Android SDK Platform Tools. Ovaj podskup alata se preuzima zasebno i sastavljen je od raznih alata poput adb-a i fastboot-a[1]. Android Debug Bridge (ADB) predstavlja alat koji se pokreće u komandnoj liniji na povezanom Android uređaju, dok je Fastboot protokol koji se koristi za učitavanje sistemskih datoteka. Kod koji se napiše u programskim jezicima C, C++ može se kompajlirati u ARM ili x86 mašinski jezik (ili 64-bitne varijante) tako što se koristi Android Native Development Kit (NDK).

Android Open Accessory Development Kit

uredi

Sa pojavom Android 3.1 platforme, dolazi do uvođenja podrške za Android Open Accessory (AOA), čime je omogućena interakcija interakcija sa spoljnim Android uređajem preko USB konekcije u specijalnom "naprednom" režimu. Kada se Android uređaj nalazi u naprednom režimu, razvojno okruženje se ponaša kao domaćin dok povezani uređaj služi kao emulator na kome se pokreće napravljena aplikacija. USB dodaci su specijalno dizajnirani na uređaje sa Android operativnim sistemu uz praćenje jednostavnog protokola (Android accessory protocol) koji omogućava otkrivanje Android uređaja sa mogućnošću pokretanja naprednog režima[2].

Android emulatori

uredi

Android emulatori predstavljaju softverska rešenja koja simuliraju mobilne uređaje na drugim operativnim sistemima i time omogućavaju testiranje softvera, igranje android igrica i korišćenje drugih android aplikacija. Popularni android emulatori su neki od sledećih:

  • Android-x86
  • BlueStacks
  • LeapDroid
  • MIT App Inventor
  • Genymotion
  • Windows Subsystem for Android

Android Developer izazov

uredi

Android Developer izazov (Android Developer Challenge - ADC) predstavlja takmičenje koje je Gugl pokrenuo sa idejom pronalaženja najinovativnije Android aplikacije, na kom su bile podeljene nagrade ukupne vrednosti od oko 10 miliona dolara, podeljene u dva ciklusa (ACD I i ACD II). Prvi ciklus je prihvatao prijave do 14. aprila 2008. godine. U maju mesecu iste godine objavljena je lista sa pedeset najobećavajućih ideja, i svaka od njih je dobila po 10000 dolara kao nagradu[3][4]. U septembru 2008. godine objavljena je skraćena lista sa 20 ideja gde je prvih 10 dobilo po 275000 a ideje od 11. do 20. mesta po 100000 dolara za dalji razvoj svojih aplikacija.

ADC II ciklus je krenuo u maju naredne godine (2009.). Prva runda drugog ciklusa završena je par meseci kasnije u oktobru mesecu, gde je krug dobitnika predstavljalo najboljih 200. Dana 25. novembra 2009. godine Gugl je proglasio sveukupne pobednike gde su kao najbolje ideje proglašene aplikacije SweetDreams, What the Doodle!? i WaveSecure.[5]

Java standardi

uredi

Prepreke na koje se dolazi prilikom razvoja Android aplikacija uključuju i to da Android ne koristi već ranije utvrđene Java standarde, poput Java SE (Java standardna edicija) i Java ME (Java mikro edicija). Ovo onemogućava kompatibilnost između aplikacija pisanih za Java platformu i aplikacija koje se pokreću na Android operativnom sistemu. Iako Android koristi sintaksu i semantiku Java programskog jezika, nisu dostupne sve biblioteke i API-je upakovane sa Java SE ili Java ME. Međutim, na tržištu postoje razni alati koji pružaju konverziju iz Java ME u Android.

Android obezbeđuje svoje klase za grafički korisnički interfejs (GUI), ali zato ne obezbeđuje Java AWT, Swing ili Java FX grafičke biblioteke.

Istorijat i tržišna vrednost

uredi

Istorija Android operativnog sistema započeta je osnivanjem kompanije Android Inc. 2003. godine u gradu Palo Alto u Kaliforniji. Ubrzo je postala zanimljiva Guglu, koji ju je otkupio 2005. godine, čime su se stekli uslovi za razvoj Android operativnog sistema. Android operativni sistem prvi put je u javnosti predstavljen 2007. godine i vrlo brzo preuzeo primat među operativnim sistemima namenjenim za pametne uređaje.

Najranije povratne informacije o razvoju Android aplikacija bile su pomešane[6]. Problemi su se najviše ogledali u nedostatku dokumentacije, bagovima, nedovoljno razvijene infrastrukture namenjene za testiranje softvera kao i sistema za praćenje problema (koji je Gugl izbacio 2008. godine). Uprkos ovome, prve Android aplikacije počele su da se pojavljuju na tržištu ubrzo nakon što je objavljena platforma. Prva svima dostupna aplikacija bila je zmijica (Snake).

Prva verzija Android softverskog razvojnog alata (SDK) izašla je u novembru 2007. godine. U avgustu mesecu 2008. godine izašla je verzija 0.9 (beta) čime je došlo do unapređenja razvojnih alata i ažuriranja dizajna početnog ekrana. Dana 2. decembra 2008. godine Gugl je objavio prvi Android Dev Phone, uređaj namenjen i dizajniran za napredne programere. Bio je unapređena verzija HTC Dream telefona.

Do jula 2013. godine, razvijeno je preko milion aplikacija namenjenih za korišćenje na Android uređajima[7], sa više od 25 miliona preuzimanja sa prodavnice. Istraživanja sprovedena u 2011. godini pokazala su da je preko dve trećine programera koji razvijaju aplikacije za mobilne uređaje koristilo Android platformu u svom radu. Prema nekim prognozama iz 2018. godine, više od 85% udela na tržištu su zauzimali uređaji pokrenuti Android operativnim sistemom[8].

Reference

uredi
  1. ^ Modesti, Paolo (2021-03-31). „A Script-based Approach for Teaching and Assessing Android Application Development”. ACM Transactions on Computing Education (na jeziku: engleski). 21 (1): 1—24. ISSN 1946-6226. doi:10.1145/3427593. 
  2. ^ „Razvojni alati za Android mobilne uređaje”. Android Developers (na jeziku: engleski). Pristupljeno 2023-12-11. 
  3. ^ „Top 50 aplikacija”. 
  4. ^ Braun, Erik (14. 05. 2008). „Objavljivanje pobednika prve runde ADC I”. Arhivirano iz originala 11. 09. 2012. g. Pristupljeno 11. 12. 2023. 
  5. ^ Karif, Olga. „Objavljivanje pobednika ADC II”. Arhivirano iz originala 04. 12. 2009. g. Pristupljeno 11. 12. 2023. 
  6. ^ Pol, Rajan. „"Razvoj aplikacija za Google Android: to je mešani kofer". 
  7. ^ Voren, Kristina (2013-07-24). „Google Play je dostigao 1 milion aplikacija.”. Mashable (na jeziku: engleski). Pristupljeno 2023-12-11. 
  8. ^ „Svetski obim prodaže smartfona ostaneće nizak u 2018. godini pre nego što se vrati rastu u 2019. i posle, prema IDC.”. web.archive.org. 2019-10-17. Arhivirano iz originala 17. 10. 2019. g. Pristupljeno 2023-12-11. 

Literatura

uredi