Чтение онлайн

ЖАНРЫ

Сборник тестов: 1500 вопросов и ответов на знание Android
Шрифт:

использовать шаблоны в методе 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

<LinearLayout android: orientation=«vertical»>

<Button android: id="@+id/Button1» />

<Button android: id="@+id/Button2» />

</LinearLayout>

Пример кода взят из макета 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

Поделиться с друзьями: