использование возможностей смартфона в приложениях

Использование возможностей смартфона в приложениях

Презентацию к данной лекции можно скачать здесь.

9.1 Введение

9.2 Отличительные особенности смартфонов

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

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

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

9.3 Сенсорное (touch) управление

Источник

Презентация была опубликована 5 лет назад пользователемГавриил Базилевский

Похожие презентации

Презентация на тему: » Использование возможностей смартфона в приложениях Лекция 5 Введение в разработку приложений для смартфонов на ОС Android.» — Транскрипт:

1 Использование возможностей смартфона в приложениях Лекция 5 Введение в разработку приложений для смартфонов на ОС Android

2 Содержание Отличительные особенности смартфонов Сенсорное (touch) управление Работа с мультимедиа Использование встроенной камеры Взаимодействие с системами позиционирования Другие сенсоры и датчики Введение в разработку приложений для смартфонов на ОС Android. Лекция 5. Тема «Использование возможностей смартфона в приложениях » 2

3 Отличительные особенности смартфонов 3 Введение в разработку приложений для смартфонов на ОС Android. Лекция 5. Тема «Использование возможностей смартфона в приложениях «

5 Экран смартфона 5 Введение в разработку приложений для смартфонов на ОС Android. Лекция 5. Тема «Использование возможностей смартфона в приложениях » занимает всю площадь передней панели устройства высокое разрешение чувствителен к прикосновения м не физические кнопки, а touch- интерфейс

6 Touch-интерфейс интерфейс, основанный на виртуальных элементах управления выбор выполняется простым касанием жестами(gestures) если точек касания несколько (т. е. используется несколько пальцев), интерфейс называется multi-touch 6 Введение в разработку приложений для смартфонов на ОС Android. Лекция 5. Тема «Использование возможностей смартфона в приложениях «

7 Смартфон – мультимедийный центр 7 Введение в разработку приложений для смартфонов на ОС Android. Лекция 5. Тема «Использование возможностей смартфона в приложениях » Аудио плеер Видео плеер Камера для фотоснимков и видеосъемки Набор библиотек для обработки мультимедиа Media Framework

8 Смартфон – GPS навигатор 8 Введение в разработку приложений для смартфонов на ОС Android. Лекция 5. Тема «Использование возможностей смартфона в приложениях » GPS-модуль (большинство моделей) Комбинированный модуль GPS/ГЛОНАСС (некоторые модели)

9 Смартфон – личный тренер отслеживает параметры человека (спортсмена) во время бега, езды на велосипеде, ходьбы на лыжах и т. д. выдает полную статистику маршрута на основе спутников GPS: точное время в пути расстояние, подъемы/спуски среднюю скорость потраченные калории и т. д. 9 Введение в разработку приложений для смартфонов на ОС Android. Лекция 5. Тема «Использование возможностей смартфона в приложениях «

10 Смартфон «взаимодействует» со средой 10 Введение в разработку приложений для смартфонов на ОС Android. Лекция 5. Тема «Использование возможностей смартфона в приложениях » Датчик приближения отключает подсветку и блокирует экран при приближении телефона к уху во время разговора Акселерометр реагирует на смену ориентации экрана: в играх, особенно симуляторах; в качестве шагомера

11 Смартфон «взаимодействует» со средой 11 Введение в разработку приложений для смартфонов на ОС Android. Лекция 5. Тема «Использование возможностей смартфона в приложениях » Датчик освещенности регулирует яркость экрана Гироскоп позиционирует устройство в пространстве

12 Сенсорное (touch) управление 12 Введение в разработку приложений для смартфонов на ОС Android. Лекция 5. Тема «Использование возможностей смартфона в приложениях «

13 Сенсорное управление подразумевает использование сенсорных жестов для взаимодействия с приложением 13 Введение в разработку приложений для смартфонов на ОС Android. Лекция 5. Тема «Использование возможностей смартфона в приложениях «

