Om ditt företag är ute efter att anställa en riktigt bra utvecklare för dina Android-appar, hur ser du till att du kan få rätt kandidat? Allt börjar med Android-intervjufrågor. I den här artikeln kommer vi att förklara hur man skiljer de duktiga från de mindre duktiga och ser till att ditt företag får de bästa kandidaterna.

Intervjutekniker fungerar på båda sätten. Dels är det viktigt för potentiella kandidater att utveckla goda intervjuerfärdigheter, dels är det lika viktigt för intervjuare att ställa rätt frågor och utveckla färdigheter för att undvika att anlita fel person. Se därför till att vara väl förberedd. Det handlar om att förstå positionen, kraven på jobbet och de nödvändiga frågorna för att säkerställa att intervjuaren är lämplig.

Under intervjun

Det är viktigt att du får den intervjuade att känna sig lugn. Intervjuprocessen kan vara väldigt stressande. Ju mer du kan göra för att lugna kandidaten, ju mer sannolikt är du att få en genuin känsla för deras karaktär.

Självklart behöver man, som med alla kandidater, ta upp de grundläggande frågorna för att få en bild av sökandes karaktär och tidigare arbetssätt. Det är en bra idé att kolla sociala medier också. Nu har alla en social media-närvaro och det är en bra idé att ta en snabb titt på deras inlägg. Om de visar brist på integritet mot tidigare arbetsgivare finns det ingen anledning att tro att de plötsligt kommer att ändra sina beteendemönster. För mer information om hur du väljer rätt utvecklare för ditt företag, besök vårt blogginlägg här.

Så när du har frågat de vanliga generiska frågorna och gjort kandidaten bekväm, är det dags att ta reda på hur mycket de vet om Android-utveckling. Här är frågorna som blir mer specifika för jobbet och kanske ännu svårare.

Grundläggande frågor

1. Vad är Android och vem grundade det?

Android är ett operativsystem med öppen källkod, Linux. Det grundades av Andy Rubin och det används i mobiler, surfplattor, tv-apparater etc.


 

2. Namnge Androids applikationsarkitektur.
  • Activities: dikterar användargränssnittet och hanterar användarens interaktion med en smarttelefon skärm. Aktivitet utför åtgärder på skärmen.
  • Broadcast receivers: svarar på sändningsmeddelanden från en annan applikation i eller från systemet. Detta implementeras som en underklass av BroadcastReceiver-klassen och varje meddelande är erkänt som ett Intent-objekt.
  • Services: Dessa används för att utföra bakgrundsfunktioner.
  • Intent: Det här gör det möjligt att koppla mellan aktiviteter och dataöverföringsmekanism.
  • Resource Externalization: som refererar till strängar och grafik.
  • Notification: för dialogruta, ikon, ljus, meddelande, ljud och toast
  • Content providers: för att dela data mellan program

 

3. Vad är de ytterligare komponenterna i Android?
  • Fragments fungerar som en del av användargränssnittet i en aktivitet.
  • Views är UI-element som ritas på skärmen, inklusive knappar, listor etc.
  • Layouts visar hierarkier som styr skärmformat och utseendet på visningarna.
  • Intents är meddelanden som sammanfogar komponenterna.
  • Resources är externa element (strängar, konstanter och dragbara bilder).
  • Manifest är konfigurationsfilen för appen.

 

4. Vilka notifikationer finns tillgängliga i Android och vad är deras användning?

Snackbars & Toast Notification: Visar upp som ett popup-meddelande på fönstret.

Snackbars: Innehåller en enda textrad som är direkt relaterad till den operation som utförs. De innehåller vanligtvis en textåtgärd och inga ikoner. Endast en snackbar kan visas i taget och det kan innehålla en singelåtgärd, och ingen av dessa kan vara ”Avvisa” eller ”Avbryt”.

Toasts: Är endast tillgängliga med Androids och de används för systemmeddelande. De visas också längst ned på skärmen men de kan inte swipas av skärmen.

Status Bar Notifications: Visar meddelanden på statusfältet.

För mer information om Snackbars och Toast, se här.

Dialogue Notification: En aktivt relaterad notifikation.


 

5. Hur översätter du i Android?

Android använder Google Translate för att översätta data från ett språk till ett annat språk och placerar det som en sträng under utveckling.


 

6. Vilka typer av flaggor används för att köra ett program i Android?

FLAG_ACTIVITY_NEW_TASK

FLAG_ACTIVITY_CLEAR_TOP.


 

7. Android-versioner går under kodnamn, nämn så många kodnamn som du vet.

Aestro, Blender, Cupcake, Donut, Eclair, Froyo, Gingerbread, Honeycomb, Ice Cream Sandwich, Jelly Bean, Kitkat, Lollipop, Marshmallow


 

