355 500 произведений, 25 200 авторов.

Электронная библиотека книг » Тимур Машнин » Сборник тестов: 1500 вопросов и ответов на знание Android » Текст книги (страница 9)
Сборник тестов: 1500 вопросов и ответов на знание Android
  • Текст добавлен: 21 сентября 2016, 18:42

Текст книги "Сборник тестов: 1500 вопросов и ответов на знание Android"


Автор книги: Тимур Машнин



сообщить о нарушении

Текущая страница: 9 (всего у книги 25 страниц) [доступный отрывок для чтения: 10 страниц]

Тест 14

Вопрос 1

Когда новый эмулятор создается, сколько портов выделяется для него?

2 – консольный порт и порт adb

4

1

0

Вопрос 2

Как используется DDMS инструмент (Dalvik Debug Monitor Server) в Android?

Используется для имитации звонков и SMS.

Чтобы видеть распределение потоков и выделение памяти для любого процесса, запускаемого в телефоне или эмуляторе.

Чтобы видеть журналы в LogCat инструменте, который является частью DDMS. Используется для отладки программы.

Чтобы моделировать местоположение GPS, также используя DDMS инструмент.

Все перечисленное.

Вопрос 3

Что adb команда devices делает в Android?

Сбрасывает все устройства, подключенные к серверу adb.

Отображает все устройства, подключенные к серверу adb.

Отображает только онлайн устройства.

Отображает онлайн и оффлайн устройства.

Вопрос 4

Как инсталлировать APK файл в эмуляторе 5556. Предположим, что сервер ADB может быть подключен к более чем одному эмулятору одновременно.

adb – s emulator-5556 install helloWorld. apk

adb install – s emulator-5556 helloWorld. apk

adb install helloWorld. apk

adb – s install emulator-5556 helloWorld. apk

Вопрос 5

Какие методы отладки доступны в Android?

Использовать DDMS LogCat, чтобы увидеть поток сообщений и проанализировать ошибки.

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

Профилирование памяти для анализа использования памяти.

Все перечисленное.

Вопрос 6

Какой номер у порта, который ADB сервер слушает, чтобы получать команды от ADB клиента?

5035

5554

5555

5037

Вопрос 7

Как анализировать крушение Android приложения, как исправить сбой, используя LogCat?

Поставить точку останова в LogCat и проанализировать журнал.

После крушения LogCat будет содержать имя исключения вместе с номером строки, где оно произошло.

Поставить точку останова в коде и проанализировать ее.

После крушения LogCat будет содержать имя файла, где произошло крушение, а также будет содержать значения переменных.

Вопрос 8

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

Использовать ImageSwitcher.

Вы можете использовать ImageView.

Используйте Custome View и рисуйте прямо на Canvas.

Используйте существующие предопределенные представления и рисуйте прямо на Canvas.

Вопрос 9

Что такое tween анимация в Android?

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

Переключение между двумя изображениями, используя imageswitcher.

Проигрывание кадр за кадром, используя XML свойство animation-list.

Все перечисленные примеры анимации.

Вопрос 10

Что такое кадровая анимация в Android?

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

Переключение между двумя изображениями, используя imageswitcher.

Проигрывание кадр за кадром, используя XML свойство animation-list.

Все перечисленные примеры анимации.

Вопрос 11

Tween анимация является частью какого пакета?

Она часть пакета android. graphics. drawable.

Она часть view пакета.

Она является частью 3D графической библиотеки (open GLES).

Она часть ядра.

Вопрос 12

Для создания покадровой анимации мы используем AnimationDrawable класс. В каком пакете он находится?

Он часть пакета android. graphics. drawable.

Он часть view пакета.

Он является частью 3D графической библиотеки (open GLES).

Он часть ядра.

Вопрос 13

Как рисовать Android UI прямо на Canvas?

Реализуйте свое собственное представление, расширяя класс View, а затем реализуйте метод оnDraw в нем.