14 Сенсорное управление 14 Введение в разработку приложений для смартфонов на ОС Android. Лекция 5. Тема «Использование возможностей смартфона в приложениях » Касание (touch) Использование: Запуск действия по умолчанию для выбранного элемента Выполнение: нажать, отпустить

15 Сенсорное управление 15 Введение в разработку приложений для смартфонов на ОС Android. Лекция 5. Тема «Использование возможностей смартфона в приложениях » Длинное касание (long touch) Использование: Выбор элемента. Не стоит использовать этот жест для вызова контекстного меню Выполнение: нажать, ждать, отпустить

16 Сенсорное управление 16 Введение в разработку приложений для смартфонов на ОС Android. Лекция 5. Тема «Использование возможностей смартфона в приложениях » Скольжение или перетаскивание (swipe or drag) Использование: Прокрутка содержимого или навигация между элементами интерфейса одного уровня иерархии Выполнение: нажать, переместить, отпустить

17 Сенсорное управление 17 Введение в разработку приложений для смартфонов на ОС Android. Лекция 5. Тема «Использование возможностей смартфона в приложениях » Скольжение после длинного касания (long press drag) Использование: Перегруппировка данных или перемещение в контейнер Выполнение: длительное касание, переместить, отпустить

18 Сенсорное управление 18 Введение в разработку приложений для смартфонов на ОС Android. Лекция 5. Тема «Использование возможностей смартфона в приложениях » Двойное касание (double touch) Использование: Увеличение масштаба, выделение текста Выполнение: быстрая последовательность двух касаний

19 Сенсорное управление 19 Введение в разработку приложений для смартфонов на ОС Android. Лекция 5. Тема «Использование возможностей смартфона в приложениях » Перетаскивание с двойным касанием (double touch drag) Использование: Изменение размеров: расширение или сужение по отношению к центру жеста Выполнение: касание, следующее за двойным касанием со смещением: смещение вверх уменьшает размер содержимого смещение вниз увеличивает размер содержимого

20 Сенсорное управление 20 Введение в разработку приложений для смартфонов на ОС Android. Лекция 5. Тема «Использование возможностей смартфона в приложениях » Сведение пальцев (pinch close) Использование: уменьшение содержимого, сворачивание Выполнение: касание экрана двумя пальцами, свести, отпустить

21 Сенсорное управление 21 Введение в разработку приложений для смартфонов на ОС Android. Лекция 5. Тема «Использование возможностей смартфона в приложениях » Разведение пальцев (pinch open) Использование: увеличение содержимого, разворачивание. Выполнение: касание экрана двумя пальцами, развести, отпустить

22 Процесс распознавания жеста сбор данных распознавание жеста 22 Введение в разработку приложений для смартфонов на ОС Android. Лекция 5. Тема «Использование возможностей смартфона в приложениях » Приложение управляется с помощью сенсорных жестов, если оно способно распознать, что под набором касаний экрана скрывается некоторый жест и выполнить соответствующее действие.

23 Процесс распознавания жеста. 1. Сбор данных о сенсорных событиях. Основные действия пользователя при взаимодействии с сенсорным экраном: касание экрана пальцем перемещение пальца по экрану отпускание пальца сенсорные события (touch-события) 23 Введение в разработку приложений для смартфонов на ОС Android. Лекция 5. Тема «Использование возможностей смартфона в приложениях «

24 Сенсорные события (touch-события) Жест начинается при первом касании экрана продолжается пока система отслеживает положение пальцев пользователя заканчивается получением финального события, состоящего в том, что ни один палец не касается экрана 24 Введение в разработку приложений для смартфонов на ОС Android. Лекция 5. Тема «Использование возможностей смартфона в приложениях «

25 Сенсорные события (touch-события) инициируют вызов метода onTouchEvent() обрабатываются, если этот метод реализован в классе активности или некоторого компонента, иначе событие просто игнорируется 25 Введение в разработку приложений для смартфонов на ОС Android. Лекция 5. Тема «Использование возможностей смартфона в приложениях «

