Северный (Арктический) федеральный университет им. М.В. Ломоносова
Опубликован: 10.04.2014 | Доступ: свободный | Студентов: 6988 / 1370 | Длительность: 14:18:00
Специальности: Программист
Самостоятельная работа 6:

Принципы работы c жестами вводимыми пользователями

Аннотация: Разработка приложения, помогающего понять принципы работы c жестами вводимыми пользователями.

Цель лабораторной работы:

Разработка приложения, помогающего понять принципы работы c жестами вводимыми пользователями.

Задачи лабораторной работы:

  • создать набор жестов
  • использовать созданные жесты в приложении

11.1 Введение

Начиная с версии 1.6, Android предоставляет API для работы с жестами, который располагается в пакете android.gesture и позволяет сохранять, загружать, создавать и распознавать жесты.

В данной работе рассмотрим процесс создания набора жестов, для создания жестов будем использовать приложение Gesture Builder, которое предустановлено на виртуальные устройства Android (AVD), начиная с версии 1.6.

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

11.2 Создание набора жестов

Для начала создадим новое приложение.

Далее запустим эмулятор и используем приложение Gesture Builder для создания жестов "1", "2" и "S". Жест всегда связан с именем, но имя не обязательно должно быть уникальным, в действительности, для повышения точности в распознавании жеста рекомендуется сохранять несколько жестов с одним и тем же именем.

На рис. 11.1 можно увидеть приложение Gesture Builder в работе, чтобы добавить жест, необходимо нажать на кнопку Add gesture, в свободном пространстве изобразить жест (обычно он рисуется желтым цветом), в поле ввода задать имя жеста. Результат последовательного добавления жестов можно увидеть на рис. 11.2.

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

Создание жестов с помощью приложения Gesture Builder

увеличить изображение
Рис. 11.1. Создание жестов с помощью приложения Gesture Builder
Набор жестов, созданных в приложении Gesture Builder

увеличить изображение
Рис. 11.2. Набор жестов, созданных в приложении Gesture Builder

Комментарий: Gesture Builder может сообщить, что ему некуда сохранять жесты, в этом случае необходимо запустить эмулятор с образом SD карты.

Сначала образ нужно создать с помощью утилиты mksdcard (расположена в папке <AndrSDK>/sdk/tools, где <AndrSDK> - путь, куда установлен Android SDK). В командной строке напишем:

mksdcard -l mySdCard 64M gesture.img
    

Следующим шагом будет создать и запустить эмулятор с образом gesture.img, для этого зайдем в папку <AndrSDK>/sdk/tools и выполним команду:

emulator -avd nameEmulator -sdcard gestures.img
    

nameEmulator - имя, которое присвоено эмулятору при создании.

Интересная статья на эту тему по ссылке: http://habrahabr.ru/post/120016/

Каждый раз, когда мы создаем или редактируем жесты с помощью Gesture Builder, создается файл gestures на SD карте эмулятора. Необходимо импортировать этот файл в директорию res/raw/, созданного проекта, в котором планируем использовать жесты.

Расположение файла gestures

увеличить изображение
Рис. 11.3. Расположение файла gestures

Самый простой способ импортировать жесты в проект заключается использовании вкладки File Explorer в компоновке (perspective) DDMS. (Если компоновки DDMS нет найти ее можно следующим образом: Window->Open Perspective->Other...->DDMS. Если вкладки File Explorer нет, можно добавить: Window-> Show View-> File Explorer). На вкладке File Explorer найти директорию sdcard/ (в нашем случае оказалась директория storage/sdcard/, имеет смысл при создании жестов обратить внимание в какую директорию Gesture Builder их сохраняет). На рис. 11.3 показана вкладка File Explorer в компоновке DDMS.

Чтобы скопировать файл жестов с эмулятора в проект, необходимо выбрать его и нажать кнопку "Pull a file from the device", выделенную на рис. 11.3 красным подобием окружности. Откроется диалог с предложением выбрать папку, в которую необходимо скопировать жесты, здесь надо найти папку проекта, в ней папку res/raw/ (если папки raw/ нет, ее необходимо создать) и нажать кнопку Сохранить. Теперь жесты есть в нашем проекте и их можно использовать.

Марат Нуриджанян
Марат Нуриджанян

Пример: Скачать среду можно с сайта для разработчиков Android (http://developer.android.com/sdk/index.html).

Там скачать можно только Android Studio

Владимир Каункин
Владимир Каункин

В самостоятельной работе 2 в примере решения задания некорректно загадывается число (в двух местах), выбирая случайное целое число из диапазона [0, 99] вместо [1, 100], как того требует условие. Кроме того, загадывание числа всё таки лучше вынести в отдельный метод, как мне кажется.