Возьмите любой UI компонент, такой как ImageView, и рисуйте изображения с помощью холста.

Это не возможно непосредственно получить доступ к холсту.

Вопрос 14

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

jpg, or. jpeg.

png

9. png

Вопрос 15

Какой инструмент преобразует изображение в 9 patch изображение? Где он находится?

draw9patch это тот инструмент, он находится в android-sdk/platform-tools.

draw9patch это тот инструмент, он находится в android-sdk/tools.

9patch это тот инструмент, он находится в android-sdk/platform-tools.

9patch это тот инструмент, он находится в android-sdk/tools.

Вопрос 16

В чем преимущество 9 patch изображения по сравнению с другими изображениями?

Это изображение масштабируется автоматически на основе размеров экрана устройства, на котором приложение загружается.

Это изображение делается меньшего размера по сравнению с другими PNG изображениями.

Это изображение используется в целях безопасности для изображений, используемых в проекте.

Все перечисленное.

Вопрос 17

Какие теги используются в tween анимации?

Все перечисленное.

Вопрос 18

Если программист не знает C/C++ и хочет использовать 3D-графику в Android приложении, то как это сделать?

Использовать оpenGLES.

Использовать AndEngine.

Использовать android. graphics. library.

Программист может использовать любой из упомянутых выше вариантов.

Вопрос 19

Что делает тег meta-data в AppWidgetProvider?

android: resource="@xml/providerinfo»/>

Тег говорит, что AppWidgetProviderInfo в providerinfo. xml файле, который находится в xml папке.

Тег говорит, что макет виджет приложения в providerinfo. xml файле, который находится в xml папке.

Тег говорит, что AppWidgetProviderInfo в providerinfo. xml файле, который находится в xml папке, и тег также говорит, что это не радиовещательный приемник, это поставщик виджет приложения.

Тег говорит, что макет виджет приложения в providerinfo. xml файле, который находится в xml папке, и тег также говорит, что это не радиовещательный приемник, это поставщик виджет приложения.

Вопрос 20

Что такое действие APPWIDGET_UPDATE в виджете?

Это действие должно быть использовано с виджетами. Даже если мы не используем его, проблем не возникает.

Это действие должно быть использовано с виджетами, если мы не используем его, тогда оnUpdate функция класса appWidgetProvider не будет вызываться и виджет не будет обновляться.

Это действие должно быть использовано с виджетами, если мы не используем его, тогда наше виджет приложение рухнет.

Это действие должно быть использовано с виджетами, если мы не используем его, тогда наше приложение домашнего экрана рухнет.

Вопрос 21

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

service тег

activity тег

receiver тег

widget тег

Вопрос 22

Что providerinfo. xml файл содержит?

Он содержит ссылку на первоначальный файл XML макета.

Он также содержит минимальную ширину и высоту виджета.

Он содержит время в миллисекундах периода обновления виджета.

Все перечисленное.

Вопрос 23

Какой корневой тег используется для виджет приложения в providerinfo. xml файле?

Вопрос 24

Какие из перечисленных ниже компонентов в основном используются при реализации класса AppWidgetProvider?

RemoteViews

AppWidgetManager

PendingIntent

Все перечисленное.

Вопрос 25

Что из перечисленного ниже верно о виджетах?

Приложение, которое содержит другие виджет приложения, называется widget host.

Приложение, которое содержит другие виджет приложения, называется виджет приложением.

После того, как мы создаем виджет, он будет автоматически добавлен в наш домашний экран.

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

Вопрос 26

Как создать виджет в Android?

Чтобы создать виджет, мы должны создать класс, который расширяет BroadCastReciver напрямую.

Чтобы создать виджет, мы должны создать класс, который расширяет AppWidgetProvider напрямую.

AppwidgetProvider наследует BroadcastReceiver.

Вопрос 27

Что такое песочница в Android?

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

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

Перемещение приложения во внешнюю память называется песочницей.

Загрузка приложения в эмулятор называется песочницей.