26 Сенсорные события (touch-события) Объект MotionEvent, передаваемый в метод onTouchEvent(), предоставляет детали каждого взаимодействия 26 Введение в разработку приложений для смартфонов на ОС Android. Лекция 5. Тема «Использование возможностей смартфона в приложениях «

27 Константы класса MotionEvent, определяющие сенсорные события MotionEvent.ACTION_DOWN касание экрана пальцем, начальная точка для любого сенсорного события или жеста MotionEvent.ACTION_MOVE перемещение пальца по экрану MotionEvent.ACTION_UP поднятие пальца от экрана 27 Введение в разработку приложений для смартфонов на ОС Android. Лекция 5. Тема «Использование возможностей смартфона в приложениях «

28 Процесс распознавания жеста. 2. Обработка событий для распознавания жеста своя собственная обработка событий можно работать с произвольными жестами стандартные жесты без обработки отдельных сенсорных событий класс GestureDetector 28 Введение в разработку приложений для смартфонов на ОС Android. Лекция 5. Тема «Использование возможностей смартфона в приложениях «

29 поддерживает жесты: onDown(), onLongPress(), onFling() и т. д. может использоваться в связке с методом onTouchEvent() 29 Введение в разработку приложений для смартфонов на ОС Android. Лекция 5. Тема «Использование возможностей смартфона в приложениях » Класс GestureDetector для распознавания стандартных жестов

30 API для работы с жестами предоставляется Android, начиная с версии 1.6 располагается в пакете android.gesture позволяет сохранять, загружать, создавать и распознавать жесты 30 Введение в разработку приложений для смартфонов на ОС Android. Лекция 5. Тема «Использование возможностей смартфона в приложениях «

31 Предустановленное приложение Gesture Builder по созданию жестов содержится в Виртуальном устройстве Android (AVD) созданные жесты сохраняются на SD карте виртуального устройства созданные жесты могут быть добавлены в приложение в виде бинарного ресурса 31 Введение в разработку приложений для смартфонов на ОС Android. Лекция 5. Тема «Использование возможностей смартфона в приложениях «

32 Виртуальное устройство Android (AVD) Для распознавания жестов необходимо добавить компонент GestureOverlayView в XML файл активности: как обычный элемент графического интерфейса пользователя (встроен в компоновку, например RelativeLayout) как прозрачный слой поверх других компонентов (как корневой элемент в XML файле активности) 32 Введение в разработку приложений для смартфонов на ОС Android. Лекция 5. Тема «Использование возможностей смартфона в приложениях «

33 Виртуальное устройство Android (AVD) При использовании собственных жестов в приложении необходимо реализовать интерфейс OnGesturePerformedListener и его метод onGesturePerformed() 33 Введение в разработку приложений для смартфонов на ОС Android. Лекция 5. Тема «Использование возможностей смартфона в приложениях «

34 Работа с мультимедиа 34 Введение в разработку приложений для смартфонов на ОС Android. Лекция 5. Тема «Использование возможностей смартфона в приложениях «

35 Мультимедиа библиотека Android позволяет легко использовать в приложениях аудио, видео и изображения: из медиа файлов сохраненных как ресурсы приложения (raw ресурсы) из файлов, расположенных в файловой системе из потока данных, получаемого через сетевое соединение НО! невозможно воспроизводить аудио во время звонка 35 Введение в разработку приложений для смартфонов на ОС Android. Лекция 5. Тема «Использование возможностей смартфона в приложениях «

36 Мультимедиа библиотека Android Для воспроизведения аудио и видео Android предоставляет класс MediaPlayer При работе с аудиоконтентом можно воспроизводить необработанные данные (проигрывание динамически генерируемого аудио) Для записи аудио и видео Android предоставляет класс MediaRecorder 36 Введение в разработку приложений для смартфонов на ОС Android. Лекция 5. Тема «Использование возможностей смартфона в приложениях «

