Урок 3. Создание AVD. Первое приложение. Структура Android-проекта.
Для того, чтобы тестировать приложения, нам понадобится Android Virtual Device (AVD). Это эмулятор Android-смартфона, на который Eclipse сможет устанавливать, созданные нами приложения, и запускать их там. Давайте его создадим.
Запускаем Eclipse
Идем в меню Windows > Android SDK and AVD Manager (в более свежих версиях - Android AVD Manager)
Слева выбираем Virtual Devices
Жмем кнопку New
В списке Target представлены платформы Android различных версий. Мы их закачали на прошлом уроке последним шагом. Разницу между ними можно посмотреть здесь. Слева выбираете нужную версию и смотрите информацию по ней.
Вернемся в Eclipse. Давайте выберем из списка платформу 2.3.3 (API Level 10). Соответственно имя зададим - AVD_233. Также укажем размер SDCard = 100 и режим экрана HVGA.
Жмем Create AVD, и закрываем AVD Manager.
Теперь наконец-то мы можем создать наше первое приложение и посмотреть как оно работает.
Вариантов визарда создания проекта несколько, ибо гугл их меняет постоянно! Ищите подходящий вам. Они отсортированы по дате, сначала самые свежие.
Вариант от 11.12.2012
В Eclipse идем в меню File > New > Project
Выбираем тип проекта - Android > Android Application Project, жмем Next
Появилось окно создания проекта.
Давайте заполнять.
Начнем с Project Name – это имя проекта, которое будет видно в общем списке проектов слева. Т.к. проектов у нас будет много, предлагаю придумать префикс для названий. Так будет проще к ним возвращаться, и они будут красиво и удобно структурированы.
Префикс может быть таким: P<номер урока(000)><номер проекта в уроке(0)> . На номер урока выделим три цифры, на номер проекта – одну. Добавим к префиксу некое смысловое название (OurFirstProject) и получим имя нашего первого проекта в третьем уроке - P0031_OurFirstProject.
Application name – непосредственно имя программы, которое будет отображаться в списке приложений в смартфоне. Можно брать имя проекта без префикса
Package name – это понятие из Java, подробно можно посмотреть здесь. Вкратце – это префикс для имени классов нашего приложения. Я буду использовать ru.startandroid.develop.<имя приложения>
Minimum Required SDK определяет минимальную версию Android, на которой запустится приложение. Выберем ту же, что и при создании AVD – т.е. 2.3.3.
Compile With определяет, возможности какой версии Android будет использовать приложение. Здесь также укажем - 2.3.3.
Target SDK определяет максимальную версию Android, на которой вы тестировали приложение. Это нужно для режимов совместимости. Здесь также укажем - 2.3.3.
Theme пока не указываем, выберите None.
Жмем Next.
Из галок оставляете только
Create Activity - после создания проекта сразу будет создано Activity, чтобы нам вручную не создавать.
Create Project in Workspace. Проект будет создан и сохранен в дефолтном Workspace.
Жмем Next.
Выбираем BlankActivity
Жмем Next
Здесь убедимся, что в поле Activity Name указано MainActivity, а в поле Layout Name укажем main. Navigation Type - None.
Жмем Finish.
Проект создан.
UPD от 10.07.2012 На днях гугл существенно обновил визард нового проекта.
Здесь вы можете посмотреть подробно, какие возможности дает новый визард.
Вариант от 10.07.2012
В Eclipse идем в меню File > New > Project
Выбираем тип проекта - Android > Android Application Project, жмем Next
Появилось окно создания проекта.
Давайте заполнять.
Начнем с Project Name – это имя проекта, которое будет видно в общем списке проектов слева. Т.к. проектов у нас будет много, предлагаю придумать префикс для названий. Так будет проще к ним возвращаться, и они будут красиво и удобно структурированы.
Префикс может быть таким: P<номер урока(000)><номер проекта в уроке(0)> . На номер урока выделим три цифры, на номер проекта – одну. Добавим к префиксу некое смысловое название (OurFirstProject) и получим имя нашего первого проекта в третьем уроке - P0031_OurFirstProject.
Application name – непосредственно имя программы, которое будет отображаться в списке приложений в смартфоне. Можно брать имя проекта без префикса
Package name – это понятие из Java, подробно можно посмотреть здесь. Вкратце – это префикс для имени классов нашего приложения. Я буду использовать ru.startandroid.develop.<имя приложения>
Build SDK определяет, возможности какой версии Android будет использовать приложение. Выберем ту же, что и при создании AVD – т.е. 2.3.3.
Minimum Required SDK определяет минимальную версию Android, на которой запустится приложение. Можно сделать ее равной Build SDK - 2.3.3.
Из галок оставляете только Create Project in Workspace. Проект будет создан и сохранен в дефолтном Workspace.
Жмем Next.
Открывается экран создания Activity.
Здесь выбираем BlankActivity и жмем Next.
Здесь убедимся, что в поле Activity Name указано MainActivity, а в поле Layout Name укажем main. Остальные поля не трогаем.
Жмем Finish.
Проект создан.
Старый вариант.
В Eclipse идем в меню File > New > Project
Выбираем тип проекта - Android > Android Project, жмем Next
Появилось окно создания проекта. (В последующих версиях это окно разделено на три разных окна)
Давайте заполнять.
Project Name – имя проекта, которое будет видно в общем списке проектов слева. Т.к. проектов у нас будет много, предлагаю придумать префикс для названий. Так будет проще к ним возвращаться, и они будут красиво и удобно структурированы.
Префикс может быть таким: P<номер урока(000)><номер проекта в уроке(0)> . На номер урока выделим три цифры, на номер проекта – одну. Добавим к префиксу некое смысловое название (OurFirstProject) и получим имя нашего первого проекта в третьем уроке - P0031_OurFirstProject.
Build Target определяет возможности какой версии Android будет использовать приложение. Выберем ту же, что и при создании AVD – т.е. 2.3.3.
Application name – непосредственно имя программы, которое будет отображаться в списке приложений в смартфоне. Можно брать имя проекта без префикса
Package name – это понятие из Java, подробно можно посмотреть здесь. Вкратце – это префикс для имени классов нашего приложения. Я буду использовать ru.startandroid.develop.<имя приложения>
Create Activity – имя класса для Activity (окна программы). Укажем, например - MainActivity.
Все остальное оставляем как есть. Жмем Finish.
Проект создан.
Дальнейшие скрины для разных версий могут отличаться, но незначительно.
Слева появился наш проект, давайте раскроем его. Разберем наиболее важные и часто используемые папки и файлы:
src – все, написанные нами исходные коды, будут в этой папке
gen – генерируемые средой файлы, необходимые для приложения. Здесь лучше ничего не трогать . (Если этой папки нет - что-нибудь измените в проекте и нажмите кнопку сохранить).
Android 2.3.3 – необходимые для приложения Android-библиотеки
assets и res – папки для файлов-ресурсов различного типа
AndroidManifest.xml – манифест или конфиг-файл приложения
Все это мы будем в дальнейшем использовать, и станет понятнее, что и зачем нужно.
Давайте выделим имя проекта слева:
и запустим его - нажмем CTRL+F11, далее выбираем Android Application,
жмем OK. Запустится эмулятор, советую в это время ничего особо не трогать и не нажимать, т.к. это глючная и капризная штука. Время запуска - около минуты. Дожидаемся, пока в консоли Eclipse появятся подобные строки.
Приложение закачано на эмулятор, установлено и запущено. Снимаем блокировку экрана в эмуляторе (если она есть) и наблюдаем наше приложение:
Видно название приложения и название Activity. Мы создали и запустили первое приложение.
Если не получилось запустить и Eclipse вывел в консоль подобное сообщение: "emulator-5554 disconnected! Cancelling 'ru.startandroid.develop.OurFirstProject.MainAct activity launch'!" - то закройте эмулятор, и попробуйте снова. Если снова не получилось. перезапустите Eclipse. Если опять нет - ребутнитесь. Если и сейчас не работает, удалите AVD и создайте новый. В итоге должно заработать, пусть и не с первой попытки.
Главное - после запуска приложения (CTRL+F11) старайтесь совершать как можно меньше движений на компе. Я заметил четкую тенденцию - если во время запуска переключаться между различными окнами, то эмулятор запускается криво. А если просто посидеть и подождать минутку - то все ок. Ну и надо чтоб при этом не было включено какое-нить кодирование видео или прочие, нагружающие систему процедуры.
Подробнее про эмулятор можно почитать здесь.
На следующем уроке будем добавлять в наше приложение различные элементы и менять их свойства.