Въпроси за интервю за Android и как да интервюирате кандидати

Ако вашата компания търси да наеме наистина страхотен разработчик за вашите приложения за Android или ако кандидатствате за ролята на програмист за Android, как да гарантирате, че можете да получите подходящия кандидат или сте подготвени за работата? Всичко започва с въпросите за интервю за Android. Ако го направите сами, винаги е труден бизнес, някой може да изглежда страхотно в интервю, но когато нещата станат реални, понякога могат да бъдат разочарование. В тази статия ще обясним как да отделим стоката от не толкова добрата и ще гарантираме, че вашата компания ще се окаже с най-добрите възможни кандидати, за да изпълни тази важна роля.

Техниките за интервю работят и в двете посоки. Колкото е важно за бъдещите кандидати да развият добри умения за интервю, толкова е също толкова важно интервюиращите да задават правилните въпроси и да развият умения, за да не наемат грешен човек. Увереността идва от това, че разполагате с правилните боеприпаси в шкафчето си. Всичко е в разбирането на позицията, изискванията към работата и необходимите въпроси, за да се гарантира, че интервюираният е подходящ.

По време на интервюто

Важно е да накарате анкетирания да се чувства спокойно. Никой не се наслаждава истински на процеса на интервю и това може да бъде изключително стресиращо. Колкото повече можете да направите, за да поставите кандидата на спокойствие, толкова по-голяма е вероятността да получите истинско усещане за неговия характер.

Очевидно, както при всеки кандидат за която и да е позиция във вашата компания, основните въпроси за определяне на техния характер и предишни работни практики трябва да бъдат разгледани. Добре е да проверите и социалните медии. В наши дни всички присъстват в социалните медии и е добре да разгледате бързо своите записи за публикуване. Ако покажат липса на почтеност към предишните работодатели, няма причина да предполагаме, че те внезапно ще променят моделите си на поведение. За повече информация как да изберете правилния разработчик за вашата компания, посетете нашия блог тук.

Така че след като зададете обичайните общи въпроси и накарате кандидата да се чувства комфортно, е време да разберете колко много знаят за разработката на Android. Ето къде въпросите стават по-специфични за работата и може би дори по-трудни.

Основни въпроси

1. Какво е Android и кой го е основал?

Android е операционна система, базирана на Linux с отворен код. Той е основан от Анди Рубин и се използва в мобилни телефони, таблети, телевизори и т.н.

2. Моля, посочете архитектурата на приложенията за Android.

  • Дейностите диктуват потребителския интерфейс и се справят с взаимодействието на потребителя с екран на смартфон. Дейността изпълнява действия на екрана.
  • Излъчващите приемници отговарят на излъчващи съобщения от друго приложение във или от системата. Това се реализира като подклас на клас BroadcastReceiver и всяко съобщение се разпознава като намерение.
  • Услуги. Те се използват за изпълнение на фонови функции.
  • Намерение. Това позволява взаимосвързаността между дейностите и механизма за предаване на данни.
  • Екстернализация на ресурсите, която се отнася до низове и графики.
  • Известие за диалогов прозорец, икона, светлина, известие, звук и тост
  • Доставчици на съдържание за споделяне на данни между приложения

3. Какви са допълнителните компоненти на Android?

  • Фрагментите служат като част от потребителския интерфейс в дадена дейност.
  • Изгледите са UI елементи, които се рисуват на екрана, включително бутони, списъци с формуляри и т.н.
  • Разполагат йерархии, които контролират формата на екрана и външния вид на изгледите.
  • Намеренията са съобщения, които обединяват компоненти.
  • Ресурсите са външни елементи (струни, константи и рисуващи снимки).
  • Manifest е конфигурационният файл за приложението.

4. Какви известия са налични в Android и каква е тяхната употреба?

Snackbars & Toast Notification - Показва се като изскачащо съобщение на повърхността на прозореца.

Снекбарите съдържат един ред текст, който е пряко свързан с извършената операция. Те обикновено съдържат текстово действие и без икони. Едно време може да се показва само един снек бар и той може да съдържа единично действие, нито едно от които не може да бъде „Отхвърли“ или „Отказ“.

Тостовете са достъпни само при Androids и те се използват за системно съобщение. Те също се показват в долната част на екрана, но не могат да бъдат преместени извън екрана.

Известията за лентата на състоянието показват известия в лентата на състоянието.

За повече информация за закуски и тост, посетете тук.

Известие за диалог - активно свързано известие.

5. Как да превеждате в Android?

Android използва преводач на Google, за да превежда данни от един език на друг език и го поставя като низ, докато се развива.

6. Какви видове флагове се използват за стартиране на приложение в Android?

FLAG_ACTIVITY_NEW_TASK