37 Диаграмма жизненного цикла экземпляра класса MediaPlayer Овалы состояния объекта MediaPlayer Дуги вызовы каких методов необходимо выполнить, чтобы сменить состояние объекта MediaPlayer Дуги с одной стрелкой вызовы синхронных методов Дуги с двумя стрелками вызовы асинхронных методов Введение в разработку приложений для смартфонов на ОС Android. Лекция 5. Тема «Использование возможностей смартфона в приложениях » 37

38 Диаграмма жизненного цикла экземпляра класса MediaPlayer Введение в разработку приложений для смартфонов на ОС Android. Лекция 5. Тема «Использование возможностей смартфона в приложениях » 38

41 Состояния MediaPlayer запущен (Started) – выполняется воспроизведение медиа-контента (метод start()) приостановлен (Paused) – воспроизведение приостановлено (метод pause()) остановлен (Stopped) – воспроизведение остановлено (метод stop()) Введение в разработку приложений для смартфонов на ОС Android. Лекция 5. Тема «Использование возможностей смартфона в приложениях » 41

42 Состояния MediaPlayer воспроизведение завершено (Playback Completed) – достигнут конец воспроизводимого содержания (реакции на конец воспроизводимого материала; срабатывание метода onCompleted() интерфейса-слушателя OnCompitionListener) метод seekTo() позволяет поменять место воспроизведения конец (End) конец жизненного цикла MediaPlayer (метод release()) Введение в разработку приложений для смартфонов на ОС Android. Лекция 5. Тема «Использование возможностей смартфона в приложениях » 42

43 Диаграмма жизненного цикла экземпляра класса MediaRecorder Овалы состояния объекта MediaRecorder Дуги вызовы каких методов необходимо выполнить, чтобы сменить состояние объекта MediaRecorder Дуги с одной стрелкой вызовы синхронных методов Дуги с двумя стрелками вызовы асинхронных методов Введение в разработку приложений для смартфонов на ОС Android. Лекция 5. Тема «Использование возможностей смартфона в приложениях » 43

44 Диаграмма жизненного цикла экземпляра класса MediaRecorder Введение в разработку приложений для смартфонов на ОС Android. Лекция 5. Тема «Использование возможностей смартфона в приложениях » 44

45 Состояния MediaRecorder начальное (Initial) – создан объект класса MediaRecover (с помощью оператора new или вызова метода reset()) инициализирован (Initialized) – объект MediaRecover готов к использованию (метод setAudioSource() или setVideoSource()) Введение в разработку приложений для смартфонов на ОС Android. Лекция 5. Тема «Использование возможностей смартфона в приложениях » 45

46 Состояния MediaRecorder сконфигурирован приемник данных для записи (Data Source Configured) – задаются основные свойства приемника данных, состояние (метод setOutputFormat(), для настройки свойств: setAudioEncoder(), setVideoEncoder(), setOutputFile(), setVideoSize(), setVideoFrameRate(), setPreviewDisplay()) Введение в разработку приложений для смартфонов на ОС Android. Лекция 5. Тема «Использование возможностей смартфона в приложениях » 46

47 Состояния MediaRecorder готов (Prepared) – состояние готовности к записи (метод prepare()) записывает (Recording) – идет запись (метод start()) освобожден (Released) – запись завершена, все ресурсы освобождены (метод release()) Введение в разработку приложений для смартфонов на ОС Android. Лекция 5. Тема «Использование возможностей смартфона в приложениях » 47

48 Актуальная информация MediaRecorder.html MediaRecorder.html Введение в разработку приложений для смартфонов на ОС Android. Лекция 5. Тема «Использование возможностей смартфона в приложениях » 48

49 Использование встроенной камеры 49 Введение в разработку приложений для смартфонов на ОС Android. Лекция 5. Тема «Использование возможностей смартфона в приложениях «