8. Vilka är de främsta fördelarna med Android?

Android är ett operativsystem med öppen källkod vilket innebär att det är gratis för slutanvändaren. Det finns inga licens-, utvecklings- eller distributionsavgifter. Den stöder många olika tekniker, inklusive kamera, bluetooth, wifi, tal och kant. Dessutom använder den också en mycket optimerad virtuell maskin som heter DVM (Dalvik Virtual Machine) för användning på mobila enheter.


 

9. Kan du namnge databasen som Android använder och ge en kort beskrivning om det?

Databasens namn är SQLite, vilket är en relationsdatabas med öppen källkod. Den kan användas för att utföra de vanliga databasfunktionerna på Android-enheter. Det är inte bara lätt att lagra på, manipulera och hämta data från men det är också inbäddat i Android-plattformen som standard. Ingen inställning krävs, administrationen är redan på plats.


 

10. Vilka är de olika typerna av lagerplatser som finns tillgängliga i Android och vad är deras användning?
  • Shared Preferences lagrar privata primitiva data i nyckelvärdespar. SharedPreferences-klassen hjälper till att tillhandahålla en allmän ram som tillåter användare att spara och hämta vidhållna nyckelvärdespar av primitiva datatyper. SharedPreferences kan användas för att spara primitiva data som booleans, floats, ints, longs och strängar. Dessa data kvarstår över användarsessioner, även när en applikation stängs. För mer information om hur du får ett SharedPreferences-objekt för en applikation klicka här..
  • Internal Storage lagrar privata data i enhetens minne. Du kan spara filer direkt på enhetens interna lagring. Filerna som sparas i det interna minnet är privata för din applikation som standard och andra program kan inte heller komma åt dem. När användaren avinstallerar din applikation kommer filerna att tas bort.
  • External Storage lagrar offentligt datum på det delade externa lagret. Varje Android-kompatibel enhet kan stödja en delad ”extern lagring” där filer kan sparas. Detta kan vara flyttbar lagringsmedia (SD-kort) eller internt (ej flyttbart) lagringsutrymme.
  • SQLite Databases lagrar strukturerad data i en privat databas. Android ger fullt stöd för SQLite-databaser. Alla databaser som man skapar kan vara tillgängliga med namn för någon klass i applikationen. Observera att de inte är tillgängliga utanför applikationen.
  • Network Connection lagrar data på webben med ens egen nätverksserver. För att kunna göra nätverksoperationer måste man använda klasser i följande paket nedan:

java.net.*

android.net.*


 

11. Vad är appwidgets i Android?

Applikations Widgets är miniatyrapplikationsvyer som kan inbäddas i andra program (till exempel startskärmen) och mottar periodiska uppdateringar. Dessa synpunkter kallas ofta widgets i användargränssnittet, och du kan publicera en med en appwidget-leverantör.


 

Byggstenar och livscykler

12. What are the Android core building blocks

Kärnbyggstenarna för Android är följande:

  • Activity: Klassen som representerar en enda skärm, dvs en ram i AWT
  • View: UI-elementet till exempel en etikett, knapp eller textfält. I grund och botten är allt som ses en vy
  • Intent: det som används för att påverka komponenter. Till exempel starta tjänsten, visa en webbsida eller sända ett meddelande.
  • Service: bakgrundsprocessen. Dessa kommer i två typer lokala som är åtkomliga från applikationen och fjärrkontrollen som kan nås från andra enheter.
  • Content Provider: dessa används för att dela data mellan olika program.
  • Fragment: separata delar av aktiviteten som kan visas i flertal samtidigt.
  • AndroidManifest.xml: Detta innehåller information om aktiviteter, behörigheter och innehållsleverantörer etc.
  • Android Virtual Device (AVD): som används för att testa programmet utan att behöva en tablett eller annan enhet.

 

13. Kan du namnge 7 livscykelmetoder för Android-aktivitet och förklara lite om var och en?

De 7 livscykelmetoderna är följande:

1) onCreate () – vilket innebär att en aktivitet har skapats

2) onStart () – vilket betyder att den har blivit synlig för användaren.

3) onResume () – vilket innebär att aktiviteten har börjat interagera med användaren

4) onPause () – vilket betyder att aktiviteten inte är synlig för användaren

5) onStop () – vilket betyder att den inte längre är synlig för slutanvändaren

6) onRestart () – vilket innebär att aktiviteten har slutat, innan den startas

7) onDestroy () – vilket innebär att aktiviteten kommer att förstöras

android graphic


 

Android-akronymer

14. Vad står ADB i Android för?

ADB fungerar som en bro mellan emulatorn och IDE. Det kör även fjärrskalkommandon för att köra applikationer på en emulator.


 

15. Vad är ANR i Android?

ANR står för ansökan svarar inte (application not responding). Det är en dialogruta som visas när programmet inte svarar.


 

16. Vad står ADT för?

ADT är Android-utvecklingsverktyg och det används för att utveckla och testa applikationer.


 

17. Vad står DDMS för och vad är dess möjligheter?

Detta hänvisar till Delvik Debug Monitor Server. Avhandling ett felsökningsverktyg som ingår i Android Studio. Den kan användas för port-vidarebefordringstjänster, att threada och heapa information på enheten, skärmdumpning på enheten, logcat, process och radio state-information. Dessutom tillhandahåller den bland annat tjänster för inkommande samtal och SMS-spoofing samt spridning av platsdata.

För mer information läs här.


 

Intent

18. Vad är en Intent och ge tre exempel på hur det används?

Tre vanliga användningsområden är:

  • Starta en aktivitet: Det är normalt att starta en ny instans av en aktivitet genom att ha en avsikt att startActivity() -metoden.
  • Leverera en sändning: Detta kan göras genom att ha avsikt att skickaBroadcast(), sendStickyBroadcast() och sendOrderedBroadcast()
  • Starta en tjänst: Kan användas för att utföra en engångsoperation, till exempel ladda ner en fil. Det uppnås genom att ha en avsikt att startService()

Mer information finns i det här avsnittet i Android Developer Guide.


 

19. Kan en intent användas för att ge data till en ContentProvider?

Nej, en intent kan inte användas för att ge data till en ContentProvider. För att kunna använda data i en ContentProvider måste du istället använda ContentResolver. Detta finns i programmets sammanhang och används för att kommunicera med leverantören som klient. Leverantörsobjektet fungerar genom att ta emot dataförfrågningar, utföra den nödvändiga åtgärden och sedan returnera resultaten.

Med intents kan vi starta en aktivitet:

 

Intent intent = new Intent(this, MyTestActivity.class);

       startActivity(intent);

 

Definitioner och lösningar

20. Definiera programresursfilen i Android.

JSON, XML bitmap.etc är applikationsresurser. Du kan injicera dessa filer för att bygga processen och kan ladda dem från koden.


 

21. Vad är en adapter i Android?

En adapter fungerar som en bro. Det konverterar dataobjekt till nya objekt så att det kan visas i användargränssnittskomponenter.

För mer information om Adaptrar, läs här.


 

22. Var finns layouter placerade i Android?

I Layout-mappen placeras layouter som XML-filer.


 

23. Vad är en singleton-klass i Android?

En klass som bara kan skapa ett objekt, det objektet kan delas med andra klasser.


 

24. Vad är ett fragment i Android?

Ett fragment är en aktivitet och det finns alltid aktivitet. Med fragment kan vi återanvända det i många aktiviteter och det är mer flexibelt att lokalisera på en skärm.


 

25. Vad är viloläge i Android?

Viloläge innebär att CPU-enheten kommer att sova och det accepterar inte några kommandon från en Android-enhet förutom radiogränssnittskikt och alarm.


 

26. Vilken kernel används i Android?

Android är en anpassad Linux 3.6-kernel.


 

27. Vilka undantag finns tillgängliga i Android?

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


 

28. Vad är ordningen i dialogrutan i Android?

Ordningen är: Positiv, neutral, negativ.


 

29. Vad är en dragbar mapp i Android?

En sammanställd visuell resurs som kan användas som bakgrund, banners, ikoner, stänkskärm etc.


 

30. Vad betyder ContentProvider och vad är det för normal användning?

En ContentProvider används för att hantera åtkomst av en strukturerad uppsättning data. Den identifierar data och tillhandahåller mekanismer för att definiera datasäkerheten. Det är standardgränssnittet som kopplar ihop data i en process med koden som körs i en annan. Mer information finns i det här avsnittet i Android Developer Guide.


 

31. Hur skickar du data till underaktiviteter i Android?

Via Bundle kan vi skicka data till underaktiviteter.

Bundle bun = new Bundle();

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


 

32. Du omorienterar en skärm och istället för Android som tar ner förgrunden och återställer visningsvärdena i aktivitetslayouten, återställs inte ett visningsvärde efter omorienteringen. Vad är den troliga orsaken till detta?

Den mest troliga orsaken är att utvecklaren inte har verifierat att den har ett giltigt ID. Ett Android-system återställer bara visningsstatusen i aktiviteten om varje visning ges ett unikt ID. Detta tillhandahålls av attributet, android: id

Mer information finns i det här avsnittet i Android Developer Guide.


 

Android-bibliotek

33. Beskriv Android-biblioteket.

Ett Android-bibliotek är ett utvecklingsprojekt som innehåller delad Android-källkod och andra resurser. Den innehåller allt som behövs för att kunna bygga en app, inklusive källkod, resursfiler och ett Android-manifest. Den sammanställer allt i en Android Arkiv (AAR)-fil som kan användas som ett beroende av en Android-appmodul.


 

34. När används Android-biblioteksmodulen?

Android-biblioteksmodulen kan användas när man bygger flera appar som kräver eller använder samma komponenter som aktiviteter, tjänster eller UI-layouter. Det används också när man bygger en app som finns i flera APK-varianter, till exempel gratis och betald version som behöver samma kärnkomponenter för båda.

Den här guiden kan hjälpa användare att lära sig hur man skapar ett Android-bibliotek.

För att hålla dig uppdaterad med den senaste Android-utvecklingen är det viktigt att du fortsätter att utveckla dina färdigheter, eftersom systemen utvecklas och förändras över tiden också. Detta gör det möjligt för dig att vara före konkurrensen och bli en mer värdefull tillgång till din klient och ditt team.


 

Android Thread

35. Vad är en thread?

En thread är en verkställningssekvens i ett program.” Varje thread har en prioritet och threaden med högre prioritet har de utförs före threads med lägre prioritet. När koden körs i threaden och skapar ett nytt thread-objekt har den nya threaden sin initiala prioritet inställd lika med prioriteten för den skapande threaden, och är en daemon-thread om och endast om den skapande threaden är en daemon.


 

36. Hur skapar man en ny verkställningssekvens?

Det finns två sätt att man kan skapa en ny verkställningssekvens. En är att förklara en klass för att vara en undergrupp av en thread. Underklassen kommer att åsidosätta körmetoden för klassen Thread. Underklassen kan tilldelas och startas. Ett exempel på en thread som komprimera primtal större än ett angivet värde nedan:

class PrimeThread extends Thread {

        long minPrime;

        PrimeThread(long minPrime) {

            this.minPrime = minPrime;

        }



        public void run() {

            // compute primes larger than minPrime

             . . .

        }

    }

Koden nedan skulle skapa en thread och köra:

PrimeThread p = new PrimeThread(143);

    p.start();

Ett annat sätt att skapa en tråd är att deklarera en klass som implementerar ett Runnable Interface. Denna klass kommer att implementera körmetoden. Klassen kan tilldelas, skickas som ett argument när du skapar en Thread och startar.

class PrimeRun implements Runnable {

        long minPrime;

        PrimeRun(long minPrime) {

            this.minPrime = minPrime;

        }



        public void run() {

            // compute primes larger than minPrime

             . . .

        }

    }

Koden nedan skulle skapa en thread och köra:

PrimeRun p = new PrimeRun(143);

    new Thread(p).start();

 

37. Kan mer än en thread ha samma namn?

Ja. Varje tråd har ett namn för att kunna identifieras. Om ett namn inte anges när en tråd skapas skapas ett nytt namn för det.

Se mer information om Android threads här.


 

Slutsats

Observera att dessa frågor inte täcker komplexiteten i Android-utveckling och de erbjuds helt enkelt som en guide. Genom att använda dessa frågor kommer du att kunna få en verklig känsla för kandidatens förmåga. Hur som helst är det fortfarande att föredra att använda en kvalitetsbyrå som Pangara för att hjälpa till med processen om du anställer eller vill bli anställd. Pangara har specialistteam som redan har intervjuat och övervakat kandidaterna samt en unik kvalifikationsprocess för att hitta de allra bästa utvecklarna där ute. Om Pangara levererar en Android-utvecklare för något företag, kan du vara säker på att personen kommer att vara idealisk för jobbet.

Här hoppas du få rätt person för din position. Efter allt kan din verksamhet vara beroende av det.

* Det här inlägget har redigerats och granskats av Binh Nguyen, mobilutvecklare hos Pangara.

Om du är redo att ta nästa steg, hitta en Pangara-utvecklare idag. Vi ser fram emot att arbeta med dig!

Håll dig uppdaterad om Pangaras senaste nyheter och händelser på vår Facebook, LinkedIn och Twitter.

 

Summary
Description
Om ditt företag är ute efter att anställa en riktigt bra utvecklare för dina Android-appar, hur ser du till att du kan få rätt kandidat? Allt börjar med Android-intervjufrågor. I den här artikeln kommer vi att förklara hur man skiljer de duktiga från de mindre duktiga och se till att ditt företag får med de bästa kandidaterna.
Author
Publisher Name
Pangara
Publisher Logo