Шрифт:
sendMessage .
notify .
show .
invalidateAndPost .
Тест 17
Вопрос 1
Какое из следующих утверждений определяет способ, с помощью которого BroadcastReceiver может объявить о своей заинтересованности в конкретном намерении?
Включая <intent-filter> тег внутри тега <receiver> в AndroidManifest. xml файле приложения.
Включая <intent-filter> тег внутри файла main_layout. xml.
Создавая намерение и используя его в вызове startActivity .
Путем вызова метода Intent. setAction .
Вопрос 2
Когда приложение хочет получать уведомления о наступлении определенных событий, оно может создать BroadcastReceiver и зарегистрировать его для получения нужного события. Если регистрация создается во время выполнения, какой из следующих методов можно использовать, чтобы сделать регистрацию?
Context. startActivity .
Context. registerReceiver
BroadcastReceiver. onReceive
LocalBroadcastManager. registerReceiver
Вопрос 3
Обычные трансляции гарантированно будут доставлены в приоритетном порядке.
Да
Нет
Вопрос 4
Какое из следующих утверждений не верно о работе BroadcastReceivers?
Метод оnReceive работает с повышенным приоритетом.
Метод оnReceive работает в главном потоке.
Android может убить BroadcastReceiver как только метод оnReceive возвращает.
В оnReceive , BroadcastReceiver может вызывать асинхронные методы, такие как метод startActivityForResult .
Вопрос 5
Упорядоченные трансляции доставляются в порядке, в котором BroadcastReceiver зарегистрированы – то есть, первый пришел, первый обслужен.
Да
Нет
Вопрос 6
Оба метода sendOrderedBroadcast, принимают строку разрешения в качестве параметра. Какова цель этого параметра?
Он определяет разрешение, данное отправителем трансляции.
Он определяет разрешение, которое должно иметься у получателя трансляции.
Он определяет разрешение, связанное с намерением, которое транслируется.
Он определяет разрешение, которое должно быть предоставлено отправителю пользователем устройства перед трансляцией, которая может быть отправлена.
Вопрос 7
Прикрепленные Intent кэшируются Android и могут быть доставлены BroadcastReceiver, которые не были зарегистрированы для получения этих намерений в то время как они первоначально транслировались. Как может BroadcastReceiver определить, намерение, которое он получает, только что было транслировано или было транслировано в прошлом, но только сейчас доставлено?
Проверьте EXTRA_BROADCAST_TIME, которое доставляется с намерением.
Используйте метод isInitialStickyBroadcast .
Установите высокий приоритет для IntentFilter, используемый для регистрации BroadcastReceiver.
Используйте метод isOrderedBroadcast .
Вопрос 8
В Java, потоки, работающие в одном и том же процессе используют общую динамически выделяемую память.
Да
Нет
Вопрос 9
В Java, когда поток создан, он будет немедленно выполнять его метод run .
Да
Нет
Вопрос 10
Если ваша активность хочет обновить свою иерархию представлений из фонового потока, она может сделать это, пока она получает блокировку на корневой элемент иерархии представлений.
Да
Нет
Вопрос 11
Почему приложение должно избегать выполнения интенсивных вычислений и работы в главном потоке?
Оно не должно избегать этого. Некоторые разработчики не хотят, но это только личный выбор.
Вычисления можно выполнять в основном потоке, если вы используете специальные механизмы, такие как Renderscript.
Вычисления могут блокировать поток пользовательского интерфейса, что приводит к тому, что приложение не отвечает.
Это тратит впустую ограниченный заряд батареи.
Вопрос 12
Если ваша активность создает свою иерархию представлений при вызове метода оnCreate , как вы думаете, в каком потоке метод оnCreate был вызван?
Вы должны использовать LogCat, чтобы распечатать ID потока.
Вы должны смотреть на ваш код, чтобы увидеть, если вызов пришел от одного из ваших потоков или из одного из потоков системы.