Главная » Разработка для Android » Управление вибрацией устройства

0

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

Чтобы управлять вибрацией устройства, ваше приложение должно иметь полномочие VIBRATE. Добавьте его в манифест, как показано в следующем фрагменте  кода:

<uses-permission android:name="android.permission.VIBRATE"/>

Управляет вибрацией  устройства  Сервис Vibrator, доступ к которому можно получить  через метод getSystemService, как показано  в листин- ге 14.6.

Листинг 14.6. Управление вибрацией  устройства

String vibratorService = Context.VIBRATOR_SERVICE;

Vibrator vibrator = (Vibrator)getSystemService(vibratorService);

Вызовите метод vibrate, чтобы заставить устройство вибрировать; вы можете передать в качестве параметров продолжительность вибрации  или шаблон ее воспроизведения (последовательность вибрация/пауза), а также необязательный индекс, указывающий на позицию, с которой следует на- чать повторение  этого шаблона. Оба эти подхода показаны  в следующем дополнении к листингу 14.6:

long[] pattern = {1000, 2000, 4000, 8000, 16000 }; vibrator.vibrate(pattern, 0); // Выполнить шаблон воспроизведения вибрации. vibrator.vibrate(1000); // Вибрировать на протяжении одной секунды.

Чтобы отменить вибрацию, вызовите метод cancel. При выходе из при- ложения  все вибрации, инициированные им, будут отменены.

Резюме

В этой главе вы научились  использовать объект SensorManager, по- зволяя  своим приложениям реагировать на изменения окружающего мира. Познакомились с датчиками,  доступными  на платформе Android, и узнали,  как отслеживать и интерпретировать их показания с помощью SensorEventListener.

Затем  вы более подробно изучили  акселерометр, датчики  ориентации и магнитного поля; использовали объекты Sensor для определения ускоре- ния и положения устройства в пространстве. При этом создали измеритель перегрузок и автогоризонт.

Вы также узнали:

какие датчики доступны для приложений, выполняющихся на плат- форме Android;

как изменить систему отсчета при определении положения устройства в пространстве;

состав и назначение  объектов  SensorEvent, возвращаемых каждым датчиком;

как использовать вибрацию  устройства  в качестве физического от- клика для событий внутри приложения.

В последней главе описаны некоторые продвинутые возможности плат- формы Android. Вы узнаете больше о безопасности, о том, как использовать Сервис WakeLock и язык AIDL для облегчения межпроцессного взаимодей- ствия, о пользовательском интерфейсе и графических возможностях. Позна- комитесь с библиотеками Android для преобразования текста в речь, изучите продвинутые механизмы для поддержки анимации и рисования с помощью объекта  Canvas. И в завершение  мы поговорим  об объекте  SurfaceView и опишем возможности ввода информации через сенсорный экран.

Источник: Майер P. Android 2 : программирование приложений для планшетных компьютеров и смартфонов : [пер. с англ. ] / Рето Майер. — М. : Эксмо, 2011. — 672 с. — (Мировой компьютерный бестселлер).

По теме:

  • Комментарии