Создание приложений для Андроид в среде Eclipse. Часть 2
Рассмотрены основные моменты применения среды разработки Eclipse для создания приложений для платформы Android на примере простой игровой программы.
Прежде чем садиться за написание кода на Java, вам стоит ознакомиться с тем, как можно получить данные от пользователя. Пожалуй, наиболее простым и эффективным здесь является использование класса Scanner. Для использования объекта Scanner (как, впрочем и других объектов языка) нужно создать его экземпляр. Это можно сделать так:
Scanner scanner = new Scanner(System.in); String input = scanner.next();
Или так:
String input = (new Scanner(System.in)).next();
Объект Scanner удобен тем, что он одинаково хорошо работает как в командной строке, так и в консоли среды Eclipse, которую мы используем для создания нашего Android-приложения «Камень, ножницы, бумага».
Редактирование Java-кода в среде Eclipse
Чтобы облегчить задачу иллюстрации основ разработки приложений для Андроид в среде Eclipse и предотвратить ошибки, характерные для новивчков используем следующий простой исходный текст программы «Камень, ножницы, бумага» (конечно же, ничто не мешает вам написать собственный код), приведенный в листинге 1.
Листинг 1. Приложение «Камень, ножницы, бумага»
// // Rock_Paper_Scissors // import java.util.Scanner; import java.util.Random; public class Rock { public static void main(String[] args) { String humanPlay; //Пользователь вводит "R", "P" или "S" String computerPlay = ""; //Компьютер генерирует "R", "P" или "S" int computerInt; //Для определения выбора компьютера //генерируется случайное целое число String response; Scanner scan = new Scanner(System.in); Random generator = new Random(); //Компьютер выбирает число 0,1 или 2 computerInt = generator.nextInt(3)+1; //Сопоставим полученное случайное число с буквами R, P и S if (computerInt == 1) computerPlay = "R"; else if (computerInt == 2) computerPlay = "P"; else if (computerInt == 3) computerPlay = "S"; //Получаем входные данные от пользователя System.out.println("Привет! Играем в «Камень, ножницы, бумага»!\n" + "Введите букву\n" + "R (Камень), P (Бумага), S (Ножницы):"); humanPlay = scan.next(); //Преобразуем букву в верхний регистр, для упрощения сравнения humanPlay = humanPlay.toUpperCase(); System.out.println; //Выводим то, что "загадал" компьютер System.out.println("Компьютер выбрал " + computerPlay); //Определяем победителя (используем вложенные if'ы) if (humanPlay.equals(computerPlay)) System.out.println("Ничья!"); else if (humanPlay.equals("R")) if (computerPlay.equals("S")) System.out.println("Камень тупит ножницы. Вы выиграли!"); else if (computerPlay.equals("P")) System.out.println("Бумага оборачивает камень. Вы проиграли!"); else if (humanPlay.equals("P")) if (computerPlay.equals("S")) System.out.println("Ножницы режут бумагу. Вы проиграли!"); else if (computerPlay.equals("R")) System.out.println("Бумага оборачивает камень. Вы выиграли!"); else if (humanPlay.equals("S")) if (computerPlay.equals("P")) System.out.println("Ножницы режут бумагу. Вы выиграли!"); else if (computerPlay.equals("R")) System.out.println("Камень тупит ножницы. Вы проиграли!"); else System.out.println("Вы ввели неправильную букву.");
Добавим этот код в редактор Eclipse. Для новичка это выглядит несколько запутанно, но приводимые инструкции вам помогут. Итак, запустите Eclipse и кликните меню File > New > Java Project (рис. 1).
Рис. 1. Создание нового проекта
Когда откроется окно нового проекта, нужно будет дать ему название. Кликните Finish чтобы сохранить его и перейти в окно Package Explorer. Далее предполагается создание нового пакета, в который будут помещаться все файлы. Кликните пиктограмму New Java Package (рис. 2) чтобы вызвать диалоговое окно.
Рис. 2. Добавление нового пакета в проект
Укажите имя пакета и кликните Finish (рис. 3).
Рис. 3. Диалоговое окно New Java Package
Теперь нужно добавить Java-класс, что делается также легко, как и добавление Java-пакета (рис. 4).
Рис. 4. Создание нового Java-класса
В открывшемся диалоговом окне задайте имя новому классу и убедитесь, что опции, выделенные на рис. 5, установлены.
Рис. 5. Настройки Eclipse для нового Java-класса
После того, как вы создадите новый класс, откроется рабочее пространство редактора Eclipse, где вы можете писать текст вашей программы. В нашем примере вы должны поместить в это окно исходный код, приведенный в листинге 1. Не забудьте сохранить изменения!
Поздравляем! Вы только что закончили писать первое приложение на Java в Eclipse. Как вы могли заметить, это не так уж и сложно, тем более, что установка и настройка среды разработки Eclipse , влючая JDK и ADT, выполняется только один раз.
Создание apk-файла
Попробуем собрать и запустить нашу игру. Для этого правой кнопкой кликните на вашем проекте и в контекстном меню выберите Android Tools->Export Signed Application Package. После выбора кнопки экспорта, укажите Create new keystore и задайте название и путь, по которому хотите сохранить вашу программу. Заполните или оставьте заполненными по умолчанию прочие необходимые поля в диалоге и сохраните изменения. Если все сделано правильно, вы получите собранный и готовый к тестированию apk-файл программы для Андроид.
Тестирование приложения на виртуальном устройстве Android
Тестирование программы также важно, как и ее разработка, поскольку вы не сможете использовать приложение, если оно не запускается, работает не корректно или выбрасывает ошибки. К счастью, в Android SDK интегрированы средства тестирования и отладки, позволяющие проверить различные аспекты тестируемого приложения, причем независимо от того, используете ли вы для тестирования реальное Андроид-устройство или его эмулятор.
Применение инструментов отладки из состава ADT позволяет выполнять отладку Андроид-приложений сравнительно проще, чем с помощью других инструментов. Плюсом является то, что ADT автоматически добавляет необходимый элемент <instrumentation>
в файл описания пакета (manifest-файл).
Создание отладочного проекта для ADT в Eclipse
Запустите Eclipse, выберите в главном меню пункт File > New > Other и в выпадающем меню кликните Android Test Project, затем нажмите Next. Введите имя проекта, которое пожелаете, затем, уже в панели Test Target, укажите An Existing Android Project и в появившемся диалоге найдите сделанное вами приложение «Камень, ножницы, бумага».
Выберите целевую платформу (Android SDK platform) в панели Build Target, которая будет применяться для тестирования приложения. Кликните кнопку Finish чтобы сохранить изменения, если же она недоступна, то вам потребуется проверить и исправить возможные ошибки в указанных вами настройках.
CC-BY-CA Юдин Е.Б., 12.01.2016