FLAG_ACTIVITY_CLEAR_TOP.

7. Версиите на Android влизат под кодови имена, моля, дайте колкото се може повече от кодовите имена.

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

8. Кои са основните предимства на Android?

Android е операционна система с отворен код, което означава, че е безплатна за крайния потребител. Няма такси за лиценз, разработка или дистрибуция. Той поддържа много различни технологии, включително камера, блутут, wifi, реч и край. Освен това той използва и високо оптимизирана виртуална машина, наречена DVM (Dalvik Virtual Machine) за използване на мобилни устройства.

9. Можете ли да посочите базата данни, която Android използва и да дадете кратко описание за нея?

Името на базата данни е SQLite, което е релационна база данни с отворен код. Може да се използва за изпълнение на обичайните функции на базата данни на устройства с Android. Не само че е лесно да съхранявате, манипулирате и извличате данни, но и е вграден в платформата Android по подразбиране. Не е необходима настройка, администрацията вече е в сила.

10. Какви са различните видове хранилища, които се предлагат в Android и каква е тяхната употреба?

  • Споделените предпочитания съхраняват частни примитивни данни в двойки ключ-стойност. Класът SharedPreferences помага да се осигури обща рамка, която позволява на потребителите да запазват и извличат устойчиви двойки ключ-стойност на примитивни типове данни. SharedPreferences могат да се използват за запазване на примитивни данни като булеви, плаващи, ints, longs и низове. Тези данни се запазват в рамките на потребителски сесии, дори когато приложението е убито. За повече информация как да получите обект на SharedPreferences за приложение, кликнете тук.
  • Вътрешно съхранение съхранява лични данни в паметта на устройството. Веднъж можете да запазвате файлове директно във вътрешната памет на устройството. Файловете, запазени във вътрешното хранилище, са по подразбиране за вас, а други приложения също не могат да получат достъп до тях. Когато потребителят деинсталира приложението ви, файловете след това ще бъдат премахнати.
  • Външното съхранение съхранява публична дата на споделеното външно хранилище. Всяко съвместимо с Android устройство може да поддържа споделено „външно хранилище“, където могат да бъдат запазени файловете. Това може да бъде сменяем носител за съхранение (SD карта) или вътрешен (неотстраним).
  • SQLite Databases съхранява структурирани данни в частна база данни. Android предоставя пълна поддръжка за бази данни SQLite. Всички бази данни, които човек създава, могат да бъдат достъпни по име на всеки клас в приложението. Моля, имайте предвид, че те не са достъпни извън приложението.
  • Мрежова връзка съхранява данни в мрежата със собствен мрежов сървър. За да извършвате мрежови операции, трябва да използвате класове в следните пакети по-долу:

java.net. *

android.net. *

11. Какво представляват приложенията за приложения в Android?

Приспособленията за приложение са миниатюрни изгледи на приложения, които могат да бъдат вградени в други приложения (като началния екран) и да получават периодични актуализации. Тези изгледи често се наричат ​​Widgets в потребителския интерфейс и можете да публикувате такъв с доставчик на App Widget.

Строителни блокове и жизнени цикли

12. Какви са основните строителни блокове на Android

Основните градивни елементи за Android са, както следва:

  • Дейност - Класът, представляващ един екран, т.е. Frame в AWT
  • Изглед - UI елемент, например етикет, бутон или текстово поле. По принцип всичко, което се вижда, е гледка
  • Намерение - това, което се използва за извикване на компоненти. Например стартирайте услугата, покажете уеб страница или излъчете съобщение.
  • Услуга - фоновият процес. Те се предлагат в два типа локални, до които се осъществява достъп от приложението, и отдалечени, които могат да бъдат достъпни от други устройства.
  • Доставчик на съдържание - те се използват за споделяне на данни между различни приложения.
  • Фрагмент - отделни части от дейността, които могат да бъдат показани на множество едновременно.
  • AndroidManifest.xml - Това съдържа информация относно дейности, разрешения и доставчици на съдържание и т.н.
  • Android Virtual Device (AVD) - Който се използва за тестване на приложението без нужда от таблет или друго устройство.

13. Можете ли да назовете 7-те метода на жизнения цикъл на Android активността и да обясните малко за всеки от тях?

7-те метода на жизнения цикъл са както следва:

1) onCreate () - означава, че е създадена дейност

2) onStart () - означава, че е станал видим за потребителя.

3) onResume () - означава, че дейността е започнала да взаимодейства с потребителя

4) onPause () - означава, че дейността не е видима за потребителя

5) onStop () - което означава, че вече не се вижда за крайния потребител

6) onRestart () - означава, че дейността е спряна, преди да започне

7) onDestroy () - означава, че дейността ще бъде унищожена

