top 35 android interview questions
Основни въпроси за интервю за Android за по-нови и опитни разработчици и тестери:
В тази технологична ера има огромно търсене за разработчици на приложения за Android и това е една от високо платените работни места.
Следователно много технически подковани хора се опитват да си проправят път в тази кариера. Има няколко сложни въпроса за интервю, които се задават в много MNC и някои малки компании. И тази статия включва набор от такива въпроси и отговори за интервюта за Android, които ще бъдат полезни за милиони търсещи работа.
Нека да изследваме !!
Тази статия включва набор от най-често задавани въпроси и отговори за интервю за Android, обхващащи почти всички важни понятия с прости думи, за да позволи на всеки търсещ работа да изчисти интервюто успешно.
Най-популярни въпроси и отговори за интервю за Android
По-долу е даден списъкът с най-често задаваните въпроси за интервю за Android
В # 1) Какво е Android?
Отговор: Android е операционна система с отворен код и е популярна предимно за смартфони и таблети.
Тази операционна система е базирана на Linux Kernel. Използвайки операционната система Android, разработчикът разработва функциите или програмите, които могат да извършват основни, както и разширени видове операции на смартфона.
В # 2) Какво представлява Android SDK?
Отговор: За да разработят мобилно приложение, разработчиците на Android изискват някои инструменти и това изискване е изпълнено от „Android SDK“, който представлява набор от инструменти, които се използват за разработване или писане на приложения.
Той има графичен потребителски интерфейс, който емулира средата на Android. Този емулатор действа като действително мобилно устройство, на което разработчиците пишат своя код и след това отстраняват грешки / тестват същия код, за да проверят дали нещо не е наред.
В # 3) Кои са различните версии на Android OS, които помните?
Отговор: По-долу са дадени различните версии на Android.
Версия | Име |
---|---|
Android 4.0-4.0.4 | Сладоледен сандвич |
Android 8.0 | Проветряване |
Android 7.0 - 7.1.2 | Нуга |
Android 6 - 6.0.1 | Зефир |
Android 5 - 5.1.1 | Близалка |
Android 4.4 - 4.4.4 | Kit Kat |
Android 4.1 - 4.3 | Jelly Bean |
Въпрос # 4) Каква е разликата между тестване на мобилни приложения и мобилно тестване?
Отговор: Тестването на мобилни приложения е тестване на приложения на устройство, което се фокусира главно върху функциите и характеристиките на приложението.
А Mobile Testing е тестване на действителното мобилно устройство и се фокусира върху мобилни функции като Call, SMS, Контакти, Media Player, вградени браузъри и т.н.
В # 5) Назовете езиците, поддържани за разработка на Android.
Отговор: Java е широко използваният език за разработка на Android. Той също така поддържа C / C ++ и когато се използва с Android SDK, подобрява и скоростта на производителност.
В # 6) Какви са предимствата на операционната система Android?
Отговор: Той е с отворен код и независим от платформата. Той поддържа различни технологии като Bluetooth, Wi-Fi и др
В # 7) Обяснете накратко архитектурата на Android.
Отговор: Архитектурата на Android е под формата на компоненти на софтуерния стек.
Диаграмата по-долу описва различните слоеве в архитектурата на Android.
- Linux ядро : Ядрото на Linux е поставено в долната част на софтуерния стек и е в основата на архитектурата на Android. Използвайки ядрото на Linux, Android осигурява връзка между останалите слоеве на софтуера. Помага за разработването на драйвери като клавиатурата, дисплея, аудиото за производство на устройства и т.н.
- Абстракционен слой на хардуера (HAL) : HAL осигурява интерфейс между драйверите на устройства и API рамката. Състои се от библиотечни модули, които са специфични за хардуерния компонент.
- Времетраене на Android : Ядрото на Linux осигурява среда за изпълнение с много задачи, така че множество процеси могат да изпълняват всеки процес, изпълняващ се на свой екземпляр на Android Runtime (ART). Android има основни библиотеки за изпълнение, като специфични библиотеки на Dalvik VM, библиотеки за оперативна съвместимост на Java, библиотеки за Android и библиотеки C / C ++.
(изображение източник )
- Приложна рамка (Java API Framework) : Цялата функционалност на Android е достъпна чрез API. Състои се от множество услуги като Activity Manager, Resource Manager, Notification Manager и др., Които формират средата, в която работи приложението за Android.
- Приложения : Приложението за Android е най-горният слой и в него са включени всички видове вградени приложения като SMS, браузъри, контакти и т.н. Той също така включва приложения на трети страни, които се инсталират от потребителя като игри и др.
В # 8) Определете и обяснете Android Framework.
Отговор: Android framework е набор от API, с които разработчиците на Android пишат код за мобилните приложения. Той съдържа методите и класовете за писане на програмния код.
Android framework включва различен набор от инструменти за създаване на панел с изображения, текстово поле, бутони и др. Той също така включва „Дейности“, с които потребителят взаимодейства и „Услуги“, които са програмите, които се изпълняват във фонов режим. Това е пакет от различни компоненти като Intents, Broadcast Receivers, доставчици на съдържание и др.
В # 9) Кои компоненти са необходими за нов Android проект?
Отговор: Всеки път, когато се създава нов проект за Android, се изискват следните компоненти:
- манифест: Той съдържа XML файл.
- изграждане /: Той съдържа изход за компилация.
- src /: Той съдържа кодовите и ресурсните файлове.
- говеждо /: Той съдържа растерни изображения, потребителски интерфейси и XML оформление, т.е.всички некодирани ресурси.
- активи /: Той съдържа файл, който трябва да бъде компилиран в .apk файл.
Изображението по-долу показва изгледа на проекта, след като бъде създаден проект за Android:
(изображение източник )
В # 10) Осигурете важните основни компоненти на Android.
Отговор: Основните компоненти на операционните системи Android са:
- Дейност
- Намерения
- Услуги
- Доставчик на съдържание
- Фрагмент
В # 11) Обяснете накратко - какво се разбира под Дейности?
Отговор: Дейностите са частта от мобилното приложение, която потребителят може да вижда и да взаимодейства с нея.
Например , ако отворите приложение за SMS, което има множество дейности като създаване на нов SMS, добавете контакт от адресната книга, напишете съдържанието в тялото на SMS, изпратете SMS до избрания контакт и т.н.
Дейността проследява следното:
- Проследява какво в момента търси даден потребител в дадено приложение.
- Води следа от преди използвани процеси, така че потребителят да може да превключва между текущ процес и предишен процес.
- Помага да се убият процесите, така че потребителят да може да се върне в предишното си състояние
Дейността се изпълнява като подклас на клас Activity, както е показано по-долу:
Общественият клас MyActivity разширява Activity
{
}
В # 12) Какво се разбира под Услуги?
Отговор: Услугата е компонент на Android, който работи във фонов режим и действа независимо. Той не предоставя никакъв потребителски интерфейс.
Въпреки че услугите работят зад сцената, потребителят може да продължи работата си върху различни приложения. По-голямата част от времето потребителите не са наясно с услугите, които работят във фонов режим. Тези услуги позволяват на системата да убие процеса, без да прекъсва текущата работа на потребителя.
Услугата е внедрена като подклас на клас Service:
как да намеря мрежовия ключ за сигурност за wifi
Общественият клас MainService разширява услугата
{
}
Въпрос # 13) Обяснете накратко жизнения цикъл на активността.
Отговор: Когато потребителят взаимодейства с приложението и се придвижва тук и там, извън приложението, връща се в приложението и т.н. По време на целия този процес екземплярите на „Activity“ също се движат в различните етапи от своя жизнен цикъл.
Има седем различни състояния като - onCreate (), onStart (), onRestart (), onResume (), onPause (), onStop () и onDestroy (). Те се наричат „обратно повикване“. Системата Android извиква тези обратни обаждания, за да знае, че състоянието е променено.
Дадената по-долу диаграма описва жизнения цикъл на активността:
(Изображение източник )
Когато даден потребител работи върху дадено приложение, тогава в него участват много дейности като Отваряне, Затваряне, Запазване, Изтриване, Изпращане и т.н.
Въз основа на действието на потребителя тези дейности са частично прекъснати от потребителския интерфейс, но тези дейности винаги се намират в паметта, така че когато потребителят се обади обратно на същата дейност, потребителят ще бъде в същото състояние, където е спрял.
Въпрос # 14) Какво е намерение?
Отговор: Android има клас Intent, когато потребителят трябва да премине от една дейност към друга. Намерението показва известия от устройството на потребителя и след това потребителят може да отговори на известието, ако е необходимо.
По-долу са дадени двата типа:
- Имплицитни намерения
- Изрични намерения
Въпрос # 15) Обяснете имплицитни и явни намерения.
Отговор: Implicit Intent извиква системните компоненти, докато Explicit Intents извикват класа Activity.
Въпрос # 16) Каква е важността на настройването на разрешение при разработването на приложения?
Отговор: След като бъдат зададени разрешенията за разработка на приложението, данните и кодът са ограничени само до оторизирани потребители.
Ако кодът се съхранява без никакви ограничения или ако е достъпен за всеки, има шанс за компрометиране на кода, което води до изтичане на дефекти.
В # 17) Какво е .apk разширение в Android?
Отговор: Това е файлов формат по подразбиране, който се използва от операционната система Android. Application Package Kit (APK) се използва за инсталиране на мобилни приложения. .Apk съдържа ресурсен файл, сертификат, файл на манифест и друг код.
APK файловете са архивни файлове във формат zip с разширение .apk.
В # 18) Каква е базата данни, използвана за платформата Android?
Отговор: SQLite е базата данни, която се използва за платформата Android. Това е база данни с отворен код, без сървър.
Въпрос # 19) Какво представлява ANR в Android?
Отговор: ANR означава приложение, което не отговаря. Това е известие или изскачащ прозорец, показвани от платформата Android, когато приложението изпълнява твърде много функции наведнъж и ако изведнъж не реагира дълго време на действието на потребителя.
В # 20) Кои са диалоговите прозорци, поддържани от платформата Android?
Отговор: Android поддържа четири типа диалогови прозорци:
- AlertDialog : Той има максимум 3 бутона и понякога AlertDialog включва квадратчета за отметка и радио бутони за избор на елемента.
- ProgressDialog : Показва лентата за напредъка или колелата.
- TimePickerDialog : Използвайки този диалогов прозорец, потребителят избира Час.
- DatePickerDialog : Използвайки този диалогов прозорец, потребителят избира датата
В # 21) Какво е ADB?
Отговор: Android Debug Bridge (ADB) е инструмент за команден ред, който изпълнява команди на черупки.
ADB се използва за директна комуникация между портовете на емулатора. Той дава директен контрол на комуникацията между екземплярите на емулатора на разработчика.
В # 22) Какво е ActivityCreator?
Отговор: ActivityCreator е скрипт за команден файл и обвивка, който е използван за създаване на нов Android проект. Сега е заменен от „Създаване на нов проект“ в Android SDK.
В # 23) Какво е ориентация?
Отговор: Ориентацията е ключовата характеристика на смартфоните в днешно време. Има възможност за завъртане на екрана между хоризонтален или вертикален режим.
Android поддържа два типа ориентации на екрана, както е споменато по-долу:
- Портрет : Когато устройството ви е вертикално подравнено.
- Пейзаж : Когато устройството ви е хоризонтално подравнено.
setOrientation () е метод, чрез който можете да зададете подравняване на екрана. HORIZONTAL и VERTICAL са две стойности, които могат да бъдат зададени в метода setOrientation (). Винаги, когато има промяна в ориентацията на дисплея, т.е. от хоризонтална към вертикална или обратно, методът onCreate () на Activity се активира.
По принцип, когато ориентацията на мобилното устройство с Android се промени, текущата активност се унищожава и след това същата дейност се пресъздава в новата ориентация на дисплея. Разработчиците на Android определят ориентацията във файла AndroidManifest.xml.
В # 24) Какво е AIDL?
Отговор: В платформата Android има отдалечени методи, които улесняват използването на методи от една програма в друга. За да създадете и внедрите отдалечените методи, първата стъпка е да дефинирате комуникационния интерфейс в AIDL.
AIDL е съкращение от Android Interface Definition Language. Улеснява комуникацията между клиента и услугата. Той също така съобщава информацията чрез комуникация между процесите.
За комуникация между процеси данните се разбиват на парчета, които са лесно разбираеми от платформата Android.
В # 25) Какви са типовете данни, поддържани от AIDL?
Отговор: Типовете данни, поддържани от AIDL, са както следва:
- Струна
- Списък
- Карта
- charSequence
- Типове данни на Java като INT, Long, Char, Boolean и др
Въпрос # 26) Обяснете файла AndroidManifest.xml и защо имате нужда от това?
Отговор: Всяко приложение трябва да има файл AndroidManifest.xml в основната директория. Той съдържа информация за вашето приложение и предоставя същото на системата Android.
Информацията включва името на пакета, компоненти на Android като Activity, Services, Broadcast Receivers, доставчици на съдържание и др. Всяка Android система трябва да разполага с тази информация, преди да стартира който и да е код на приложението.
Файлът AndroidManifest.xml изпълнява следните задачи:
- Той предоставя име на пакета Java и това име е уникален идентификатор за приложението.
- Той описва различните компоненти на приложението, които включват Дейност, Услуги, Доставчици на съдържание и др. Също така, той определя класовете, които изпълняват тези компоненти.
- Той е отговорен да защити приложението и декларира разрешението за достъп до защитената част на приложението.
- Той също така декларира Android API, който ще се използва от приложението.
- Той съдържа подробности за библиотечния файл, които се използват и са свързани към приложението.
В # 27) На какви устройства сте работили?
Отговор: На пазара се предлагат много мобилни устройства с различни операционни системи.
По-конкретно, работил съм на Android, Windows, Symbian, iPhone и т.н.
В # 28) Кои инструменти се използват за отстраняване на грешки на платформата Android?
Отговор: За да разберете причината за неуспеха или причината за някакъв проблем, е важно отстраняването на грешки. На платформата Android Android Monitor.bat Помощната програма се използва, докато на платформата iOS, помощната програма за конфигуриране на iPhone се използва за отстраняване на грешки.
Има различни инструменти за отстраняване на грешки, които включват: Android DDMS, Android Debug Bridge, iOS симулатор, отстраняване на грешки от Eclipse с ADT, дистанционно отстраняване на грешки на Android с Chrome и др.
В # 29) Кой сценарий може да тества само на реални устройства, но не и на емулатор?
Отговор: Емулаторите се използват за извършване на подобни видове тестове, които се извършват на реалните устройства. По принцип емулаторите се използват като заместител на реални устройства, тъй като понякога реалните устройства не са достъпни за тестване, а използването на реални мобилни устройства за целите на тестването понякога е по-скъпо.
Но има няколко сценария, които не могат да бъдат тествани с помощта на емулатор, те могат да бъдат тествани само с помощта на реални устройства. Тези сценарии са прекъснати сценарии, т.е. съобщение, прекъсване на телефонно обаждане, докато използвате приложението, изтощена батерия, Bluetooth, монтиране и демонтаж на карта с памет и т.н.
В # 30) Назовете инструментите за автоматична мобилна техника, които се предлагат на пазара.
Отговор: Има доста инструменти за тестване на мобилна автоматизация, които се предлагат на пазара, но те се използват само ако проектът го изисква и ако приложението поддържа автоматизацията.
Тези инструменти се плащат, както и безплатни инструменти, следователно анализът трябва да се направи в рамките на екипа на проекта и след това трябва да се избере подходящият инструмент за автоматична мобилност. Silk Mobile, SeeTest, Ranorex са платеният инструмент за автоматизация на мобилни устройства, докато Appium, KIF, Robotium, Calabash са малко безплатни инструменти.
В # 31) Как отстранявате неизправностите на приложението за Android, което често се срива?
Отговор: По-долу са дадени няколкото стъпки, които трябва да следваме, докато отстраняваме проблема със срива:
- Освободете място в паметта : На мобилните устройства има ограничено пространство за мобилни приложения. За да избегнете сривове или проблеми, свързани с паметта, първо трябва да проверите мястото в паметта.
- Изчистване на използването на данни от приложението : Можете да изчистите данните на приложението, като използвате диспечера на приложенията в „Настройки“. Това ще изчисти кеш паметта и ще позволи малко свободно място за инсталиране на друго приложение или ще увеличи вашето текущо приложение.
- Управление на паметта : Някои приложения работят перфектно на един тип мобилно устройство, но същото приложение може да не работи на друг тип устройство, тъй като за такива устройства мощността на обработка, управлението на паметта и скоростта на процесора са различни. За да може всяко приложение да работи правилно на всеки тип мобилно устройство, трябва да управлявате паметта на устройството.
- Въпрос за съвместимост : Винаги не е възможно да тествате мобилни приложения на всички мобилни устройства, браузъри, операционни системи и т.н. Така че трябва да тествате мобилното си приложение на колкото се може повече мобилни устройства, за да избегнете проблем със съвместимостта.
В # 32) Как намирате изтичане на памет в мобилното приложение на платформата Android?
Отговор: Android Studio използва Android Device Manager (ADM), този ADM се използва за откриване на изтичане на памет в платформата Android.
Когато отворите ADM в Android Studio, а след това в лявата страна на ADM, ще намерите вашето устройство или емулатор, в който ще се покаже знак за купчина. Когато използвате всяко мобилно приложение, ще видите размера на купчината, анализ на паметта и други статистически данни, показани върху него.
В # 33) Какво е DDMS?
Отговор: Android Studio разполага с инструменти за отстраняване на грешки, известни като DDMS, т.е. Dalvik Debug Monitor Server.
Той има широки функции за отстраняване на грешки, които включват:
- Услуги за спедиция на портове.
- Заснемане на екрана на устройството.
- Информация за нишки и купчина.
- Входящо обаждане и SMS подправяне.
- Logcat
- Информация за състоянието на радиото.
- Подправяне на данни за местоположението.
DDMS е интегриран със студиото за Android. За да стартирате DDMS, първо трябва да отворите Android Device Monitor (ADM) и след това да кликнете върху бутона за меню DDMS. След като DDMS бъде стартиран, вляво се показва списъкът на свързаните устройства заедно с процесите, които се изпълняват на всяко устройство.
С помощта на DDMS можете да отстранявате грешки както на реални устройства, така и на емулатори.
В # 34) Какви са различните опции за съхранение на данни, налични на платформата Android?
кой е най-добрият безплатен изтегляне на mp3
Отговор: Платформата за Android предоставя широка гама от възможности за съхранение на данни. Тези опции трябва да се използват въз основа на необходимостта, като например данните са защитени и се използват само с разрешение или могат да бъдат достъпни публично.
По-долу е списъкът с опциите за съхранение на данни на платформата Android:
- SharedPreference : Съхранява данни в XML файлове. Това е най-простият начин за съхраняване на лични данни в двойката ключ-стойност.
- SQLite : Той съхранява структурирани данни в частната база данни.
- Вътрешна памет : Той съхранява данни във файловата система на устройството и всяко друго приложение не може да ги прочете.
- Външно хранилище : Данните се съхраняват във файловата система, но са достъпни за всички приложения в устройството
Въпрос # 35) Обяснете сензорите в Android.
Отговор: Устройствата, поддържащи Android, имат вградени сензори, които измерват ориентацията, движението и други условия.
Тези сензори предоставят данни с висока точност, което ще помогне за наблюдение на позиционирането и движението на устройството. Някои от сензорите са базирани на хардуер, а някои са базирани на софтуер.
Има три категории сензори, както е споменато по-долу:
- Сензори за движение : Тези сензори измерват силите на въртене и ускорение и включват сензори за гравитация, сензори за въртящи се вектори, акселерометри и др.
- Сензори за околната среда : Измерва температурата на въздуха, налягането, влажността и др.
- Датчици за положение : Той измерва физическото положение на устройството и включва сензори за ориентация и магнитометри.
Има четири типа Java класове, както е показано по-долу:
- Сензор мениджър
- Сензор
- SensorEvent
- SensorEventListener
Заключение
Почти всички важни въпроси и отговори за интервю за Android са разгледани тук в тази статия. Надявам се, че това би било много полезно за вас.
Сигурен съм, че можете да пробиете успешно всяко интервю за Android с задълбочени познания за всички тези въпроси.
Надявам се, че сте готови за интервю !! Желая на всички успех !!
Препоръчително четене
- 10 най-добри приложения за управление на проекти през 2021 г. за устройства с Android и iOS
- 11 най-добри инструменти за автоматизация за тестване на приложения за Android (инструменти за тестване на приложения за Android)
- Урок за тестване на приложения за Android: Ръководство за начинаещи
- Урок за Appium за тестване на мобилни приложения за Android и iOS
- Свързване на реални iOS и Android устройства от облак към Appium Studio
- Създайте Appium Tests за приложение за Android
- Първи стъпки с Robotium - най-популярният инструмент за тестване на потребителския интерфейс на приложението за Android
- Как да автоматизирате приложенията за Android с помощта на TestComplete Tool
- Как да коригирам изтичане на памет в приложения за Android с помощта на DDMS Tool
- Как да тествате версия на Android, когато е извадена от пазара?
- Услуги за бета тестване на мобилни приложения (Инструменти за бета тестване на iOS и Android)
- Урок за тестване на мобилен потребителски интерфейс (GUI тестване на приложения за iOS и Android)
- Ръководство за Selendroid: Рамка за автоматизация на мобилни тестове за Android (част 1)
- ТОП 15 най-добри инструмента за мобилно тестване през 2021 г. за Android и iOS
- Какво представлява ключът за мрежова сигурност: Как да го намерите за рутер, Windows или Android
- Интервюирайте въпроси и отговори