50 Поддержка камеры Платформа Android позволяет приложениям получать фотографии и записывать видео Для решения этих задач, существует два способа: непосредственное обращение к камере использование намерений (Intent) для вызова существующего приложения Введение в разработку приложений для смартфонов на ОС Android. Лекция 5. Тема «Использование возможностей смартфона в приложениях » 50

51 Классы объектов по работе с камерой Camera класс, реализующий управление камерами устройства (для получения фотографий или записи видео) SurfaceView класс, используемый для предоставления пользователю возможности предварительного просмотра MediaRecorder – класс, используемый для записи видео с камеры Введение в разработку приложений для смартфонов на ОС Android. Лекция 5. Тема «Использование возможностей смартфона в приложениях » 51

52 Классы объектов по работе с камерой Intent – класс, содержащий абстрактное описание выполняемой операции, оно передается системе Android, а ОС сама находит и запускает необходимое приложение и возвращает результат его работы Введение в разработку приложений для смартфонов на ОС Android. Лекция 5. Тема «Использование возможностей смартфона в приложениях » 52

53 Типы намерений по работе с камерой MediaStore.ACTION_IMAGE_CAPTURE – для запроса на выполнение фотоснимков MediaStore.ACTION_VIDEO_CAPTURE – для запроса на запись видео Введение в разработку приложений для смартфонов на ОС Android. Лекция 5. Тема «Использование возможностей смартфона в приложениях » 53

54 Взаимодействие с системами позиционирования 54 Введение в разработку приложений для смартфонов на ОС Android. Лекция 5. Тема «Использование возможностей смартфона в приложениях «

55 Системы позиционирования позволяют определить местоположение в некоторой системе координат (обычно широта и долгота) Введение в разработку приложений для смартфонов на ОС Android. Лекция 5. Тема «Использование возможностей смартфона в приложениях » 55

57 Системы позиционирования мобильного телефона (смартфона) Радиусы сот варьируются от активности сетевой трафика района Результаты приближенные («плюс-минус трамвайная остановка») Введение в разработку приложений для смартфонов на ОС Android. Лекция 5. Тема «Использование возможностей смартфона в приложениях » 57

58 Если смартфон в зоне действия более, чем одной сотовой вышки, возможно выполнение триангуляции его местоположения сотовая вышка может определить, с какого направления приходит сигнал – точное местоположение без установки дополнительного оборудования Введение в разработку приложений для смартфонов на ОС Android. Лекция 5. Тема «Использование возможностей смартфона в приложениях » 58 Системы позиционирования мобильного телефона (смартфона)

60 Системы позиционирования смартфона Многие смартфоны поддерживают обе системы GPS – надежность и точность определения координат, прежде всего, в городских условиях Есть возможность использования сигналов WiFi, Bluetooth и NFC, а также внутреннего сенсора для более точной геолокации, особенно внутри помещений Введение в разработку приложений для смартфонов на ОС Android. Лекция 5. Тема «Использование возможностей смартфона в приложениях » 60

62 Приложения по учету текущего местоположения под Android спутниковые системы глобального позиционирования (GPS ) определение местоположения в сети (с помощью Network Location Provider) Введение в разработку приложений для смартфонов на ОС Android. Лекция 5. Тема «Использование возможностей смартфона в приложениях » 62

63 Спутниковые системы глобального позиционирования (GPS ) GPS дает более точные результаты НО плохо работает в помещениях (чаще не работает) сильно расходует заряд батареи медленно определяет координаты Введение в разработку приложений для смартфонов на ОС Android. Лекция 5. Тема «Использование возможностей смартфона в приложениях » 63

64 Network Location Provider определяет координаты, используя сигналы сотовых вышек и WiFi, может работать как на улице, так и внутри помещений более экономно расходует заряд батареи работает быстрее по сравнению с GPS Введение в разработку приложений для смартфонов на ОС Android. Лекция 5. Тема «Использование возможностей смартфона в приложениях » 64

