top 35 android interview questions
Základní otázky k rozhovoru pro Android pro nováčky a zkušené vývojáře a testery:
V této technologické éře existuje obrovská poptávka po vývojářích aplikací pro Android a je to také jedna z vysoce placených úloh.
Proto se mnoho technologicky zdatných lidí snaží dostat se do této kariéry. V mnoha nadnárodních společnostech a v některých malých společnostech je kladeno několik složitých otázek z pohovoru. A tento článek obsahuje sadu takových otázek a odpovědí na pohovory pro Android, které budou užitečné pro miliony uchazečů o zaměstnání.
Pojďme prozkoumat !!
Tento článek obsahuje sadu nejčastěji kladených otázek a odpovědí na pohovory pro Android, které pokrývají téměř všechny důležité pojmy v jednoduchých termínech, aby umožnily každému uchazeči o zaměstnání úspěšně absolvovat pohovor.
Nejpopulárnější Android Interview Otázky a odpovědi
Níže je uveden seznam nejčastěji kladených dotazů na Android Interview
Otázka č. 1) Co je Android?
Odpovědět: Android je operační systém s otevřeným zdrojovým kódem a je oblíbený hlavně pro smartphony a tablety.
Tento operační systém je založen na linuxovém jádře. Pomocí operačního systému Android vývojář vyvíjí funkce nebo programy, které na smartphonu mohou provádět základní i pokročilé operace.
Otázka č. 2) Co je sada Android SDK?
Odpovědět: K vývoji mobilní aplikace vyžadují vývojáři Androidu některé nástroje a tento požadavek splňuje „Android SDK“, což je sada nástrojů, které se používají pro vývoj nebo psaní aplikací.
Má grafické uživatelské rozhraní, které emuluje prostředí Android. Tento emulátor funguje jako skutečné mobilní zařízení, na které vývojáři zapisují svůj kód a poté ladí / testují stejný kód, aby zkontrolovali, zda se něco děje.
Otázka č. 3) Jaké jsou různé verze OS Android, které si pamatujete?
Odpovědět: Níže jsou uvedeny různé verze systému Android.
Verze | název |
---|---|
Android 4.0-4.0.4 | Zmrzlinový sendvič |
Android 8.0 | Větrání |
Android 7.0 - 7.1.2 | Nugát |
Android 6 - 6.0.1 | Ibišek |
Android 5 - 5.1.1 | Lízátko |
Android 4.4 - 4.4.4 | Kit Kat |
Android 4.1 - 4.3 | Želé fazole |
Otázka č. 4) Jaký je rozdíl mezi testováním mobilních aplikací a testováním mobilních zařízení?
Odpovědět: Testování mobilních aplikací je testování aplikací na zařízení, které se zaměřuje hlavně na funkce a vlastnosti aplikace.
A mobilní testování je testování skutečného mobilního zařízení a zaměřuje se na mobilní funkce jako volání, SMS, kontakty, přehrávač médií, vestavěné prohlížeče atd.
Otázka č. 5) Pojmenujte jazyky podporované pro vývoj systému Android.
Odpovědět: Java je široce používaný jazyk pro vývoj systému Android. Podporuje také C / C ++ a při použití se sadou Android SDK také zvyšuje rychlost výkonu.
Otázka č. 6) Jaké jsou výhody operačního systému Android?
Odpovědět: Je open-source a nezávislý na platformě. Podporuje různé technologie jako Bluetooth, Wi-Fi atd
Otázka č. 7) Stručně vysvětlete architekturu Android.
Odpovědět: Architektura systému Android je ve formě softwarových komponent zásobníku.
Níže uvedený diagram popisuje různé vrstvy v architektuře Android.
- Linuxové jádro : Linuxové jádro je umístěno ve spodní části softwarového zásobníku a je základem architektury Android. Pomocí jádra Linux poskytuje Android spojení mezi ostatními vrstvami softwaru. Pomáhá vyvíjet ovladače, jako je klávesnice, displej, zvuk pro výrobu zařízení atd.
- Hardwarová abstrakční vrstva (HAL) : HAL poskytuje rozhraní mezi ovladači zařízení a rozhraním API. Skládá se z knihovních modulů, které jsou specifické pro hardwarovou komponentu.
- Android Runtime : Linuxové jádro poskytuje prostředí pro provádění více úkolů, takže je možné spouštět více procesů, každý proces běží na vlastní instanci Android Runtime (ART). Android má základní běhové knihovny, jako jsou knihovny specifické pro Dalvik VM, knihovny Java Interoperability Libraries, knihovny Android a knihovny C / C ++.
(obraz zdroj )
- Application Framework (Java API Framework) : Všechny funkce systému Android jsou k dispozici prostřednictvím rozhraní API. Skládá se z více služeb, jako je Activity Manager, Resource Manager, Notification Manager atd., Které tvoří prostředí, ve kterém běží aplikace pro Android.
- Aplikace : Aplikace pro Android je horní vrstva a do této horní vrstvy jsou zahrnuty všechny typy vestavěných aplikací, jako jsou SMS, prohlížeče, kontakty atd. Zahrnuje také aplikace třetích stran, které si uživatel nainstaluje, například hry atd.
Otázka č. 8) Definujte a vysvětlete rámec Android.
Odpovědět: Rámec pro Android je sada rozhraní API, pomocí kterých vývojáři systému Android píší kód pro mobilní aplikace. Obsahuje metody a třídy pro zápis programovacího kódu.
Rámec systému Android obsahuje jinou sadu nástrojů pro vytváření obrazového panelu, textového pole, tlačítek atd. Zahrnuje také „Činnosti“, se kterými uživatel interaguje, a „Služby“, což jsou programy, které běží na pozadí. Jedná se o balíček různých komponent, jako jsou záměry, přijímače vysílání, poskytovatelé obsahu atd.
Otázka č. 9) Které komponenty jsou nezbytné pro nový projekt Android?
Odpovědět: Kdykoli je vytvořen nový projekt pro Android, jsou vyžadovány níže uvedené komponenty:
- manifest: Obsahuje XML soubor.
- stavět/: Obsahuje výstup sestavení.
- src /: Obsahuje soubory kódu a prostředků.
- hovězí/: Obsahuje bitmapové obrázky, řetězce uživatelského rozhraní a rozložení XML, tj. Všechny prostředky bez kódu.
- aktiva/: Obsahuje soubor, který by měl být zkompilován do .apk soubor.
Níže uvedený obrázek ukazuje zobrazení projektu po vytvoření projektu Android:
(obraz zdroj )
Otázka č. 10) Poskytněte důležité základní součásti systému Android.
Odpovědět: Mezi hlavní součásti operačních systémů Android patří:
- Aktivita
- Záměry
- Služby
- Poskytovatel obsahu
- Fragment
Otázka č. 11) Stručně vysvětlete - co se rozumí pod Činnostmi?
Odpovědět: Aktivity jsou součástí mobilní aplikace, kterou může uživatel vidět a komunikovat s ní.
Například , pokud otevřete aplikaci SMS, která má více aktivit, jako je vytváření nových SMS, přidání kontaktu z adresáře, zápis obsahu do těla SMS, odeslání SMS vybranému kontaktu atd.
Aktivita sleduje následující:
- Sleduje, co uživatel aktuálně hledá v aplikaci.
- Udržuje přehled o dříve použitých procesech, aby uživatel mohl přepínat mezi probíhajícím procesem a předchozím procesem.
- Pomáhá zabít procesy, aby se uživatel mohl vrátit do předchozího stavu
Aktivita je implementována jako podtřída třídy Activity, jak je znázorněno níže:
Veřejná třída MyActivity rozšiřuje aktivitu
{
}
Otázka č. 12) Co se rozumí službami?
Odpovědět: Služba je součást systému Android, která běží na pozadí a funguje nezávisle. Neposkytuje žádné uživatelské rozhraní.
Ačkoli služby běží za scénou, uživatel může pokračovat ve své práci na různých aplikacích. Uživatelé většinou nevědí o službách, které běží na pozadí. Tyto služby umožňují systému zabít proces bez přerušení probíhající práce uživatele.
Služba je implementována jako podtřída třídy Service:
otevření souboru XML v aplikaci Excel
Veřejná třída MainService rozšiřuje službu
{
}
Otázka č. 13) Stručně vysvětlete životní cyklus aktivity.
Odpovědět: Když uživatel interaguje s aplikací a pohybuje se sem a tam, mimo aplikaci, vrací se do aplikace atd. Během celého tohoto procesu se instance „Aktivita“ také pohybují v různých fázích jejich životního cyklu.
Existuje sedm různých stavů jako - onCreate (), onStart (), onRestart (), onResume (), onPause (), onStop () a onDestroy (). Ty se nazývají „zpětné volání“. Systém Android vyvolá tato zpětná volání, aby věděl, že došlo ke změně stavu.
Níže uvedený diagram popisuje životní cyklus aktivity:
(Obraz zdroj )
Když uživatel pracuje na aplikaci, je do ní zapojeno mnoho aktivit, jako je Otevřít, Zavřít, Uložit, Odstranit, Odeslat atd.
Na základě akce uživatele jsou tyto aktivity částečně odpojeny od uživatelského rozhraní, ale tyto aktivity se vždy nacházejí v paměti, takže když uživatel zavolá zpět stejnou aktivitu, bude uživatel ve stejném stavu, kde přestal.
Otázka č. 14) Co je to záměr?
Odpovědět: Android má třídu Intent, když má uživatel přecházet z jedné aktivity na druhou. Záměr zobrazuje oznámení ze zařízení uživateli a poté může uživatel v případě potřeby na oznámení reagovat.
Níže jsou uvedeny dva typy:
- Implicitní záměry
- Výslovné záměry
Otázka č. 15) Vysvětlete implicitní a explicitní záměry.
Odpovědět: Implicitní záměr volá systémové komponenty, zatímco Explicitní záměry vyvolávají třídu Activity.
Otázka č. 16) Jaký je význam nastavení oprávnění ve vývoji aplikací?
Odpovědět: Jakmile jsou pro vývoj aplikace nastavena oprávnění, jsou data a kód omezeny pouze na oprávněné uživatele.
Pokud je kód uchováván bez jakéhokoli omezení nebo je přístupný komukoli, existuje šance na kompromitaci kódu, která má za následek únik vady.
Otázka č. 17) Co je přípona .apk v systému Android?
Odpovědět: Je to výchozí formát souboru, který používá operační systém Android. Sada Application Package Kit (APK) se používá k instalaci mobilních aplikací. .Apk obsahuje soubor prostředků, certifikát, soubor manifestu a další kód.
Soubory APK jsou archivní soubory ve formátu zip s příponou .apk.
Otázka č. 18) Co je databáze používaná pro platformu Android?
Odpovědět: SQLite je databáze, která se používá pro platformu Android. Je to open-source databáze bez serveru.
Otázka č. 19) Co je ANR v systému Android?
Odpovědět: ANR znamená Aplikace neodpovídá. Jedná se o oznámení nebo vyskakovací okno zobrazené platformou Android, kdykoli aplikace provádí příliš mnoho funkcí najednou a pokud náhle dlouhodobě nereaguje na akci uživatele.
Otázka č. 20) Která jsou dialogová okna podporovaná platformou Android?
Odpovědět: Android podporuje čtyři typy dialogových oken:
- AlertDialog : Má maximálně 3 tlačítka a někdy AlertDialog obsahuje zaškrtávací políčka a přepínací tlačítka pro výběr prvku.
- ProgressDialog : Zobrazuje ukazatel průběhu nebo kolečka.
- TimePickerDialog : Pomocí tohoto dialogového okna vybere uživatel čas.
- DatePickerDialog : Pomocí tohoto dialogového okna vybere uživatel Datum
Otázka č. 21) Co je to ADB?
Odpovědět: Android Debug Bridge (ADB) je nástroj příkazového řádku, který provádí příkazy prostředí.
ADB se používá pro přímou komunikaci mezi porty emulátoru. Poskytuje vývojáři přímou kontrolu nad komunikací mezi instancemi emulátoru.
Otázka č. 22) Co je ActivityCreator?
Odpovědět: ActivityCreator je dávkový soubor a skript prostředí, který byl použit k vytvoření nového projektu Android. Nyní je nahrazeno „Vytvořit nový projekt“ v Android SDK.
Otázka č. 23) Co je orientace?
Odpovědět: Orientace je dnes klíčovou funkcí chytrých telefonů. Má schopnost otáčet obrazovku mezi horizontálním nebo vertikálním režimem.
Android podporuje dva typy orientace obrazovky, jak je uvedeno níže:
- Portrét : Když je vaše zařízení svisle zarovnáno.
- Krajina : Když je vaše zařízení vodorovně zarovnáno.
setOrientation () je metoda, pomocí které můžete nastavit zarovnání obrazovky. HORIZONTÁLNĚ a SVISLE jsou dvě hodnoty, které lze nastavit v metodě setOrientation (). Kdykoli dojde ke změně orientace displeje, tj. Z Horizontální na Vertikální nebo naopak, bude aktivována metoda onCreate () aktivity.
V zásadě, když se změní orientace mobilního zařízení Android, pak se aktuální aktivita zničí a poté se stejná aktivita znovu vytvoří v nové orientaci displeje. Vývojáři systému Android definují orientaci v souboru AndroidManifest.xml.
Otázka č. 24) Co je AIDL?
Odpovědět: V platformě Android existují vzdálené metody, které usnadňují použití metod z jednoho programu do druhého. K vytvoření a implementaci vzdálených metod je prvním krokem definování komunikačního rozhraní v AIDL.
AIDL znamená Android Interface Definition Language. Usnadňuje komunikaci mezi klientem a službou. Také komunikuje informace prostřednictvím meziprocesové komunikace.
Pro komunikaci mezi procesy jsou data rozdělena do bloků, které jsou platformě Android snadno srozumitelné.
Otázka č. 25) Jaké jsou datové typy podporované AIDL?
Odpovědět: Datové typy podporované AIDL jsou následující:
- Tětiva
- Seznam
- Mapa
- charSequence
- Datové typy Java, jako INT, Long, Char, Boolean atd
Otázka č. 26) Vysvětlete soubor AndroidManifest.xml a proč to potřebujete?
Odpovědět: Každá aplikace musí mít v kořenovém adresáři soubor AndroidManifest.xml. Obsahuje informace o vaší aplikaci a poskytuje to samé systému Android.
Tyto informace zahrnují název balíčku, komponenty Android, jako jsou aktivity, služby, přijímače vysílání, poskytovatelé obsahu atd. Každý systém Android musí mít tyto informace před spuštěním jakéhokoli kódu aplikace.
Soubor AndroidManifest.xml provádí následující úkoly:
- Poskytuje název balíčku Java a tento název je jedinečným identifikátorem aplikace.
- Popisuje různé komponenty aplikace, které zahrnují aktivity, služby, poskytovatele obsahu atd. Rovněž definuje třídy, které tyto komponenty implementují.
- Je odpovědný za ochranu aplikace a deklaruje oprávnění pro přístup k chráněné části aplikace.
- Deklaruje také Android API, které bude aplikace používat.
- Obsahuje podrobnosti o souboru knihovny, které jsou použity a propojeny s aplikací.
Otázka č. 27) Na jakých všech zařízeních jste pracovali?
Odpovědět: Na trhu existuje mnoho mobilních zařízení s různými operačními systémy.
Konkrétně jsem pracoval na zařízeních Android, Windows, Symbian, iPhone atd
Otázka č. 28) Které nástroje se používají k ladění na platformě Android?
Odpovědět: Abychom pochopili příčinu selhání nebo příčinu jakéhokoli problému, je důležité ladění. Na platformě Android Android Monitor.bat když se na platformě iOS používá obslužný program, pro účely ladění se používá obslužný program pro konfiguraci iPhone.
K ladění existují různé nástroje, které zahrnují: Android DDMS, Android Debug Bridge, simulátor iOS, ladění z Eclipse s ADT, vzdálené ladění na Androidu s Chrome atd.
Otázka č. 29) Který scénář lze testovat pouze na reálných zařízeních, ale ne na emulátoru?
Odpovědět: Emulátory se používají k provádění podobných druhů testování, které se provádí na skutečných zařízeních. V zásadě se emulátory používají jako náhrada za skutečná zařízení, protože skutečná zařízení někdy nejsou k dispozici pro testování, použití skutečných mobilních zařízení pro účely testování je občas nákladnější.
Existuje ale několik scénářů, které nelze testovat pomocí emulátoru, tyto lze testovat pouze pomocí reálných zařízení. Tyto scénáře jsou přerušované scénáře, tj. Zpráva, přerušení telefonního hovoru při používání aplikace, nízký stav baterie, Bluetooth, připojení a odpojení paměťové karty atd.
Otázka č. 30) Pojmenujte nástroje mobilní automatizace, které jsou k dispozici na trhu.
Odpovědět: Na trhu je k dispozici poměrně málo nástrojů pro testování mobilní automatizace, ale ty se používají pouze v případě, že to projekt vyžaduje a pokud aplikace automatizaci podporuje.
Tyto nástroje jsou placené i bezplatné, proto je třeba provést analýzu v rámci projektového týmu a poté zvolit vhodný nástroj pro automatizaci mobilních zařízení. Silk Mobile, SeeTest, Ranorex jsou placeným mobilním automatizačním nástrojem, zatímco Appium, KIF, Robotium, Calabash je několik bezplatných nástrojů.
Otázka č. 31) Jak odstraňujete problémy s aplikací pro Android, která často havaruje?
Odpovědět: Níže je uvedeno několik kroků, které musíme dodržet při řešení havarijního problému:
- Uvolněte místo v paměti : Na mobilních zařízeních je pro mobilní aplikace k dispozici pouze omezený prostor. Abyste se vyhnuli problémům se selháním nebo problémům souvisejícím s pamětí, musíte nejprve zkontrolovat paměťový prostor.
- Vymažte využití dat aplikace : Data aplikace můžete vymazat pomocí Správce aplikací v části „Nastavení“. Tím se vymaže paměť mezipaměti a ponechá se trochu volného místa pro instalaci jiné aplikace, nebo se zvýší vaše aktuální aplikace.
- Správa paměti : Některé aplikace fungují perfektně na jednom typu mobilního zařízení, ale stejná aplikace nemusí fungovat na jiném typu zařízení, protože u těchto zařízení se liší výpočetní výkon, správa paměti a rychlost CPU. Aby mohla kterákoli aplikace správně fungovat na jakémkoli typu mobilního zařízení, měli byste spravovat paměť v zařízení.
- Problém s kompatibilitou : Vždy není možné testovat mobilní aplikace na všech mobilních zařízeních, prohlížečích, operačních systémech atd. Mobilní aplikaci tedy musíte otestovat, abyste předešli problémům s kompatibilitou.
Otázka č. 32) Jak zjistíte úniky paměti v mobilní aplikaci na platformě Android?
Odpovědět: Android Studio používá Správce zařízení Android (ADM), tento ADM se používá k detekci úniků paměti na platformě Android.
Když otevřete ADM v Android Studio, pak na levé straně ADM najdete zařízení nebo emulátor, ve kterém se zobrazí značka haldy. Když používáte libovolnou mobilní aplikaci, uvidíte na ní velikost haldy, analýzu paměti a další statistiky.
Otázka č. 33) Co je DDMS?
Odpovědět: Android Studio má ladicí nástroje známé jako DDMS, tj. Dalvik Debug Monitor Server.
Dotazy a odpovědi na SQL Server pro zkušené s příklady
Má široké ladicí funkce, které zahrnují:
- Služby přesměrování přístavů.
- Snímání obrazovky na zařízení.
- Informace o vláknech a haldě.
- Spoofing příchozích hovorů a SMS.
- Logcat
- Informace o stavu rádia.
- Spoofing údajů o poloze.
DDMS je integrován do studia Android. Chcete-li spustit DDMS, musíte nejprve otevřít Monitor zařízení Android (ADM) a poté kliknout na tlačítko nabídky DDMS. Po spuštění DDMS se na levé straně zobrazí seznam připojených zařízení spolu s procesy běžícími na každém zařízení.
S pomocí DDMS můžete ladit jak na reálných zařízeních, tak na emulátorech.
Otázka č. 34) Jaké jsou různé možnosti ukládání dat dostupné na platformě Android?
Odpovědět: Platforma Android poskytuje širokou škálu možností ukládání dat. Tyto možnosti musí být použity na základě potřeby, jako jsou data zabezpečená a používaná pouze s povolením nebo k nim lze přistupovat veřejně.
Níže je uveden seznam možností ukládání dat na platformě Android:
- SharedPreference : Ukládá data do souborů XML. Je to nejjednodušší způsob, jak ukládat soukromá data do páru klíč – hodnota.
- SQLite : Ukládá strukturovaná data v soukromé databázi.
- Vnitřní úložiště : Ukládá data do systému souborů zařízení a žádná jiná aplikace tato data nemůže číst.
- Externí úložiště : Data jsou uložena v systému souborů, ale jsou přístupná všem aplikacím v zařízení
Otázka č. 35) Vysvětlete senzory v systému Android.
Odpovědět: Zařízení s Androidem mají vestavěné senzory, které měří orientaci, pohyb a další podmínky.
Tyto senzory poskytují data s vysokou přesností, což pomůže monitorovat polohu a pohyb zařízení. Některé senzory jsou hardwarové a několik softwarových.
Níže jsou uvedeny tři kategorie senzorů:
- Senzory pohybu : Tyto senzory měří síly rotace a zrychlení a zahrnují gravitační senzory, rotační vektorové senzory, akcelerometry atd.
- Senzory prostředí : Měří teplotu, tlak, vlhkost vzduchu atd.
- Snímače polohy : Měří fyzickou polohu zařízení a zahrnuje orientační senzory a magnetometry.
Níže jsou uvedeny čtyři typy tříd Java:
- Správce senzorů
- Senzor
- SensorEvent
- SensorEventListener
Závěr
Téměř všechny důležité otázky a odpovědi na rozhovory pro Android byly popsány zde v tomto článku. Doufám, že by to pro vás bylo velmi užitečné.
Jsem si jistý, že můžete úspěšně prolomit jakýkoli rozhovor pro Android s důkladnou znalostí všech těchto otázek.
Doufám, že jste připraveni na pohovor !! Přeji vám všem úspěch !!
Doporučené čtení
- 10 nejlepších aplikací pro správu projektů v roce 2021 pro zařízení Android a iOS
- 11 nejlepších automatizačních nástrojů pro testování aplikací pro Android (nástroje pro testování aplikací pro Android)
- Výukový program pro testování aplikací pro Android: Průvodce pro začátečníky
- Výukový program Appium pro testování mobilních aplikací pro Android a iOS
- Připojení skutečných zařízení iOS a Android z cloudu k Appium Studio
- Vytvořte testy Appium pro aplikaci pro Android
- Začínáme s Robotium - nejoblíbenější nástroj pro testování uživatelského rozhraní aplikací pro Android
- Jak automatizovat aplikace pro Android pomocí nástroje TestComplete
- Jak opravit únik paměti v aplikacích pro Android pomocí nástroje DDMS
- Jak otestovat verzi systému Android při vyřazení z trhu?
- Beta testovací služby pro mobilní aplikace (beta a testovací nástroje pro iOS a Android)
- Výukový program pro testování mobilního uživatelského rozhraní (testování grafického uživatelského rozhraní pro aplikace pro iOS a Android)
- Výukový program Selendroid: Rámec automatizace mobilních testů pro Android (část 1)
- TOP 15 nejlepších nástrojů pro mobilní testování v roce 2021 pro Android a iOS
- Co je klíč zabezpečení sítě: Jak jej najít pro router, Windows nebo Android
- Dotazy a odpovědi na pohovor