Вопрос 28

Сколько уровней безопасности доступно в Android?

2 уровня – уровень приложений, уровень ядра. Один на уровне операционной системы или уровня ядра. Другой использует теги permission на уровне приложения.

3 уровня – уровень приложений, уровень DVM, уровень ядра.

Только уровень ядра.

Только уровень приложения.

Вопрос 29

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

app1

аpp2

app1 и app2

Вопрос 30

Я скачиваю два приложения, где app1 имеет сервис, который требует разрешение, и app2 имеет активность, которая запускает сервис в app1. Где я должен написать uses-permission тег? В котором приложении?

uses-permission тег должен быть написан в файле манифеста app2 в теге application.

uses-permission тег должен быть написан в файле манифеста app2, перед тегом application.

uses-permission тег должен быть написан в файле манифеста app1 в теге application.

uses-permission тег должен быть написан в файле манифеста app1, перед тегом application.

Вопрос 31

Я скачиваю два приложения, где app1 имеет сервис, который требует разрешение, и app2 имеет активность, которая запускает сервис в app1. Где я должен написать permission тег? Как потребовать это разрешение для сервиса?

permission тег должен быть в файле манифеста app1 в теге application, и мы должны потребовать это разрешение с помощью android: permission атрибута в service теге app1.

permission тег должен быть в файле манифеста app1 перед тегом application, и мы должны потребовать это разрешение с помощью android: permission атрибута intent-filter тега сервиса в app1.

permission тег должен быть в файле манифеста app2 перед тегом application, и мы должны потребовать это разрешение с помощью android: permission атрибута в service теге app1.

permission тег должен быть в файле манифеста app1 перед тегом application, и мы должны потребовать это разрешение с помощью android: permission атрибута в service теге app1.

Вопрос 32

Какие из следующего не является атрибутом тега permission?

android: id

android: name

android: description

android: protectionlevel

Вопрос 33

Какие уровни защиты доступны в permission теге в Android?

normal, dangerous, system, security.

normal, dangerous, signature, signatureOrsystem.

normal, dangerous, system, signatureOrsystem.

normal, dangerous, security, signatureOrsystem.

Вопрос 34

Может одно приложение, имея Linux процесс с user id 1, иметь доступ к свойствам или элементам другого приложения непосредственно?

Нет, в Linux одно приложение не может вторгаться в другое приложение без разрешения Android системы.

Да, это возможно, Android не выбросит исключение.

Да, это возможно, если оба приложения имеют один и тот же идентификатор пользователя.

Нет, так как нет сценария, при котором два Android приложения могут иметь общий идентификатор пользователя.

Вопрос 35

Что такое файл манифеста? Если у нас есть два Java файла A. java и B. java в папке src, какой открывается первым и почему?

Файл манифеста представляет важную информацию о вашем приложении для Android системы, информация для системы должна быть предоставлена прежде чем она может запустить любой код приложения.

Активность, которая имеет следующий Intent фильтр будет выполнена первой:

Файл манифеста представляет важную информацию о вашем приложении для Android системы, информация для системы должна быть предоставлена прежде чем она может запустить любой код приложения.

Активность, которая имеет следующий Intent фильтр будет выполнена первой:

Манифест файл описывает возможности вашего приложения и количество компонентов в вашем приложении. Файл манифеста представляет важную информацию о вашем приложении для Android системы, информация для системы должна быть предоставлена прежде чем она может запустить любой код приложения.

Активность, которая имеет следующий Intent фильтр будет выполнена первой:

Вопрос 36

Что Splash или Splash активности?

Splash это широковещательный приемник в Android, который будет срабатывать каждых 10 минут.

Splash используется в приложении камеры для включения вспышки камеры.

Splash является активностью, которая будет показана в качестве начального экрана при запуске приложения. Этот экран будет использоваться для демонстрации логотипа вашей компании и другой информации. Splash будет отображаться в течение нескольких секунд, прежде чем откроется главный экран приложения.