66 Google Maps Android API загрузка данных отображение карт сенсорные жесты на карте добавление маркеров, многоугольников и внешних прозрачных слоев изменение пользовательского представления отдельных участков карты Введение в разработку приложений для смартфонов на ОС Android. Лекция 5. Тема «Использование возможностей смартфона в приложениях » 66

67 Google Maps Android API Ключевой класс MapView отображает карту с данными полученными из сервиса Google Maps предоставляет все элементы пользовательского интерфейса, необходимые для управления картой Введение в разработку приложений для смартфонов на ОС Android. Лекция 5. Тема «Использование возможностей смартфона в приложениях » 67

68 Google Maps Android API Когда MapView в фокусе Он перехватывает нажатия клавиш и сенсорные жесты для выполнения автоматического перемещения и изменения масштаба карты Он управляет сетевыми запросами для получения дополнительных фрагментов карты Введение в разработку приложений для смартфонов на ОС Android. Лекция 5. Тема «Использование возможностей смартфона в приложениях » 68

69 Google Maps Android API не является частью платформы Android доступен на любом устройстве с Google Play Store, работающем, начиная с Android 2.2, через Google Play services для интеграции в приложения, в Android SDK необходимо установить библиотеку Google Play services Введение в разработку приложений для смартфонов на ОС Android. Лекция 5. Тема «Использование возможностей смартфона в приложениях » 69

70 Другие сенсоры и датчики 70 Введение в разработку приложений для смартфонов на ОС Android. Лекция 5. Тема «Использование возможностей смартфона в приложениях «

71 Сенсоры могут быть полезны если необходимо регистрировать положение и перемещения повороты устройства в трехмерном пространстве изменения параметров окружающей среды Введение в разработку приложений для смартфонов на ОС Android. Лекция 5. Тема «Использование возможностей смартфона в приложениях » 71

76 Какие типы датчиков поддерживаются Android можно узнать по ссылке: rs/sensors_overview.html rs/sensors_overview.html Введение в разработку приложений для смартфонов на ОС Android. Лекция 5. Тема «Использование возможностей смартфона в приложениях » 76

77 Набор классов и интерфейсов для работы с сенсорами является частью пакета android.hardware позволяет: определять какие сенсоры доступны на устройстве определять индивидуальные возможности сенсоров, такие как максимальное значение, производитель, требования к потребляемой энергии и разрешения Введение в разработку приложений для смартфонов на ОС Android. Лекция 5. Тема «Использование возможностей смартфона в приложениях » 77

78 Набор классов и интерфейсов для работы с сенсорами позволяет собирать данные с сенсоров и определять минимальную частоту, с которой выполняется сбор данных подключать и отключать слушателей событий от датчиков, события состоят в изменении значений датчиков Введение в разработку приложений для смартфонов на ОС Android. Лекция 5. Тема «Использование возможностей смартфона в приложениях » 78

79 Классы и интерфейсы по работе с датчиками. SensorManager создает экземпляр сервиса, связанного с сенсором предоставляет различные методы для доступа и составления списка сенсоров, подключения и отключения слушателей событий от сенсоров, сбора информации содержит константы для задания точности сенсора, частоты получения данных и настройки датчиков Введение в разработку приложений для смартфонов на ОС Android. Лекция 5. Тема «Использование возможностей смартфона в приложениях » 79

82 Подробнее об использовании сенсоров можно узнать по ссылке: sensors_overview.html Введение в разработку приложений для смартфонов на ОС Android. Лекция 5. Тема «Использование возможностей смартфона в приложениях » 82

83 Использованные источники Зигард Медникс, Лайрд Дорнин, Дж. Блэйк Мик, Масуми Накамура Программирование под Android. – СПб.: Питер, e/tactile-interaction/ e/tactile-interaction/ Введение в разработку приложений для смартфонов на ОС Android. Лекция 5. Тема «Использование возможностей смартфона в приложениях » 83

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *