Android Intervju pitanja i kako intervjuirati kandidate

Ako vaša tvrtka želi zaposliti uistinu sjajnog programera za Android aplikacije ili se prijavljujete za ulogu Android programera, kako osiguravate da možete dobiti pravog kandidata ili ste spremni za posao? Sve započinje Androidovim intervjuima. Sam posao je uvijek težak posao, netko se u intervjuu može pokazati sjajno, ali kad stvari postanu stvarne, ponekad mogu biti i razočaranje. U ovom ćemo članku objasniti kako odvojiti dobro od ne toliko dobrog i osigurati da vaša tvrtka završi s najboljim mogućim kandidatima za ispunjavanje ove važne uloge.

Tehnike intervjua rade u oba smjera. Koliko je važno da potencijalni kandidati razviju dobre vještine za razgovore, toliko je važno da anketari postavljaju prava pitanja i razvijaju vještine kako bi izbjegli zapošljavanje pogrešne osobe. Povjerenje proizlazi iz toga da imate odgovarajuću municiju u vašem ormaru. Sve je u razumijevanju radnog mjesta, zahtjeva za posao i potrebnih pitanja kako bi se osiguralo da je ispitanik prikladan.

Tijekom intervjua

Važno je da se sugovornik osjeća ugodno. Nitko uistinu ne uživa u procesu intervjua, a to može biti izuzetno stresno. Što više možete učiniti kako biste kandidatu olakšali, veća je vjerojatnost da ćete steći iskreni osjećaj za njihov karakter.

Kao i kod svih kandidata za bilo koje radno mjesto u vašoj tvrtki, osnovna pitanja koja trebaju odrediti njihov karakter i dosadašnje radne prakse moraju se riješiti. Dobro je provjeriti i društvene medije. Ovih dana svi imaju nazočnost na društvenim medijima i dobro je brzo pogledati njihove zapise o objavljivanju. Ako pokažu nedostatak integriteta prema prethodnim poslodavcima, nema razloga za sugestiju da će odjednom promijeniti svoje obrasce ponašanja. Za više informacija o tome kako odabrati pravog programera za svoju tvrtku, posjetite naš blog blog ovdje.

Dakle, nakon što postavite uobičajena općenita pitanja i učinite da se kandidat osjeća ugodno, vrijeme je da otkrijete koliko znaju o Androidovom razvoju. Evo gdje pitanja postaju specifičnija za posao, a možda i teže.

Osnovna pitanja

1. Što je Android i tko ga je osnovao?

Android je open-source, Linux-ov operativni sustav. Osnovao ga je Andy Rubin, a koristi se u mobitelima, tabletima, televizorima itd.

2. Navedite arhitekturu Android aplikacije.

  • Aktivnosti diktiraju korisničko sučelje i upravljaju interakcijom korisnika s zaslonom pametnog telefona. Aktivnost obavlja radnje na zaslonu.
  • Prijemnici emitiranja reagiraju na emitovane poruke druge aplikacije u sustavu ili iz njega. To je implementirano kao podrazred klase BroadcastReceiver i svaka poruka je prepoznata kao Intentobject.
  • Usluge. Koriste se za obavljanje pozadinskih funkcija.
  • Namjera. To omogućuje međusobnu povezanost između aktivnosti i mehanizma za prijenos podataka.
  • Eksternalizacija resursa koja se odnosi na žice i grafiku.
  • Obavijest o dijaloškom okviru, ikoni, svjetlu, obavijesti, zvuku i zdravici
  • Davatelji sadržaja za razmjenu podataka između aplikacija

3. Koje su dodatne komponente Androida?

  • Fragmenti služe kao dio korisničkog sučelja u aktivnosti.
  • Prikazi su elementi UI koji se crtaju na zaslonu, uključujući gumbe, popisne obrasce itd.
  • Izgledi prikazuju hijerarhije koje upravljaju formatom zaslona i izgledom prikaza.
  • Namjere su poruke koje dijele žičane dijelove.
  • Resursi su vanjski elementi (žice, konstante i crtajuće slike).
  • Manifest je konfiguracijska datoteka za aplikaciju.

4. Koje su obavijesti dostupne u Androidu i koja je njihova upotreba?