Все перечисленное.

Вопрос 37

Где указываются фильтры намерений и почему?

Фильтры намерений всегда находятся в AndroidManifest. xml, потому что Android система использует фильтры намерений, для того чтобы найти подходящий компонент для обработки намерения. Фильтр намерения определяет намерение, на которое компонент может реагировать.

Мы можем определять intent-filter в Java коде также, в случае динамических приемников вещания.

В styles. xml, потому что Android система использует фильтр намерений, чтобы определить, для какой активности, какой стиль должен быть загружен.

Все перечисленное.

Вопрос 38

Как сохранить переходные состояния в жизненном цикле активности? Если я использую некоторые переменные, которые будут меняться на основе жизненного цикла активности, тогда где я должен сохранить эти переменные, в случае изменения конфигурации?

Сохранить все эти переменные в onSaveInstanceState ().

Сохранить с помощью функции onRetainNonConfigurationInstance.

Сохранить эти переменные в оnPause.

Android система сама сохранит и восстановит все эти переменные, так что программисту не нужно беспокоиться.

Вопрос 39

Могу ли я использовать метод onSaveInstanceState для сохранения всех моих переходных состояний?

Да, эта функция предназначена для этого.

Вы не должны использовать этот метод для сохранения очень больших объектов, так как это может занять время, чтобы сериализовать и де-сериализовать их.

Используйте этот метод только для сохранения небольших переходных состояний. Если мы хотим сохранить большие объекты, использовать функцию onRetainNonConfigurationInstance ().

Вопрос 40

Могу ли я сохранить обновления базы данных в методе onSaveInstanceState ()?

Да, вы можете сохранить, но убедитесь, что это не будет занимать слишком много времени.

Да, мы можем сохранить базу данных любого размера в этой функции.

Нет, потому что эта функция может быть не вызвана. Мы должны сохранить все обновления базы данных до или в функции оnPause (). Если вы сохраните базу данных в onSaveInstanceState, то эта функция не будет вызвана, если пользователь нажимает кнопку назад в активности. onSaveInstanceState () предназначена для сохранения текущего состояния, когда происходит изменение конфигурации, как, например, изменение ориентации экрана.

Вопрос 41

Если большие изображения загружаются из Интернета в методе оnCreate () активности, где сохранить их в случае изменения конфигурации (поворот телефона)?

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

Использовать функцию onRetainNonConfigurationInstances (), чтобы сохранить изображение.

Сохранить изображение в каком-либо файле или базе данных и получить его в методе оnCreate ().

Вопрос 42

При запуске активности из уведомления, она будет запущена в новой задаче или старой задаче?

Ни то, ни другое, она будет запущена в задаче NotificationManager.

Она будет запущена в старой задаче, которая предоставила pending intent для NotificationManager.

Она будет запущена в новой задачи всегда.

Вопрос 43

Что флаг FLAG_ACTIVITY_CLEAR_TOP делает в следующем коде?

Предположим, что стек активностей A-> B-> C-> D. Код в настоящее время работает в активности «D». Теперь, что будет происходить в этом сценарии?

Intent in = new Intent (this, B. class);

in. setFlags (Intent. FLAG_ACTIVITY_CLEAR_TOP);

startActivity (in);

Код запускает еще один экземпляр активности «B» на вершине активности «D». Так что это будет выглядеть как A-> B-> C-> D-> B.

Код не будет запускать еще один экземпляр активности «B» на вершине активности «D». Вместо этого код отправит новое намерение в метод onNewIntent () активности «B» и B появится на вершине D. Так что это будет выглядеть как A-> C-> D-> B.

Код не будет запускать еще один экземпляр активности «B» на вершине активности «D». Вместо этого код отправит новое намерение в метод onNewIntent () активности «B» и активности C, D будут уничтожены автоматически, так что стек будет выглядеть A-> B.