Android Съкращения

14. Какво означава ADB в Android?

ADB действа като мост между емулатор и IDE. Той също така изпълнява команди за отдалечени черупки за стартиране на приложения на емулатор.

15. Какво е ANR в Android?

ANR означава, че приложението не отговаря. Това е диалогов прозорец, който се появява, когато приложението не отговаря.

16. Какво означава ADT?

ADT е инструмент за разработка на Android и се използва за разработване на приложения и тестване на приложенията.

17. Какво означава DDMS и какви са неговите възможности

Това се отнася до сървъра за мониторинг на грешки Delvik. Теза инструмент за отстраняване на грешки, който е включен в Android Studio. Може да се използва за услуги за пренасочване на портове, информация за нишки и купчина на устройството, заснемане на екрана на устройството, регистрация, обработка и информация за състоянието на радиото. В допълнение, тя предлага, наред с други услуги, подправяне на входящи разговори и SMS и подправяне на данни за местоположение.

За повече информация, моля, прочетете тук.

намерение

18. Какво е намерение и дайте три примера за това как се използва?

Три често използвани за намерение са:

  • Стартиране на активност Нормално е да стартирате нов екземпляр от активност, като предадете метод на намерение към метод startActivity ().
  • Предоставяне на излъчване Това може да стане чрез предаване на намерение за изпращанеBroadcast (), sendStickyBroadcast () и sendOrderedBroadcast ()
  • Стартиране на услуга това може да се използва за извършване на еднократна операция, например изтегляне на файл. Постига се чрез предаване на намерение да startService ()

За повече информация, моля, вижте този раздел от Ръководството за разработчици на Android.

19. Може ли да се използва намерение за предоставяне на данни на ContentProvider?

Не, не може да се използва намерение за предоставяне на данни на ContentProvider. За да използвате данните в ContentProvider, вместо това трябва да използвате ContentResolver. Това е в контекста на приложението и се използва за комуникация с доставчика като клиент. Обектът на доставчика работи, като получава заявки за данни, изпълнява необходимите действия и след това връща резултатите.

20. Използвайки с намерение, можем да стартираме дейност.

Намерено намерение = ново намерение (това, MyTestActivity.class);
       startActivity (намерение);

Определения и решения

21. Определете файла на ресурса на приложението в Android.

JSON, XML bitmap.etc са приложения за приложения. Можете да инжектирате тези файлове, за да изградите процес и да ги заредите от кода.

22. Какво е адаптер в Android?

Адаптер действа като мост. Той преобразува елементи от данни в нови елементи, така че да може да се показва в компоненти на потребителския интерфейс.

За повече информация относно адаптери, посетете тук.

23. Къде са разположени оформления в Android?

В папката Layout оформлението се поставя като XML файлове.

24. Какво представлява сингъл класът в Android?

Клас, който може да създаде само обект, този обект може да бъде споделен с други класове.

25. Какво е фрагмент в Android?

Фрагментът е част от дейността и той винаги се съдържа в дейността. С фрагмент можем да го използваме повторно в много дейности и е по-гъвкаво да се намира на екран.

26. Какво е режим на заспиване в Android?

Режим на заспиване означава, че процесорът ще спи и той не приема никакви команди от устройство с Android, с изключение на слоя и алармата на радио интерфейс.

27. Кой ядро ​​се използва в Android?

Android е персонализирано Linux 3.6 ядро.

28. Кои изключения са налични в Android?

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

29. Какъв е редът на диалоговия прозорец в Android?

Редът е: Положителен, Неутрален, Отрицателен.

30. Какво е папка за изтегляне в Android?

Компилиран визуален ресурс, който може да се използва като фон, банери, икони, екран за пръскане и т.н.

31. Какво означава ContentProvider и каква е нормалната му употреба?

ContentProvider се използва за управление на достъпа до структуриран набор от данни. Той идентифицира данните и предоставя механизми за определяне на сигурността на данните. Това е стандартният интерфейс, свързващ данни в рамките на един процес с кода, работещ в друг. За повече информация, моля, вижте този раздел на Ръководството за разработчици на Android.

32. Как да предадете данните на под-дейности Android?

С помощта на Bundle можем да предадем данните на под-дейности.

Bundle bun = нов Bundle ();

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

33. Преориентирате екран, вместо Android да сваля предния план и да възстановява стойностите на изгледа в оформлението на дейността, стойността на изгледа не се възстановява след преориентацията. Каква е вероятната причина за това?

Най-вероятната причина е, че програмистът не е потвърдил, че има валиден идентификатор. Система с Android ще възстанови състоянието на изгледите в активността само ако на всеки изглед е даден уникален идентификатор. Това се доставя от атрибута, android: id

