top 35 android interview questions
Grundläggande Android-intervjufrågor för nybörjare och erfarna utvecklare och testare:
I den här tekniska eran finns det en enorm efterfrågan på utvecklare av Android-applikationer och det är också ett av de högt betalda jobben.
Därför försöker många tekniskt kunniga människor ta sig in i denna karriär. Det finns flera knepiga intervjufrågor som ställs i många MNC: s och några småskaliga företag. Och den här artikeln innehåller en uppsättning sådana Android-intervjufrågor och svar som kommer att vara till hjälp för miljontals arbetssökande.
Låt oss utforska !!
Den här artikeln innehåller en uppsättning vanliga frågor och svar för Android-intervjuer och svar som täcker nästan alla viktiga begrepp i enkla termer för att göra det möjligt för varje arbetssökande att rensa intervjun framgångsrikt.
De mest populära Android-intervjufrågorna och -svaren
Nedan följer en lista över de vanligaste frågorna om Android-intervjuer
F # 1) Vad är Android?
Svar: Android är ett operativsystem med öppen källkod och är främst populärt för smartphones och surfplattor.
Detta operativsystem är Linux-kärnbaserat. Med hjälp av Android-operativsystemet utvecklar utvecklaren funktioner eller program som kan utföra grundläggande såväl som den avancerade typen av operationer på smarttelefonen.
F # 2) Vad är Android SDK?
Svar: För att utveckla en mobilapplikation kräver Android-utvecklare några verktyg och detta krav uppfylls av “Android SDK” som är en uppsättning verktyg som används för att utveckla eller skriva appar.
Den har ett grafiskt användargränssnitt som emulerar Android-miljön. Den här emulatorn fungerar som en faktisk mobil enhet som utvecklarna skriver sin kod på och sedan felsöker / testar samma kod för att kontrollera om något är fel.
F # 3) Vilka är de olika versionerna av Android OS som du kommer ihåg?
Svar: Nedan följer de olika versionerna av Android.
Version | namn |
---|---|
Android 4.0-4.0.4 | Glass sandwich |
Android 8.0 | Vädring |
Android 7.0 - 7.1.2 | Nougat |
Android 6 - 6.0.1 | Marshmallow |
Android 5 - 5.1.1 | Klubba |
Android 4.4 - 4.4.4 | Kit Kat |
Android 4.1 - 4.3 | Geleböna |
F # 4) Vad är skillnaden mellan testning av mobilapplikationer och mobiltestning?
Svar: Mobilappstestning är testning av applikationer på en enhet som huvudsakligen fokuserar på programmets funktioner och funktioner.
Och mobil testning är testningen av den faktiska mobilenheten och fokuserar på mobila funktioner som samtal, SMS, kontakter, mediaspelare, inbyggda webbläsare etc.
F # 5) Namnge de språk som stöds för Android-utveckling.
Svar: Java är det allmänt använda språket för Android-utveckling. Det stöder också C / C ++ och när det används med Android SDK förbättras det också prestandahastigheten.
F # 6) Vilka är fördelarna med Android-operativsystemet?
Svar: Det är öppen källkod och plattformsoberoende. Den stöder olika tekniker som Bluetooth, Wi-Fi, etc.
F # 7) Förklara Android Architecture kort.
Svar: Android-arkitektur är i form av komponenter för programvarustack.
Nedanstående diagram beskriver de olika lagren i Android-arkitekturen.
- Linux-kärna : Linux-kärnan är placerad längst ner i programvarustacken och är grunden för Android-arkitekturen. Med hjälp av Linux-kärnan ger Android en anslutning mellan de andra lagren i programvaran. Det hjälper till att utveckla drivrutiner som knappsats, display, ljud för tillverkning av enheter etc.
- Hardware Abstraction Layer (HAL) : HAL tillhandahåller ett gränssnitt mellan enhetsdrivrutiner och API-ramverk. Den består av biblioteksmoduler som är specifika för hårdvarukomponenten.
- Android Runtime : Linux-kärnan tillhandahåller en exekveringsmiljö med flera uppgifter så att flera processer kan köra varje processkörning på sin egen instans av Android Runtime (ART). Android har kärnbaserade runtime-bibliotek som Dalvik VM-specifika bibliotek, Java-interoperabilitetsbibliotek, Android-bibliotek och C / C ++ -bibliotek.
(bild källa )
- Application Framework (Java API Framework) : Hela Android-funktionerna är tillgängliga via API: et. Den består av flera tjänster som Activity Manager, Resource Manager, Notification Manager, etc., som bildar den miljö där Android-applikationen körs.
- Applikationer : Android-applikationen är ett toppskikt och alla typer av inbyggda applikationer som SMS, webbläsare, kontakt etc. ingår i detta toppskikt. Det inkluderar även tredjepartsapplikationer som installeras av användaren som spel etc.
F # 8) Definiera och förklara Android Framework.
Svar: Android Framework är en uppsättning API: er där Android-utvecklarna skriver kod för mobilapparna. Den innehåller metoderna och klasserna för att skriva programmeringskoden.
Android-ramverket innehåller en annan uppsättning verktyg för att skapa bildfönster, textfält, knappar, etc. Det inkluderar också 'Aktiviteter' som användaren interagerar med och 'Tjänster', som är de program som körs i bakgrunden. Det är ett paket med olika komponenter som Intents, Broadcast Receivers, Content Providers, etc.
F # 9) Vilka komponenter är nödvändiga för ett nytt Android-projekt?
Svar: När ett nytt Android-projekt skapas krävs följande komponenter:
- manifestera: Den innehåller en XML fil.
- bygga/: Den innehåller build-utdata.
- src /: Den innehåller kod och resursfiler.
- nötkött/: Den innehåller bitmappsbilder, UI-strängar och XML-layout, dvs. alla icke-kodresurser.
- tillgångar/: Den innehåller en fil som ska sammanställas till en .apk fil.
Bilden nedan visar projektvyn när ett Android-projekt har skapats:
(bild källa )
F # 10) Ge de viktiga kärnkomponenterna i Android.
Svar: Kärnkomponenterna i Android-operativsystem är:
- Aktivitet
- Avsikter
- Tjänster
- Innehållsleverantör
- Fragment
F # 11) Förklara kort - vad menas med aktiviteter?
Svar: Aktiviteter är den del av mobilappen som användaren kan se och interagera med.
Till exempel , om du öppnar en SMS-app som har flera aktiviteter som att skapa nytt SMS, lägga till en kontakt från adressboken, skriva innehållet i SMS-kroppen, skicka SMS till den valda kontakten etc.
Aktivitet håller koll på följande:
- Håller reda på vad en användare för närvarande letar efter i en app.
- Håller koll på tidigare använda processer, så att användaren kan växla mellan pågående process och tidigare process.
- Det hjälper till att döda processerna så att användaren kan återgå till sitt tidigare tillstånd
En aktivitet implementeras som en underklass av aktivitetsklassen enligt nedan:
Offentlig klass MyActivity utökar aktivitet
{
}
F # 12) Vad menas med tjänster?
Svar: Service är en Android-komponent som körs i bakgrunden och agerar oberoende. Det ger inget användargränssnitt.
Även om tjänsterna körs bakom scenen kan en användare fortsätta sitt arbete med olika appar. För det mesta är användarna inte medvetna om de tjänster som körs i bakgrunden. Dessa tjänster gör att systemet kan döda processen utan att avbryta användarens pågående arbete.
En tjänst implementeras som en underklass av serviceklass:
vad är en bra mp3-nedladdningsapp för android
Offentlig klass MainService utökar tjänsten
{
}
F # 13) Förklara en kortfattad aktivitetslivscykel.
Svar: När en användare interagerar med appen och flyttar hit och dit, ut ur appen, återvänder till appen etc. Under hela denna process rör sig 'Activity' -instanser också i de olika stadierna i sin livscykel.
Det finns sju olika tillstånd som - onCreate (), onStart (), onRestart (), onResume (), onPause (), onStop () och onDestroy (). Dessa kallas som en ”återuppringning”. Android-systemet åberopar dessa återuppringningar för att veta att staten har ändrats.
Nedanstående diagram beskriver aktivitetslivscykeln:
(Bild källa )
När en användare arbetar med en app är det många aktiviteter involverade i den som Öppna, Stäng, Spara, Radera, Skicka, etc.
Baserat på användaråtgärden är dessa aktiviteter delvis frånkopplade från användargränssnittet men dessa aktiviteter finns alltid i minnet så att när användaren ringer tillbaka samma aktivitet, kommer användaren att vara i samma tillstånd som han slutade.
F # 14) Vad är en avsikt?
Svar: Android har en avsiktsklass när användaren måste navigera från en aktivitet till en annan. Intent visar meddelanden från enheten till användaren och sedan kan användaren svara på aviseringen om det behövs.
Nedan följer de två typerna:
- Implicita avsikter
- Explicita avsikter
F # 15) Förklara implicita och explicita avsikter.
Svar: Implicit Intent anropar systemkomponenterna medan Explicit Intents anropar Aktivitetsklassen.
F # 16) Vad är vikten av att ställa in tillstånd för apputveckling?
Svar: När behörigheterna är inställda för apputveckling är data och kod endast begränsad till behöriga användare.
Om koden förvaras utan några begränsningar eller om den är tillgänglig för vem som helst, finns det risk för kompromiss med kod som leder till defektläckage.
F # 17) Vad är .apk-tillägg i Android?
Svar: Det är ett standardfilformat som används av Android-operativsystemet. Application Package Kit (APK) används för installation av mobilappar. .Apk innehåller resursfil, certifikat, manifestfil och annan kod.
APK-filer är arkivfiler i zip-format med .apk-tillägg.
F # 18) Vad används databasen för Android-plattformen?
Svar: SQLite är den databas som används för Android-plattformen. Det är en öppen källkod, serverlös databas.
F # 19) Vad är ANR i Android?
Svar: ANR står för Application Not Responding. Det är ett meddelande eller popup-fönster som visas av Android-plattformen när applikationen utför för många funktioner åt gången och om den plötsligt inte svarar länge på användarens åtgärd.
F # 20) Vilka är dialogrutorna som stöds av Android-plattformen?
Svar: Android stöder fyra typer av dialogrutor:
- AlertDialog : Den har högst 3 knappar och ibland innehåller AlertDialog kryssrutor och radioknappar för att välja element.
- ProgressDialog : Den visar förloppsindikatorn eller hjulen.
- TimePickerDialog : Med den här dialogrutan väljer en användare tid.
- DatePickerDialog : Med den här dialogrutan väljer en användare datumet
F # 21) Vad är ADB?
Svar: Android Debug Bridge (ADB) är ett kommandoradsverktyg som utför skalkommandon.
ADB används för direkt kommunikation mellan emulatorportarna. Det ger direkt kontroll över kommunikationen mellan emulatorinstanser till utvecklaren.
F # 22) Vad är ActivityCreator?
Svar: ActivityCreator är en batchfil och skalskript som användes för att skapa ett nytt Android-projekt. Det ersätts nu av 'Skapa nytt projekt' i Android SDK.
F # 23) Vad är orientering?
Svar: Orientering är nyckelfunktionen i smartphones idag. Det har förmågan att rotera skärmen mellan horisontellt eller vertikalt läge.
Android stöder två typer av skärmorienteringar som nämns nedan:
- Porträtt : När din enhet är lodrätt inriktad.
- Landskap : När enheten är horisontellt inriktad.
setOrientation () är en metod med vilken du kan ställa in skärmjusteringar. HORIZONTAL och VERTICAL är två värden som kan ställas in i metoden setOrientation (). Närhelst det sker en förändring i skärmorienteringen, dvs. från Horisontell till Vertikal eller vice versa, blir onCreate () -metoden för Aktiviteten avfyrad.
I grund och botten, när orienteringen på Android-mobilenheten ändras, förstörs den aktuella aktiviteten och sedan återskapas samma aktivitet i den nya visningsriktningen. Android-utvecklare definierar orienteringen i filen AndroidManifest.xml.
F # 24) Vad är AIDL?
Svar: I Android-plattformen finns fjärrmetoder som underlättar användningen av metoder från ett program till ett annat. För att skapa och implementera fjärrmetoderna är det första steget att definiera kommunikationsgränssnittet i AIDL.
AIDL står för Android Interface Definition Language. Det underlättar kommunikationen mellan klienten och tjänsten. Det kommunicerar också informationen genom kommunikation mellan processer.
För kommunikation mellan processer delas data upp i bitar som är lätt att förstå av Android-plattformen.
F # 25) Vilka datatyper stöds av AIDL?
Svar: Datatyper som stöds av AIDL är följande:
- Sträng
- Lista
- Karta
- charSequence
- Java-datatyper som INT, Long, Char, Boolean, etc.
F # 26) Förklara AndroidManifest.xml-filen och varför behöver du det här?
hur man använder .bin-filer
Svar: Varje applikation måste ha en AndroidManifest.xml-fil i rotkatalogen. Den innehåller information om din app och ger samma till Android-systemet.
Informationen innehåller paketnamnet, Android-komponenter som Aktivitet, Tjänster, Broadcast-mottagare, Innehållsleverantörer etc. Varje Android-system måste ha denna information innan någon appkod körs.
AndroidManifest.xml-filen utför följande uppgifter:
- Det ger ett namn till Java-paketet och det här namnet är en unik identifierare för applikationen.
- Den beskriver de olika komponenterna i applikationen som inkluderar Aktivitet, Tjänster, Innehållsleverantörer etc. Den definierar också de klasser som implementerar dessa komponenter.
- Det ansvarar för att skydda applikationen och deklarerar tillstånd för åtkomst till den skyddade delen av appen.
- Det förklarar också Android API som kommer att användas av applikationen.
- Den innehåller information om biblioteksfiler som används och länkas till applikationen.
F # 27) Vad har du arbetat med alla enheter på?
Svar: Det finns många mobila enheter tillgängliga på marknaden med olika operativsystem.
Specifikt har jag arbetat med Android, Windows, Symbian, iPhone, etc.
F # 28) Vilka verktyg används för felsökning på Android-plattformen?
Svar: För att förstå orsaken till misslyckandet eller orsaken till något problem är felsökning viktigt. På Android-plattformen Android Monitor.bat verktyget används på iOS-plattformen, iPhone Configuration-verktyget används för felsökningsändamål.
Det finns olika verktyg för felsökning som inkluderar: Android DDMS, Android Debug Bridge, iOS-simulator, Felsökning från Eclipse med ADT, Fjärrfelsökning på Android med Chrome, etc.
F # 29) Vilket scenario kan bara testas på riktiga enheter men inte på en emulator?
Svar: Emulatorer används för att utföra liknande typer av test som utförs på riktiga enheter. I grund och botten används emulatorer som en ersättning för riktiga enheter, eftersom det ibland inte finns riktiga enheter för testning, det är ibland dyrare att använda riktiga mobila enheter för teständamål.
Men det finns få scenarier som inte kan testas med hjälp av emulator, dessa kan endast testas med riktiga enheter. Dessa scenarier är avbrutna scenarier, dvs meddelanden, avbrott i telefonsamtal när du använder appen, låg batterinivå, Bluetooth, minneskortmontering och avmontering, etc.
F # 30) Namnge de mobila automatiseringsverktygen som finns på marknaden.
Svar: Det finns en hel del testverktyg för mobilautomation som finns på marknaden, men dessa används endast om projektet kräver det och om applikationen stöder automatiseringen.
Dessa verktyg betalas såväl som gratisverktyg, därför måste analys göras inom projektgruppen och sedan måste lämpligt mobilautomatiseringsverktyg väljas. Silk Mobile, SeeTest, Ranorex är det betalda mobilautomationsverktyget medan Appium, KIF, Robotium, Calabash är få gratisverktyg.
F # 31) Hur felsöker du Android-applikationen som kraschar ofta?
Svar: Nedan följer några steg som vi måste följa när vi felsöker det kraschande problemet:
- Frigör minnesutrymme : Det finns bara begränsat utrymme tillgängligt på mobila enheter för mobilappar. För att undvika kraschproblem eller minnesrelaterade problem måste du först kontrollera minnesutrymmet.
- Rensa appdataanvändning : Du kan rensa appdata med Application Manager under 'Inställningar'. Detta rensar cacheminnet och tillåter lite ledigt utrymme för att installera en annan app, annars ökar det din nuvarande app.
- Minneshantering : Vissa appar fungerar perfekt på en typ av mobil enhet men samma app kanske inte fungerar på en annan typ av enhet, eftersom processorkraft, minneshantering och CPU-hastighet för sådana enheter är olika. För att alla appar ska kunna köras ordentligt på alla typer av mobila enheter ska du hantera minnet på enheten.
- Kompatibilitetsproblem : Det är alltid inte möjligt att testa mobilappar på alla mobila enheter, webbläsare, operativsystem etc. Så du måste testa din mobilapp på så många mobila enheter som möjligt för att undvika kompatibilitetsproblem.
F # 32) Hur hittar du minnesläckor i mobilappen på Android-plattformen?
Svar: Android Studio använder Android Device Manager (ADM), den här ADM används för att upptäcka minnesläckor i Android-plattformen.
När du öppnar ADM i Android Studio och sedan till vänster om ADM hittar du din enhet eller emulator där ett högtecken visas. När du kör någon mobilapp kommer du att se höjdstorlek, minnesanalys och annan statistik som visas på den.
F # 33) Vad är DDMS?
Svar: Android Studio har felsökningsverktyg som kallas DDMS, dvs. Dalvik Debug Monitor Server.
Den har breda felsökningsfunktioner som inkluderar:
- Port vidarebefordran tjänster.
- Skärmdump på enheten.
- Tråd- och höginformation.
- Inkommande samtal och SMS-förfalskning.
- Logcat
- Radiostatusinformation.
- Platsdata spoofing.
DDMS är integrerat med Android-studion. För att starta DDMS måste du först öppna Android Device Monitor (ADM) och sedan klicka på DDMS-menyknappen. När DDMS har startats visas listan över anslutna enheter på vänster sida tillsammans med de processer som körs på varje enhet.
Med hjälp av DDMS kan du felsöka både på riktiga enheter och emulatorer.
F # 34) Vilka är de olika datalagringsalternativen tillgängliga på Android-plattformen?
Svar: Android-plattformen erbjuder ett brett utbud av datalagringsalternativ. Dessa alternativ måste användas baserat på behovet, eftersom data är säkra och endast används med tillstånd eller kan nås offentligt.
Nedan är listan över alternativ för datalagring på Android-plattformen:
- Delad preferens : Den lagrar data i XML-filer. Det är det enklaste sättet att lagra privat data i nyckel-värdeparet.
- SQLite : Den lagrar strukturerad data i den privata databasen.
- Intern lagring : Den lagrar data i enhetens filsystem och alla andra appar kan inte läsa dessa data.
- Extern lagring : Data lagras i filsystemet men de är tillgängliga för alla appar på enheten
F # 35) Förklara sensorer i Android.
Svar: Android-aktiverade enheter har inbyggda sensorer som mäter orientering, rörelse och andra förhållanden.
Dessa sensorer ger data med hög noggrannhet, vilket hjälper till att övervaka enhetens positionering och rörelse. Några av sensorerna är maskinvarubaserade och få är programvarubaserade.
Det finns tre kategorier av sensorer som nämns nedan:
- Rörelsesensorer : Dessa sensorer mäter rotations- och accelerationskrafterna och inkluderar gravitationssensorer, rotationsvektorsensorer, accelerometrar etc.
- Miljögivare : Den mäter lufttemperatur, tryck, fuktighet etc.
- Positionssensorer : Den mäter enhetens fysiska position och inkluderar orienteringssensorer och magnetometrar.
Det finns fyra typer av Java-klasser som visas nedan:
- Sensor Manager
- Sensor
- SensorEvent
- SensorEventListener
Slutsats
Nästan alla viktiga frågor och svar för Android-intervjuer har behandlats här i den här artikeln. Jag hoppas att detta skulle ha varit mycket användbart för dig.
Jag är säker på att du kan knäcka alla Android-intervjuer framgångsrikt med grundlig kunskap om alla dessa frågor.
Jag hoppas att du är redo för en intervju !! Önskar er alla framgång !!
Rekommenderad läsning
- De 10 bästa apparna för projektledning 2021 för Android- och iOS-enheter
- 11 bästa automatiseringsverktyg för testning av Android-applikationer (Android-apptestverktyg)
- Android App Testing Tutorial: En nybörjarguide
- Appium-handledning för testning av Android- och iOS-mobilappar
- Ansluter riktiga iOS- och Android-enheter från moln till Appium Studio
- Skapa appiumtest för en Android-app
- Komma igång med Robotium - det mest populära testverktyget för Android-användargränssnitt
- Hur man automatiserar Android-applikationer med TestComplete-verktyget
- Så här fixar du minnesläckage i Android-appar med DDMS-verktyg
- Hur testar jag en Android-version när den tas ur marknaden?
- Mobile App Beta Testing Services (iOS och Android Beta Testing Tools)
- Handledning för mobil UI-testning (GUI-testning av iOS- och Android-appar)
- Selendroid-handledning: Android Mobile Test Automation Framework (del 1)
- TOPP 15 Bästa mobiltestverktyg 2021 för Android och iOS
- Vad är nätverkssäkerhetsnyckel: Hur man hittar det för router, Windows eller Android
- Intervjufrågor och svar