Код запустит новый экземпляр активности «B» в другой задаче, так что две задачи будут доступны. Задача 1: А-> В-> С-> D и задача 2: В.

Вопрос 44

Если активность насильно закрыта системой Android из-за изменения ориентации экрана, как сохранить UI состояние?

Сохраните все ваши характеристики пользовательского интерфейса в onSaveInstanceState ().

Сохраните все ваши состояния пользовательского интерфейса, используя функцию onRetainNonConfigurationInstance.

Сохраните все ваши состояния пользовательского интерфейса в оnPause.

Android сохранит и восстановит интерфейс автоматически, поэтому программисту не нужно беспокоиться.

Вопрос 45

Что такое weightSum и weight?

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

weight свойство указывает, какая часть оставшегося места должно быть взято этим представлением. weightSum указывает общий вес представлений планировки. Если weightSum не предоставляется для макета, тогда weightSum будет автоматически рассчитано путем суммирования весов дочерних представлений в этом макете. Это всегда хорошая практика, чтобы установить weightSum для родительского макета при настройке весов дочерних представлений.

weight свойство указывает, какая часть оставшегося места должно быть взято этим представлением. weightSum указывает общее количество представлений, находящихся в этом макете. Если weightSum не предоставляется для макета, тогда weightSum будет автоматически рассчитано путем суммирования весов дочерних представлений в этом макете.

weight свойство указывает, какая часть оставшегося места должно быть взято этим представлением. weightSum указывает сумму весов дочерних представлений. Если weightSum не предоставляется для макета, тогда weightSum будет автоматически рассчитано путем суммирования весов дочерних представлений в этом макете. Используйте weightSum в макете, только если вы не собираетесь добавить новое представление в макет. Это может создать проблемы, если вы хотите изменить или добавить новое дочернее представление с новым весом в существующий макет. Тогда вы должны убедиться, что вы измените сумму весов родительской компоновки. Иначе компоновка не будет работать, как требуется.

Вопрос 46

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

Используйте относительное расположение с кнопкой со следующими свойствами.

android: layout_alignParentBottom=«true»

android: layout_centerHorizontal=«true»

Используйте относительное расположение с кнопкой со следующими свойствами.

android: layout_alignParentBottom=«true»

android: layout_gravity=«center|horizontal»

Используйте линейную компоновку с кнопкой со следующими свойствами.

android: layout_alignParentBottom=«true»

android: layout_centerHorizontal=«true»

Вопрос 47

В listview, содержимое в каждом TextView должно быть соответствующим на всех типах мобильных устройств? Как достичь этого?

Не определять ширину TextView в пикселях или dp значениях. Используйте wrap_content для его ширины и высоты.

Если TextView имеет фоновое изображение, убедитесь, что версии одного и того же изображения различной плотности доступны в различных drawable папках. Убедитесь, что это 9 patch изображение.

Все перечисленное.

Вопрос 48

Какие обязательные функции, которые должны быть реализованы в классе AsyncTask?

Только doInBackground ().

onPreExecute ().

onPostExecute ().

onProgressUpdate.

Все перечисленное.

Вопрос 49

Как остановить поток в Android?

Используйте stop () метод класса Thread.

Используйте изменяемый логический флаг, на основе которого возвращать из метода run () класса Thread.

void run () {

if (!shouldContinue) {

return 1;

}

then rest of the thread code

}

Использовать exit () метод в методе run (), чтобы выйти и остановить поток.

Вопрос 50

Почему Android следуюет однопоточной моделе пользовательского интерфейса?

Потому что другие потоки не должны манипулировать интерфейсом.

Потому что синхронизация является дорогостоящей по сравнению с однопоточной моделью. Используя синхронизацию также можно манипулировать UI из других потоков. Но Android не следует этой модели, потому что это очень дорого с точки зрения процессорного времени.

Потому что синхронизация не возможна для интерфейса.

Потому что только поток пользовательского интерфейса может получить доступ к UI.


    Ваша оценка произведения:

Популярные книги за неделю