За повече информация, моля, вижте този раздел от Ръководството за разработчици на Android.

Android библиотека

34. Опишете библиотеката с Android.

Android библиотека е проект за разработка, който съдържа споделен изходен код на Android и други ресурси. Той съдържа всичко необходимо за изграждането на приложение, включително изходния код, файлове с ресурси и манифест на Android. Той компилира всичко във файл за архив на Android (AAR), който може да се използва като зависимост за модул за приложение за Android.

35. Кога се използва модулът на библиотеката Android?

Модулът на библиотеката на Android може да се използва, когато човек изгражда множество приложения, които изискват или използват същите компоненти като дейности, услуги или оформление на потребителския интерфейс. Също така се използва, когато човек изгражда приложение, което съществува в множество варианти на APK, като безплатна и платена версия, които се нуждаят от едни и същи основни компоненти и за двете.

Това ръководство може да помогне на потребителите да научат как да създадат Android библиотека.

За да сте в крак с най-новите разработки на Android, важно е да продължите да развивате уменията си, докато системите се развиват и променят също така с течение на времето. Това ще ви позволи да останете пред конкуренцията и да станете по-ценен актив за вашия клиент и вашия екип.

Android Thread

36. Какво е нишка?

„Нишката е нишка на изпълнение в дадена програма.“ Всяка нишка има приоритет и по-високият приоритет е, че те се изпълняват в предпочитание към нишки с по-нисък приоритет. Когато кодът се изпълнява в нишка и създава нов обект на тема, новата нишка има своя приоритет, първоначално зададен равен на приоритета на създаващата нишка, и е демонова нишка, ако и само ако създаващата нишка е демон.

37. Как се създава нова нишка на изпълнение?

Има два начина, по които човек може да създаде нова нишка на изпълнение. Единият е чрез деклариране на клас за подклас на Thread. Подкласът ще отмени метода на изпълнение на клас Thread. Подкласът може да бъде разпределен и стартиран. Пример за нишка, която изчислява праймерите, по-големи от заявената стойност, е по-долу:

клас PrimeThread удължава нишката {
        дълъг minPrime;
        PrimeThread (дълъг minPrime) {
            this.minPrime = minPrime;
        }
        публично невалидно изпълнение () {
            // изчисляване на праймета, по-големи от minPrime
             , , ,
        }
    }

Кодът по-долу ще създаде нишка и ще я стартира:

PrimeThread p = нов PrimeThread (143);
    p.start ();

Друг начин за създаване на нишка е декларирането на клас, който реализира интерфейс Runnable. Този клас ще приложи метода на изпълнение. Класът може да бъде разпределен, предаден като аргумент при създаване на Тема и стартиран.

клас PrimeRun внедрява Runnable {
        дълъг minPrime;
        PrimeRun (дълъг minPrime) {
            this.minPrime = minPrime;
        }
        публично невалидно изпълнение () {
            // изчисляване на праймета, по-големи от minPrime
             , , ,
        }
    }

Кодът по-долу ще създаде тема и ще започне да се изпълнява:

PrimeRun p = нов PrimeRun (143);
    нова нишка (p) .start ();

38. Може ли повече от една нишка да имат същото име?

Да. Всяка нишка има име, за да бъде идентифицирана. Ако име не е посочено при създаване на нишка, за него се създава ново име.

За повече информация за нишката на Android посетете тук.

заключение

Моля, обърнете внимание, че тези въпроси не обхващат всички сложности на разработката на Android и те просто се предлагат като ръководство. Използвайки тези въпроси, вие ще можете да придобиете истинско усещане за способността на кандидата или какво да очаквате в интервю. Така или иначе, все още е за предпочитане да се използва качествена агенция като Pangara, за да подпомогне процеса, независимо дали наемате или искате да бъдете наети. Pangara разполага със специализирани екипи, които вече са интервюирали и са наблюдавали кандидатите, както и уникален квалификационен процес за проверка на най-добрите разработчици там. Ако Pangara достави Android програмист за всеки бизнес, можете да бъдете сигурни, че човекът ще бъде идеално подходящ за работата.

Ето да се надявате да намерите подходящия човек за вашата позиция. В крайна сметка вашият бизнес може да зависи от него.

* Тази публикация беше редактирана и прегледана от Бин Нгуен, мобилен талант в Пангара.

Ако сте готови да направите следващата стъпка и да се присъедините към изключителната мрежа на фрийлансъри на Pangara, тогава нека започнем! Станете талант на Пангара днес.

Не забравяйте да следите нашите най-нови актуализации и събития за новини на нашата страница във Facebook, LinkedIn и Twitter.

Първоначално публикувано в pangara.com на 13 ноември 2017 г.