Obavijest o zakuskama i tost - prikazuje se kao skočna poruka na površini prozora.

Snackbars sadrže jedan redak teksta koji je u neposrednoj vezi s operacijom koja se izvodi. Obično sadrže tekstualnu radnju i nemaju ikone. Istodobno se može prikazati samo jedna zalogaja koja može sadržavati pojedinačnu radnju, a nijedna od njih ne može biti "Odbaci" ili "Odustani".

Tosti su dostupni samo kod Androida i koriste se za sistemsku poruku. Oni se prikazuju i pri dnu zaslona, ​​ali ne mogu se prelaziti van zaslona.

Obavijesti o traci stanja prikazuju obavijesti na traci statusa.

Za više informacija o Snackbars i Tost, posjetite ovdje.

Obavijest o dijalogu - Aktivno povezana obavijest.

5. Kako prevodite u Android?

Android koristi Google prevodilac za prevođenje podataka s jednog jezika na drugi jezik i postavlja ih kao niz tijekom razvoja.

6. Koje se vrste zastava koriste za pokretanje aplikacija u Androidu?

FLAG_ACTIVITY_NEW_TASK

FLAG_ACTIVITY_CLEAR_TOP.

7. Android verzije pod nazivima koda, navedite onoliko kodnih imena koliko znate.

Aestro, Blender, Cupcake, krafna, Eclair, Froyo, Medenjak, Honeycomb, Sendvič od sladoleda, Jelly Bean, Kitkat, Lollipop, Marshmallow

8. Koje su glavne prednosti Androida?

Android je otvoreni izvorni operativni sustav, što znači da je krajnji korisnik besplatan. Nema naknada za licencu, razvoj ili distribuciju. Podržava mnogo različitih tehnologija, uključujući kameru, bluetooth, wifi, govor i rub. Pored toga, on koristi i visoko optimizirani virtualni stroj zvan DVM (Dalvik Virtual Machine) za upotrebu na mobilnim uređajima.

9. Možete li imenovati bazu podataka koju Android koristi i dati kratak opis toga?

Naziv baze podataka je SQLite koji je relacijska baza otvorenog koda. Može se koristiti za obavljanje uobičajenih funkcija baze podataka na Android uređajima. Ne samo da je lako pohranjivati, manipulirati i dohvatiti podatke, već je ugrađen u Android platformu kao zadani. Nije potrebno postavljanje, administracija je već uspostavljena.

10. Koje su različite vrste spremišta dostupne u Androidu i koja je njihova upotreba?

  • Zajedničke postavke pohranjuju privatne primitivne podatke u parove ključ i vrijednost. SharedPreferences klasa pomaže u pružanju općeg okvira koji omogućava korisnicima spremanje i dohvaćanje trajnih parova ključa i vrijednosti primitivnih podataka. SharedPreferences mogu se koristiti za spremanje primitivnih podataka kao što su booleans, floats, ints, longs i stringings. Ti se podaci održavaju tijekom korisničkih sesija čak i kada se nečija aplikacija ubije. Za više informacija o tome kako dobiti objekt SharedPreferences za nečiju aplikaciju kliknite ovdje.
  • Interna pohrana pohranjuje privatne podatke u memoriju uređaja. Jednom možete pohraniti datoteke izravno u unutarnju pohranu uređaja. Datoteke spremljene u unutarnju pohranu prema zadanom su privatnom programu, a ni druge aplikacije ne mogu im pristupiti. Kad korisnik deinstalira vašu aplikaciju, datoteke će se tada ukloniti.
  • Vanjska pohrana pohranjuje javni datum na zajedničkoj vanjskoj pohrani. Svaki uređaj kompatibilan sa Androidom može podržati zajedničku "vanjsku pohranu" u koju se datoteke mogu spremiti. To mogu biti prijenosni mediji za pohranu (SD kartica) ili unutarnji (ne prijenosni) prostor za pohranu.
  • SQLite baze podataka pohranjuju strukturirane podatke u privatnu bazu podataka. Android pruža potpunu podršku za SQLite baze podataka. Bilo koja baza podataka koju stvori može biti po imenu dostupna bilo kojoj klasi u aplikaciji. Imajte na umu da nisu dostupni izvan aplikacije.
  • Mrežna veza pohranjuje podatke na webu s vlastitim mrežnim poslužiteljem. Da biste učinili mrežne operacije, morate koristiti klase u sljedećim paketima u nastavku:

java.net. *

android.net. *

11. Što su aplikacijski widgeti u Androidu?

Aplikacijski widgeti minijaturni su prikazi aplikacija koji se mogu ugrađivati ​​u druge programe (poput početnog zaslona) i primati periodična ažuriranja. Ti se prikazi često nazivaju widgeti u korisničkom sučelju, a možete ih objaviti kod davatelja aplikacija widgeta.

Građevni blokovi i životni ciklusi

12. Koji su temeljni građevinski blokovi Androida

Temeljni blokovi za Android su sljedeći:

  • Aktivnost - klasa koja predstavlja jedan zaslon, tj. Okvir u AWT-u
  • Prikaz - element UI, na primjer, naljepnica, gumb ili tekstno polje. U osnovi sve što se vidi je pogled
  • Namjera - ono što se koristi za pozivanje komponenti. Na primjer, pokrenite uslugu, prikažite web stranicu ili emitirajte poruku.
  • Usluga - proces u pozadini. Postoje dvije vrste lokalnog pristupa kojima se pristupa iz aplikacije i daljinski kojima se može pristupiti s drugih uređaja.
  • Davatelj sadržaja - koriste se za razmjenu podataka između različitih aplikacija.
  • Ulomak - zasebni dijelovi aktivnosti koji se mogu istovremeno prikazati u više njih.
  • AndroidManifest.xml - sadrži podatke o aktivnostima, dozvolama i pružateljima sadržaja itd.
  • Android virtualni uređaj (AVD) - koji se koristi za testiranje aplikacije bez potrebe za tabletom ili drugim uređajem.

13. Možete li imenovati 7 metoda životnog ciklusa Android aktivnosti i objasniti malo o svakoj od njih?

7 metoda životnog ciklusa su sljedeće:

1) onCreate () - što znači da je aktivnost kreirana

2) onStart () - što znači da je postalo vidljivo korisniku.

3) onResume () - što znači da je aktivnost započela interakciju s korisnikom

4) onPause () - što znači da aktivnost nije vidljiva korisniku

5) onStop () - što znači da više nije vidljiv krajnjem korisniku

6) onRestart () - što znači da je aktivnost prestala prije započinjanja

7) onDestroy () - što znači da će aktivnost biti uništena

Android skraćenice

14. Što znači ADB u Androidu?

ADB djeluje kao most između emulatora i IDE-a. Također izvršava naredbe na udaljenoj ljusci za pokretanje aplikacija na emulatoru.

15. Što je ANR u Androidu?

ANR označava da aplikacija ne reagira. To je dijaloški okvir koji se pojavljuje kada aplikacija ne reagira.

16. Što znači ADT?

ADT je ​​Androidov alat za razvoj i koristi se za razvoj aplikacija i testiranje aplikacija.

17. Što predstavlja DDMS i koje su njegove mogućnosti

To se odnosi na Delvikov monitor poslužitelja za uklanjanje pogrešaka. Teza za uklanjanje pogrešaka koja je uključena u Android Studio. Može se koristiti za usluge prosljeđivanja porta, podatke o nitima i hrpi na uređaju, snimanje zaslona na uređaju, logcat, obradu i informacije o stanju radija. Pored toga, između ostalog, nudi donošenje spojeva dolaznih poziva i SMS-a, te podmetanje podataka o lokaciji.

Za više informacija pročitajte ovdje.

Namjera

18. Što je namjera i dati tri primjera kako se koristi?

Tri uobičajene uporabe za namjeru su:

  • Pokretanje aktivnosti Normalno je pokrenuti novu instancu aktivnosti prenošenjem namjere u metodu startActivity ().
  • Isporuka emitiranja To se može učiniti prenošenjem namjere za slanjeBroadcast (), sendStickyBroadcast () i sendOrderedBroadcast ()
  • Pokretanje usluge može se koristiti za jednokratnu operaciju, na primjer, preuzimanje datoteke. To se postiže prenošenjem namjere za pokretanje usluge ()

