Читаем Сборник тестов: 1500 вопросов и ответов на знание Android полностью

for (int i=0;i 

for (int i=0;X; i++)

for (int i=0;i 

for (int i=0;X; i=1)

Вопрос 8

Какой элемент нужно добавить первым при создании списка в xml-файле?

String

String Array

Integer Array

Style/Theme

Вопрос 9

Какой из нижеприведенных операторов является оператором задачи цикла?

while

try

begin

if

Вопрос 10

Можно ли просмотреть Log-сообщения после компиляции приложения?

да, но только с помощью дебаггера

да, если их не удалили\закомментировали

да, даже если их закомментировали

нет, даже если они остались в коде

Вопрос 11

Для чего используются папки drawable ldpi, mdpi, hdpi и xhdpi?

для хранения картинок в разных форматах

для хранения картинок разных размеров, маленькие нужно класть только в ldpi, чуть больше – в mdpi и тд, иначе Android не сможет их отображать

для удобства. Никаких функциональных особенностей

для использования разных файлов изображений в зависимости от размеров экрана

Вопрос 12

В каком xml-файле по умолчанию содержится текстовое содержимое элементов пользовательского интерфейса?

styles. xml

lines. xml

strings. xml

Text. xml

Вопрос 13

Использование FindViewByID

не характерно для Android-разработки

позволяет обращаться к созданному элементу интерфейса

устанавливает внешний вид для Activity

позволяет получить объект из xml-разметки

Вопрос 14

Какой оператор позволяет задавать условия?

if… else if

if… or if

if… what if

if… Then

Вопрос 15

Как выглядит папка, содержащая видоизмененный Layout?

/res/  – layout

/res/layout

/res/layout/  /

/res/layout–

Вопрос 16

Почему после execSQL мы используем синтаксис заглавными буквами в кавычках?

потому что это содержимое нашей таблицы\базы

это код SQL

особенность программирования на Java

данный код был заимствован из PHP

Вопрос 17

За что отвечает опция Solid при создании новой фигуры?

за непрозрачность

за глубину цвета

за заливку

за целостность

Вопрос 18

WebView myWebView = (WebView) findViewById (R. id. webview);

myWebView. loadUrl {»http://www.example.com");

Как убедиться в работоспособности кода?

добавить логическую переменную вторым аргументом метода loadUrl ()

вызвать метод myWebView. show ()

добавить в файл манифеста разрешение android. permission. INTERNET

обратиться к методу myWebView. reload () после кода

добавить разрешение android. permission. ALLOW_WEBVIEW в файл манифеста

Вопрос 19

Необходимо проверить имеет ли вызываемый процесс разрешение для программного доступа к сервису. Что для этого используется?

Context. checkCallingPermission ()

Context. checkCallerPermissions ()

Security. validateCallingContext ()

Process. validatePermission ()

Process. checkCaller ()

Вопрос 20

Реализован простой класс, осуществляющий SQLiteOpenHelper. Также данный класс содержит методы для выполнения различных операций с базами данных, таких как создание записей клиентов. Большинство операций используют простой метод execSQL (). Однако существует более сложная операция, требующая псевдонимы столбцов. Какой класс может быть использован для создания более сложных SQL запросов?

ExtendedQueryBuilder

SQLiteComplexQuery

ComplexQueryHelper

SQLiteQueryBuilder

EnhancedSQLiteQuery

Вопрос 21

1: boolean mExternalStorageAvailable = false;

2: boolean mExtemalStorageWriteable = false;

3: String state = Environment. getExternalStorageState {);

4:

5: if (Environment. MEDIA_MOUNTED. equals (state)) {

6: mExternalStorageAvailable = mExternalStorageWriteable = AAA;

7:} else if (Environment. MEDIA_MOUNTED_READ_ONLY. equals (state)) {

8: mExternalStorageAvailable = BBB;

9: mExternalStorageWriteable = CCC;

10:} else {

11: mExternalStorageAvailable = mExternalStorageWriteable = DDD;

12:}

Необходимо установить значения флагов mExternalStorageAvailable и mExternalStorageWriteable, которые позволят корректно отобразить состояние внешнего устройства. Какие значения должны быть вместо AAA, BBB, CCC и DDD (строки 6, 8, 9 и 11 соответственно)?

false, true, false, true

true, true, false, false

true, false, false, true

false, false, true, true

true, false, true, false

Вопрос 22

public class MainActivity extends Activity {

@Override

public void onCreate (Bundle savedInstanceState) {

super. onCreate (savedlnstanceState);

setContentView (R. layout. main);

getLoaderManager (). initLoader (0, null, this);

}

@Override

public Loader onCreateLoader (int id, Bundle args) {

// Create and return a new Loader

}

}

Как убедиться что onCreateLoader () запускается, когда нужен новый Loader?

получить ссылку на загрузчик в методе, отличном от onCreate ()

передать значение, отличное от NULL, в качестве второго аргумента метода initLoader ()

сделать MainActivity производным классом от LoaderManager

вызвать createLoader () вместо initLoader ()

нужно, чтобы MainActivity мог выполнять интерфейс LoaderManager. LoaderCallbacks

Вопрос 23

Разрабатывается приложение, в котором должна быть возможность добавлять события в пользовательский календарь. В файле AndroidManifest. xml не нужно настраивать никакие дополнительные разрешения. Как достигнуть данной цели?

использовать CALENDAR. INSERT, отправляя детали события как POST параметры

вставить данные напрямую, через доступ к основной XSL базе данных

запросить разрешение WRITE_CALENDAR о времени выполнения приложения, используя метод PermissionManager. grantRuntimePermission ()

отправить детали события как XML файл и активировать действие, позволяющее заполнить календарь

использовать INSERT и отправить детали события как дополнительные данные

Вопрос 24

public class greeter {

public String buildGreeting (String firstName) {

String greetingl = «Hello, ";

String greeting2 =», and welcome to the application!»;

return greetingl + firstName + greeting2;

}

public StringBuffer getGreeting (String firstName) {

StringBuffer sb = new StringBuffer ();

sb. append (buildGreeting (firstName));

return sb;

}

}

Как вызвать метод getGreeting (), не создавая временных объектов?

использовать лямбда выражение, для того чтобы контекст выполнялся в стеке, а не в очереди

изменить параметры доступа к buildGreeting (), для того чтобы объекты можно было добавлять напрямую в класс StringBuffer

сделать все аргументы метода конечными и создать их копии, чтобы работать в обоих методах одновременно

использовать шаблоны в методе buildGreeting () вместо сложения строк

использовать более эффективный класс ParallelStringBuffer вместо StringBuffer

Вопрос 25

Вы просматриваете результаты трассировки вашего приложения. Приложение создает потоки, чтобы справиться с интенсивно-вычислительной работой. Вы знаете, что приложение создает несколько потоков в течение определенного времени, однако в результатах трассировки видите только один. Что вызывает данную проблему?

VM использует ID потока, который и отображается в процессе трассировки

приоритет потоков не определен, из-за чего один из них блокируется при трассировке

трассировка не может засечь более одного потока в одно и то же время

потоки выполняются очень быстро, и трассировка не может засечь каждый

VM экономит ресурсы, объединяя несколько потоков в один

Вопрос 26

Приложение пытается соединиться со службой другого разработчика. Код, отвечающий за освобождение ресурсов, отсутствует. Во время теста приложение отключается из-за недостаточного количества ресурсов. Проблема возникла из-за того, что вы не вызвали:

completeService ()

releaseService ()

stopService ()

unbindService ()

destroyService ()

Вопрос 27

1: public class ProgressTestActivity extends Activity {

2:

3: private Handler handler;

4: private ProgressBar progress;

5:

6: @Override

7: public void onCreate {Bundle savedInstanceState) {

8: super. onCreate (savedInstanceState);

9: setContentView (R. layout. main);

10: progress = (ProgressBar) findViewById (R. id. progressBar);

11: handler = new Handler ();

12:}

13:

14: public void startProgress (View view) {

15: Runnable runnable = new Runnable () {

16: @Override

17: public void run () {

18: for (int i = 0; i <= 10; i++) {

19: final int value = i;

20: try {

21: Thread. sleep (2000);

22:} catch {InterruptedException e) {}

23: handler. post (new Runnable () {

24: @Override

25: public void XXX () {

26: progress. setProgress (value);

27:}

28:});

29:}

30:}

31:};

32: new Thread (runnable). start ();

33:}

34:}

Какой метод заменит XXX в 25-й строке, для того чтобы progress bar периодически обновлялась?

handleMessage

post

execute

run

update

Вопрос 28

LocationManager manager =

(LocationManager) getSystemService (Context. LOCATION_SERVICE);

Criteria criteria = new Criteria ();

criteria. setAccuracy (Criteria. ACCURACY_LOW);

String provider = manager. getBestProvider (criteria, false);

Location location = locationManager. getLastKnownLocation (provider);

Чтобы убедиться, что точность расположения менее, чем 100 метров, нужно:

вызвать getHighAccuracyLocation () вместо getLastKnownLocation ()

использовать ACCURACY_FINE вместо ACCURACY_LOW

передать Context. LOCATION_SERVICE_ACCURATE в метод getSystemService ()

вызвать метод enhancedAccuracy (true) в объекте Location

передать ИСТИНА в качестве значения конструктора Criteria

Вопрос 29

Действие в приложении запускается, если указано полное имя класса в Intents, и не запускается во всех остальных случаях. Как неявно убедиться в том, что действие будет запущено?

добавить фильтр действия в файле AndroidManifest. xml

убедиться, что действие является расширением класса LaunchableActivity

добавить разрешение ACTIVITY_IMPLICITLY_LAUNCHABLE в файл AndroidManifest. xml

вызвать setLaunchable (true) в методе действия onCreate ()

передать ключевое значение «implicitLaunch: true» в Intent, используя запущенное действие

Вопрос 30

// onCreate () method from your searchable Activity class

@Override

public void onCreate (Bundle savedInstanceState) {

super. onCreate (savedInstanceState);

setContentView (R. layout. search);

Intent intent = getIntent ();

if (Intent. ACTION_SEARCH. equals (intent. getAction ())) {

String query = intent. getStringExtra (SearchManager. QUERY);

doMySearch (query);

}

}

Как проверить, что действие запущено, когда пользователь выполняет поиск в виджете?

вызвать makeSearchable () после вызова setContentView ()

сконфигурировать действие, которое будет обрабатывать ACTION_SEARCH

обозначить класс действий в файле searchable. xml

убедиться, что класс является производным от класса SearchableActivity

добавить к классу поле public static boolean SEARCH_ENABLED со значением ИСТИНА

Вопрос 31

Пример кода взят из макета XML файла. Необходимо убедиться, что Button 1 будет находиться в фокусе, после того как пользователь сместит курсор ниже Button 2. Какую конструкцию вы бы добавили?

android: nextFocusTop="@+id/Button1» к конфигурации Button2

android: nextFocusDown="@+id/Button1» к конфигурации Button1

android: nextFocusDown="@+id/Button1» к конфигурации Button2

android: nextFocus=«previousView» к конфигурации Button2

android: nextFocusTop="@+id/Button2» к конфигурации Button1

Вопрос 32

Вы работаете с главным действием приложения. Требуется, чтобы действие, запускаемое после главного, было не во весь экран. Как этого добиться?

передать значение ИСТИНА в качестве второго аргумента конструктора Intent

установить для второго действия android: theme="@android: style/Theme. Dialog»

установить флаг ACTION_LAUNCH_DIALOG для запуска второго действия

для запуска второго действия вызвать метод startActivityAsDialog ()

убедиться, что для поля второго действия параметр AS_DIALOG установлено значение ИСТИНА

Вопрос 33

Какие четыре типа диалоговых окон есть в Android?

Alert, Progress, DatePicker, TimePicker

Feedback, Progress, DateTimePicker, Input

TextInput, Feedback, DataPicker, Toaster

Message, Progress, DatePicker, TimePicker

Immediate, Deferred, DataReciever, Progress

Вопрос 34

В проект импортированы файлы, которые размещены в папке /assets. Однако приложению нельзя ссылаться на данные файлы, используя сгенерированный файл R. java. Файлы можно сделать доступными приложению, если:

запустить перепостроение в среде Eclipse

переместить файлы в папку /bin

написать код, разрешающий доступ к файлам напрямую

обновить свойства проекта, установив dataFiles=true

отредактировать R. java и заставить файл ссылаться на себя

Вопрос 35

Требуется определить, разрешается ли пакету com.company. app начать телефонный звонок без обращения к Диалоговому интерфейсу. Какой фрагмент кода может быть использован для этого?

PackageManager.get("com.company. app»). validatePermission («android. permission. CALL_PHONE»);

context.checkPermission("com.company. app», «android. permission. CALL_PHONE»);

context. getPackageManager (). checkPermission («android. permission. MODIFY_PHONE_STATE», "com.company. app»);

context.getPackageManager(). checkPermission("com.company. app», «android. permission. MODIFY_PHONE_STATE»);

context. getPackageManager (). checkPermission («android. permission. CALL_PHONE», "com.company. app»);

Вопрос 36

Что произойдет в том случае, если элемент и элемент потомок имеют атрибуты иконок и меток?

значения переопределяют значения

из-за двусмысленных значений при компиляции будет выдано сообщение об ошибке

ни одно значение не сможет быть использовано, так как Android не может определить, какое будет иметь приоритет

из-за двусмысленных значений во время выполнения будет выдана ошибка

значения всегда игнорируются

Вопрос 37

public class CustomerDBHelper extends SQLiteOpenHelper {

CustomerDBHelper (Context context) {

super (context, «CustomerDatabase», null, 1);

}

@Override

public void onCreate (SQLiteOatabase db) {

db. execSQL («CREATE TABLE customers (lastName TEXT);»);

}

}

Почему данный класс НЕ может быть скомпилирован?

не выполнен метод onUpgrade ()

третий аргумент конструктора суперкласса имеет некорректное значение NULL

вместо SQLiteOpenHelper должно быть SQLiteDBHelper

выполняемое SQL выражение не является допустимым

не выполнен метод onOpen ()

Вопрос 38

Устанавливается приложение на устройство с операционной системой Android 4.0. Для воспроизведения аудио потоков из сети Интернет, приложение использует класс MediaPlayer. В предыдущих версиях Android все работало, однако в Android 4.0 поток не воспроизводится. Код приложения не дорабатывался и не предъявлялись никакие дополнительные требования. Что нужно изменить, чтобы аудио потоки воспроизводились всеми версиями Android, включая 4.0?

обратиться к новому методу playRemoteStream () в классе MediaPlayer

добавить разрешение INTERNET_AUDIO в файл AndroidManifest. xml

добавить разрешение ALLOW_STREAMS в файл AndroidManifest. xml

заменить MediaPlayer на AsyncPlayer

добавить разрешение INTERNET в файл AndroidManifest. xml

Вопрос 39

Если пользователи жалуются на то, что во время сохранения данных на удаленном сервере быстро заканчивается батарея, разработчик должен убедиться в том, что приложение не:

создаются несколько контент-провайдеров и каждому необходимо соединение

используются фрагменты, в силу того, что UI зависит от сокетов

пытается соединиться с альтернативным сайтом, находящимся на большом расстоянии от устройства

запрашивает низкоскоростное соединение, когда доступно высокоскоростное

постоянно повторяются неудавшиеся операции

Вопрос 40

Какой метод не участвует в жизненном цикле Activity

onDestroy ()

onPause ()

onSaveInstanceState ()

onCreate ()

onRestart ()

Вопрос 41

Необходимо отобразить данные контент-провайдера в ListView. Какую колонку нужно вернуть как часть записи контент-провайдера?

key

uniqueID

_ID

_Index

_COUNT

Вопрос 42

Какая команда используется для просмотра результатов отладки?

traceview

logcat

outview

adblog

tailer

Вопрос 43

Вы работаете с кодом, использующим базу данных SQLite. SQL запросы не возвращают ожидаемых значений. Необходимо проверить некорректные данные и структуры таблиц, когда приложение будет запущено в режиме эмулятора. Какой инструмент вы используете для устранения неполадок базы данных?

sltool

sqlite3debug

sqlite3

sqliteviewer

sqlitedump

Вопрос 44

Необходимо создать образ SD карты с файловой системой FAT32, который может быть протестирован на устройствах с различными конфигурациями. Какая программа позволит создать данный образ?

mksdimg

mksdcard

fat32img

makefat32img

sdcard

Вопрос 45

Действие A запускает B, которое запускает C. Действие A работает вместо B, когда пользователь нажимает кнопку назад из действия C. Какой флаг может быть использован для проверки того, что A работает вместо B?

FLAG_ACTIVITY_NO_HISTORY

FLAG_ACTIVITY_SKIP

FLAG_ACTIVITY_IGNORE

FLAG_ACTIVITY_NO_BACK

FLAG_ACTIVITY_EXCLUDE_FROM_RECENTS

Вопрос 46

При попытке вставки данных с клавиатуры, создаются объекты ClipData, запрашивающие:

bytestream

cluster identifier

class hierarchy

MIME type

Intent

Вопрос 47

Создается пользовательский интерфейс. Необходимо использовать макет, который позволит указывать отношения между элементами предками и потомками. Какой макет необходимо использовать?

AbsoluteLayout

TableLayout

FrameLayout

LinearLayout

RelativeLayout

Вопрос 48

xmlns: android="http://schemas.android.com/apk/res/android">

Перемещение за 1 секунду в коде класса View осуществляется с помощью:

((TransitionDrawable) this. getTransition ()). start (1);

((TransitionDrawable) this. getBackground ()). initiateTransition (1);

((TransitionDrawable) this. getBackground ()). startTransition (1000);

((TransitionDrawable) this. getBackground ()). executeTransition (1000);

((TransitionDrawable)this.getTransition()). run (1000);

Вопрос 49

Какие макеты допускается использовать при разработке виджетов для рабочего стола?

RelativeLayout, FrameLayout, и BorderLayout

FrameLayout, LinearLayout, и RelativeLayout

AbsoluteLayout, LinearLayout, и TableLayout

FrameLayout, LinearLayout, и TableLayout

AbsoluteLayout, LinearLayout, и TableLayout

Вопрос 50

Нужно осуществить разрешение для URI контент-провайдера. Вы хотите указать путь, начинающийся с /contacts/. Какую конфигурацию для вашей службы необходимо поместить в файл AndroidManifest. xml?

Перейти на страницу:

Похожие книги