Dodatne informacije potražite u ovom odjeljku Vodiča za Android programere.

19. Može li se namjera koristiti za davanje podataka ContentProvider-u?

Ne, namjera se ne može koristiti za davanje podataka ContentProvider-u. Za upotrebu podataka u ContentProvideru umjesto toga morate koristiti ContentResolver. Ovo je u kontekstu aplikacije i koristi se za komunikaciju s davateljem kao klijentom. Objekt davatelj funkcionira tako što prima zahtjeve za podatke, izvršava potrebnu radnju i zatim vraća rezultate.

20. Pomoću namjere možemo pokrenuti aktivnost.

Intennt intencija = novi namjera (ovaj, MyTestActivity.class);
       startActivity (namjera);

Definicije i rješenja

21. Definirajte datoteku resursa aplikacije u Androidu.

JSON, XML bitmap.etc su resursi aplikacije. Te datoteke možete ubrizgati za izgradnju procesa i možete ih učitati iz koda.

22. Što je adapter u Androidu?

Adapter djeluje kao most. Pretvara podatke s podacima u nove stavke tako da se mogu prikazati u komponentama korisničkog sučelja.

Više informacija o adapterima potražite ovdje.

23. Gdje su izgleda postavljeni na Androidu?

U mapi Izgled izgleda postaju u obliku XML datoteka.

24. Što je singleton klasa u Androidu?

Klasa koja može stvoriti samo objekt, a taj se objekt može dijeliti s drugim klasama.

25. Što je fragment u Androidu?

Ulomak je dio aktivnosti i on je uvijek sadržan u aktivnosti. Pomoću fragmenta možemo ga ponovo upotrijebiti u mnogim aktivnostima, a fleksibilnije je locirati na zaslonu.

26. Što je način spavanja u Androidu?

Način mirovanja znači da će CPU biti u stanju mirovanja i da ne prihvaća nikakve naredbe s Android uređaja osim sloja i sučelja radijskog sučelja.

27. Koji kernel se koristi u Androidu?

Android je prilagođeni Linux 3.6 kernel.

28. Koje su iznimke dostupne u Androidu?

InflateException, Surface.OutOfResourceException, SurfaceHolder.BadSurfaceTypeException i WindowManager.BadTokenException

29. Kakav je redoslijed dijaloškog okvira u Androidu?

Redoslijed je: pozitivan, neutralan, negativan.

30. Što je mapa za crtanje u Androidu?

Sastavljeni vizualni resurs koji se može koristiti kao pozadina, transparenti, ikone, ekran za prskanje itd.

31. Što znači ContentProvider i što je to uobičajena uporaba?

ContentProvider koristi se za upravljanje pristupom strukturiranom skupu podataka. On identificira podatke i pruža mehanizme za definiranje sigurnosti podataka. To je standardno sučelje koje povezuje podatke unutar jednog procesa s kodom koji se izvodi u drugom. Za više informacija pogledajte ovaj odjeljak Vodiča za Android programere.

32. Kako prenijeti podatke na podakcije android?

Pomoću skupa podataka možemo proslijediti podatke podradama.

Bund snopa = novi Bundle ();

bun.putString ("EMAIL", "contact@tutorials.com");

33. Preusmjeravate zaslon, umjesto da Android ruši prednji plan i vraća restauracijske vrijednosti u izgled aktivnosti, vrijednost prikaza se ne vraća nakon preusmjeravanja. Koji je vjerojatni razlog za to?

Najvjerojatniji razlog je taj što programer nije potvrdio da ima važeći ID. Android sustav vratit će stanje pogleda u aktivnosti samo ako je svakom pogledu dodijeljen jedinstveni ID. To dobiva atribut, android: id

Dodatne informacije potražite u ovom odjeljku Vodiča za Android programere.

Android knjižnica

34. Opišite Android biblioteku.

Android knjižnica je razvojni projekt koji sadrži zajednički izvorni Androidov kod i druge resurse. Sadrži sve potrebno za izradu aplikacije uključujući izvorni kôd, datoteke s resursima i manifest za Android. Sve kombinira u datoteku Android Arhiva (AAR) koja se može koristiti kao ovisnost za modul aplikacije Android.

35. Kada se koristi modul knjižnice Android?

Modul biblioteke Androida može se koristiti kada izrađujete više aplikacija koje zahtijevaju ili koriste iste komponente poput aktivnosti, usluga ili izgleda sučelja. Koristi se i kada izrađujete aplikaciju koja postoji u više inačica APK-a, kao što su besplatna i plaćena verzija za koje su potrebne obje osnovne komponente za obje.

Ovaj vodič može pomoći korisnicima da nauče kako stvoriti Android biblioteku.

Da biste bili u tijeku s najnovijim Androidovim razvojima, važno je da nastavite razvijati svoje vještine kako se sustavi razvijaju i mijenjaju s vremenom. To će vam omogućiti da ostanete ispred konkurencije i postanete vrednija imovina za vašeg klijenta i svoj tim.

Android nit

36. Što je nit?

"Konac je nit izvođenja u programu." Svaka nit ima prioritet i veći prioritet ima nit koja se izvodi u odnosu na niti s nižim prioritetom. Kada se kôd pokreće u niti i stvara novi Thread objekt, novi nit ima svoj prioritet koji je prvobitno postavljen jednak prioritetu stvarajuće niti, a on je daemon nit ako i samo ako je nit stvaranja demon.

37. Kako se stvara nova nit izvršenja?

Dva su načina na koji se može stvoriti nova nit izvršenja. Jedan je proglašavanjem klase podrazredom teme. Podklasa će nadjačati način izvođenja teme Thread. Podklasa se može dodijeliti i pokrenuti. Primjer niti koji izračunava primese veće od navedene vrijednosti nalazi se u nastavku:

klasa PrimeThread proširuje nit {
        dugi minPrime;
        PrimeThread (dugi minPrime) {
            this.minPrime = minPrime;
        }
        javno void run () {
            // izračunati primjere veće od minPrime
             , , ,
        }
    }

Donji kôd stvorio bi nit i pokrenuo ga u pokretanju:

PrimeThread p = novi PrimeThread (143);
    p.start ();

Drugi način stvaranja niti je deklariranje klase koja implementira Runnable sučelje. Ova klasa će implementirati metodu pokretanja. Klasa se može dodijeliti, prenijeti kao argument prilikom stvaranja teme i pokrenuti.

klasa PrimeRun implementira Runnable {
        dugi minPrime;
        PrimeRun (dugi minPrime) {
            this.minPrime = minPrime;
        }
        javno void run () {
            // izračunati primjere veće od minPrime
             , , ,
        }
    }

Donji kôd stvorio bi nit i počeo se prikazivati:

PrimeRun p = novi PrimeRun (143);
    nova nit (p) .start ();

38. Može li više od jedne niti imati isti naziv?

Da. Svaka nit ima naziv kako bi se mogla prepoznati. Ako ime nije određeno kada se stvori nit, stvara se novo ime za njega.

Više informacija o Android nitima potražite ovdje.

Zaključak

Imajte na umu da ova pitanja ne pokrivaju sve složenosti razvoja Androida i jednostavno se nude kao vodič. Upotrebom ovih pitanja moći ćete steći pravi osjećaj za sposobnost kandidata ili za očekivati ​​u intervjuu. Bilo kako bilo, još je poželjnije koristiti kvalitetnu agenciju poput Pangare da pomogne u procesu bilo da se zaposli ili želi biti angažiran. Pangara ima specijalizirane timove koji su već intervjuirali i pratili kandidate, kao i jedinstven proces kvalifikacije za provjeru najboljih najboljih programera vani. Ako Pangara isporučuje Android programera za bilo koji posao, možete biti sigurni da će ta osoba biti idealno prilagođena tom poslu.

Evo nade da ćete dobiti pravu osobu za svoj položaj. Nakon što vaše poslovanje može ovisiti o njemu.

* Ovaj je post uredio i recenzirao Binh Nguyen, mobilni talent Pangara.

Ako ste spremni poduzeti sljedeći korak i pridružiti se ekskluzivnoj mreži freelancera Pangara, tada krenimo! Postanite Pangara talent danas.

Obavezno pratite najnovije vijesti i događaje na našoj Facebook stranici, LinkedIn i Twitteru.

Izvorno objavljeno na pangara.com 13. studenog 2017.