полный иерархический список обязательных файлов и папок проекта можно увидеть на вкладке
Основные этапы разработки приложения с использованием Android IDE
Цель лабораторной работы:
Задачи лабораторной работы:
4.1 Введение
Для достижения поставленной цели в лабораторной работе создадим приложение в среде разработки Android IDE (Eclipse и ADT ), подробно рассмотрим структуру полученного проекта и разберем назначение основных его элементов.
Разрабатываемое приложение выполняет свои функции только когда видимо на экране, когда оно не видимо его работа приостанавливается, т. е. имеем дело с приложением переднего плана. Для выполнения всей работы достаточно определить одну активность в приложении, фоновые процессы не предусмотрены.
4.2 Создание приложения и изучение его структуры
Создайте новый проект в среде Android IDE (Eclipse с ADT ). Процесс создания нового проекта и описание основных настроек подробно рассмотрен в лабораторной работе к первой лекции.
В процессе создания проекта, мы назвали его ProjectN, среда разработки подготавливает необходимые папки и файлы. Полный иерархический список обязательных элементов проекта можно увидеть на вкладке Package Explorer (аналогичную информацию предоставляет вкладка Project Explorer), иерархия полученных папок и файлов для нашего проекта изображена на рис. 4.1.
В настоящее время нас будет интересовать назначение нескольких файлов и папок.
Комментарий 2: Имя файлу присваивается в процессе создания приложения на этапе настройки активности. Имя определяется в поле Activity Name.
Рассмотрим подробно файл манифеста.
Первый обязательный элемент является корневым элементом файла, должен содержать обязательный элемент и все остальные элементы по необходимости. Рассмотрим основные атрибуты этого элемента:
xmlns:android | — определяет пространство имен Android, всегда должен иметь значение: » http://schemas.android.com/apk/res/android «. Обязательный атрибут. |
package | — полное имя пакета, в котором располагается приложение. Обязательный атрибут. Имя должно быть уникальным, может содержать заглавные и строчные латинские буквы, числа и символ подчеркивания. Однако начинаться должно только с буквы. Для избежания конфликтов с другими разработчиками рекомендуется использовать имя вашего сайта (если он есть) записанное в обратном порядке. В нашем случае пакет имеет имя «com.example.projectn» и наше приложение не удастся разместить в Google Play (но мы на это и не претендуем). Внимание: если Вы опубликовали свое приложение, Вы не можете менять имя пакета, т.к. имя пакета служит уникальным идентификатором для приложения и в случае его смены приложение будет рассматриваться, как совсем другое и пользователи предыдущей версии не смогут его обновить. |
android:versionCode | — внутренний номер версии приложения не виден пользователю. Этот номер используется только для определения является ли одна версия более современной по сравнению с другой, больший номер показывает более позднюю версию. |
android:versionNumber | — номер версии, является строкой и используется только для того, чтобы показать пользователю номер версии приложения. |
android:shareUserID, android:sharedUserLabel, android:installLocation | — эти атрибуты в нашем файле манифеста не представлены, про их назначение можно почитать по ссылке: http://developer.android.com/guide/topics/manifest/manifest-element.html. |
Основные этапы разработки приложения с использованием Android IDE
Цель лабораторной работы:
Задачи лабораторной работы:
4.1 Введение
Для достижения поставленной цели в лабораторной работе создадим приложение в среде разработки Android IDE (Eclipse и ADT ), подробно рассмотрим структуру полученного проекта и разберем назначение основных его элементов.
Разрабатываемое приложение выполняет свои функции только когда видимо на экране, когда оно не видимо его работа приостанавливается, т. е. имеем дело с приложением переднего плана. Для выполнения всей работы достаточно определить одну активность в приложении, фоновые процессы не предусмотрены.
4.2 Создание приложения и изучение его структуры
Создайте новый проект в среде Android IDE (Eclipse с ADT ). Процесс создания нового проекта и описание основных настроек подробно рассмотрен в лабораторной работе к первой лекции.
В процессе создания проекта, мы назвали его ProjectN, среда разработки подготавливает необходимые папки и файлы. Полный иерархический список обязательных элементов проекта можно увидеть на вкладке Package Explorer (аналогичную информацию предоставляет вкладка Project Explorer), иерархия полученных папок и файлов для нашего проекта изображена на рис. 4.1.
В настоящее время нас будет интересовать назначение нескольких файлов и папок.
Комментарий 2: Имя файлу присваивается в процессе создания приложения на этапе настройки активности. Имя определяется в поле Activity Name.
Рассмотрим подробно файл манифеста.
Первый обязательный элемент является корневым элементом файла, должен содержать обязательный элемент и все остальные элементы по необходимости. Рассмотрим основные атрибуты этого элемента:
xmlns:android | — определяет пространство имен Android, всегда должен иметь значение: » http://schemas.android.com/apk/res/android «. Обязательный атрибут. |
package | — полное имя пакета, в котором располагается приложение. Обязательный атрибут. Имя должно быть уникальным, может содержать заглавные и строчные латинские буквы, числа и символ подчеркивания. Однако начинаться должно только с буквы. Для избежания конфликтов с другими разработчиками рекомендуется использовать имя вашего сайта (если он есть) записанное в обратном порядке. В нашем случае пакет имеет имя «com.example.projectn» и наше приложение не удастся разместить в Google Play (но мы на это и не претендуем). Внимание: если Вы опубликовали свое приложение, Вы не можете менять имя пакета, т.к. имя пакета служит уникальным идентификатором для приложения и в случае его смены приложение будет рассматриваться, как совсем другое и пользователи предыдущей версии не смогут его обновить. |
android:versionCode | — внутренний номер версии приложения не виден пользователю. Этот номер используется только для определения является ли одна версия более современной по сравнению с другой, больший номер показывает более позднюю версию. |
android:versionNumber | — номер версии, является строкой и используется только для того, чтобы показать пользователю номер версии приложения. |
android:shareUserID, android:sharedUserLabel, android:installLocation | — эти атрибуты в нашем файле манифеста не представлены, про их назначение можно почитать по ссылке: http://developer.android.com/guide/topics/manifest/manifest-element.html. |
Основные этапы разработки приложения с использованием Android IDE
Цель лабораторной работы:
Задачи лабораторной работы:
4.1 Введение
Для достижения поставленной цели в лабораторной работе создадим приложение в среде разработки Android IDE (Eclipse и ADT ), подробно рассмотрим структуру полученного проекта и разберем назначение основных его элементов.
Разрабатываемое приложение выполняет свои функции только когда видимо на экране, когда оно не видимо его работа приостанавливается, т. е. имеем дело с приложением переднего плана. Для выполнения всей работы достаточно определить одну активность в приложении, фоновые процессы не предусмотрены.
4.2 Создание приложения и изучение его структуры
Создайте новый проект в среде Android IDE (Eclipse с ADT ). Процесс создания нового проекта и описание основных настроек подробно рассмотрен в лабораторной работе к первой лекции.
В процессе создания проекта, мы назвали его ProjectN, среда разработки подготавливает необходимые папки и файлы. Полный иерархический список обязательных элементов проекта можно увидеть на вкладке Package Explorer (аналогичную информацию предоставляет вкладка Project Explorer), иерархия полученных папок и файлов для нашего проекта изображена на рис. 4.1.
В настоящее время нас будет интересовать назначение нескольких файлов и папок.
Комментарий 2: Имя файлу присваивается в процессе создания приложения на этапе настройки активности. Имя определяется в поле Activity Name.
Рассмотрим подробно файл манифеста.
Первый обязательный элемент является корневым элементом файла, должен содержать обязательный элемент и все остальные элементы по необходимости. Рассмотрим основные атрибуты этого элемента:
xmlns:android | — определяет пространство имен Android, всегда должен иметь значение: » http://schemas.android.com/apk/res/android «. Обязательный атрибут. |
package | — полное имя пакета, в котором располагается приложение. Обязательный атрибут. Имя должно быть уникальным, может содержать заглавные и строчные латинские буквы, числа и символ подчеркивания. Однако начинаться должно только с буквы. Для избежания конфликтов с другими разработчиками рекомендуется использовать имя вашего сайта (если он есть) записанное в обратном порядке. В нашем случае пакет имеет имя «com.example.projectn» и наше приложение не удастся разместить в Google Play (но мы на это и не претендуем). Внимание: если Вы опубликовали свое приложение, Вы не можете менять имя пакета, т.к. имя пакета служит уникальным идентификатором для приложения и в случае его смены приложение будет рассматриваться, как совсем другое и пользователи предыдущей версии не смогут его обновить. |
android:versionCode | — внутренний номер версии приложения не виден пользователю. Этот номер используется только для определения является ли одна версия более современной по сравнению с другой, больший номер показывает более позднюю версию. |
android:versionNumber | — номер версии, является строкой и используется только для того, чтобы показать пользователю номер версии приложения. |
android:shareUserID, android:sharedUserLabel, android:installLocation | — эти атрибуты в нашем файле манифеста не представлены, про их назначение можно почитать по ссылке: http://developer.android.com/guide/topics/manifest/manifest-element.html. |
Основные этапы разработки приложения с использованием Android IDE
Цель лабораторной работы:
Задачи лабораторной работы:
4.1 Введение
Для достижения поставленной цели в лабораторной работе создадим приложение в среде разработки Android IDE (Eclipse и ADT ), подробно рассмотрим структуру полученного проекта и разберем назначение основных его элементов.
Разрабатываемое приложение выполняет свои функции только когда видимо на экране, когда оно не видимо его работа приостанавливается, т. е. имеем дело с приложением переднего плана. Для выполнения всей работы достаточно определить одну активность в приложении, фоновые процессы не предусмотрены.
4.2 Создание приложения и изучение его структуры
Создайте новый проект в среде Android IDE (Eclipse с ADT ). Процесс создания нового проекта и описание основных настроек подробно рассмотрен в лабораторной работе к первой лекции.
В процессе создания проекта, мы назвали его ProjectN, среда разработки подготавливает необходимые папки и файлы. Полный иерархический список обязательных элементов проекта можно увидеть на вкладке Package Explorer (аналогичную информацию предоставляет вкладка Project Explorer), иерархия полученных папок и файлов для нашего проекта изображена на рис. 4.1.
В настоящее время нас будет интересовать назначение нескольких файлов и папок.
Комментарий 2: Имя файлу присваивается в процессе создания приложения на этапе настройки активности. Имя определяется в поле Activity Name.
Рассмотрим подробно файл манифеста.
Первый обязательный элемент является корневым элементом файла, должен содержать обязательный элемент и все остальные элементы по необходимости. Рассмотрим основные атрибуты этого элемента:
xmlns:android | — определяет пространство имен Android, всегда должен иметь значение: » http://schemas.android.com/apk/res/android «. Обязательный атрибут. |
package | — полное имя пакета, в котором располагается приложение. Обязательный атрибут. Имя должно быть уникальным, может содержать заглавные и строчные латинские буквы, числа и символ подчеркивания. Однако начинаться должно только с буквы. Для избежания конфликтов с другими разработчиками рекомендуется использовать имя вашего сайта (если он есть) записанное в обратном порядке. В нашем случае пакет имеет имя «com.example.projectn» и наше приложение не удастся разместить в Google Play (но мы на это и не претендуем). Внимание: если Вы опубликовали свое приложение, Вы не можете менять имя пакета, т.к. имя пакета служит уникальным идентификатором для приложения и в случае его смены приложение будет рассматриваться, как совсем другое и пользователи предыдущей версии не смогут его обновить. |
android:versionCode | — внутренний номер версии приложения не виден пользователю. Этот номер используется только для определения является ли одна версия более современной по сравнению с другой, больший номер показывает более позднюю версию. |
android:versionNumber | — номер версии, является строкой и используется только для того, чтобы показать пользователю номер версии приложения. |
android:shareUserID, android:sharedUserLabel, android:installLocation | — эти атрибуты в нашем файле манифеста не представлены, про их назначение можно почитать по ссылке: http://developer.android.com/guide/topics/manifest/manifest-element.html. |
Полный иерархический список обязательных файлов и папок проекта можно увидеть на вкладке
Для начала необходимо определить какие элементы графического интерфейса нам нужны, как эти элементы будут располагаться на форме и каким образом будет реализовано взаимодействие с пользователем.
Так как приложение очень простое, то и интерфейс особой сложностью отличаться не будет. Нам потребуется поле для ввода чисел (TextEdit), текстовая метка для вывода информации (TextView) и кнопка для подтверждения введенного числа (Button). Располагать элементы интерфейса будем друг под другом, сверху информационная часть, ниже поле ввода, кнопку разместим в самом низу приложения. Взаимодействие приложения с пользователем организуется очень просто: пользователь вводит число в поле для ввода и нажимает кнопку, читает результат в информационном поле и, либо радуется победе, либо вводит новое число.
Если пользователь вводит правильное число, то приложение предлагает ему сыграть снова при этом кнопка будет играть роль подтверждения, а в информационное поле будет выведено приглашение к повторной игре.
Схема интерфейса приложения «Угадай число» |
Для формирования интерфейса будем работать с файлом res/layout/activity_main.xml.
Зададим табличное расположение компонентов на форме, для этого выберем вкладку Layouts, найдем там TableLayout и добавим его на форму.
Теперь начнем добавлять элементы интерфейса, будем использовать графический режим правки.
Во-первых, нам необходимо добавить информационное поле. Для этого на панели =Palette= выбираем вкладку Form Widgets, на этой вкладке найдем поле TextView, перенесем в окно приложения, разместим в первой строке таблицы (TableLayout).
Во-вторых, нам потребуется поле ввода информации, на вкладке Text Fields найдем текстовое поле Number и разместим во второй строке таблицы.
В-третьих, вернемся на вкладку Form Widgets, выберем там элемент Button и добавим в третью строку таблицы.
После настройки интерфейса можно заглянуть в файл activity_main.xml, в этом файле прописано, что используется TableLayout и дано описание каждой из трех строк.
Фрагмент файла activity_fullscreen.xml, описание строки в TableLayout |
Теперь необходимо наполнить наши элементы интерфейса смыслом, нам понадобится текст для общения с пользователем, при программировании под Android существует практика разделять ресурсы и код приложения. Для хранения любых строк, которые могут понадобиться приложению, используется файл strings.xml. Хранение всех строковых ресурсов в этом файле серьезно облегчает локализацию приложения на другие языки.
Настроим текст в информационном поле. Для этого на вкладке Properties в правой части окна выберем элемент textView1 (это и есть наше информационное поле, имеет смысл придумать ему более осмысленное имя). Найдем свойство Text, подставим в него значение строки с именем try_to_guess. Аналогично можно настроить текст, которым нас будет приветствовать кнопка, только в этом случае надо работать с элементом button1.
Настройка текста для кнопки button1 |
Реализация логики приложения
Приступим непосредственно к программированию, работать будем с файлом src/com.example.projectn/MainActivity.java.
Класс MainActivity является наследником класса Activity и в нем уже реализован метод onCreate(), который запускается при первоначальном создании активности, нам потребуется его дополнить, но об этом чуть позже.
Мы предполагаем программно менять информацию в поле TextView, получать значение из поля EditText и обрабатывать события нажатия на кнопку Button, поэтому необходимо объявить соответствующие переменные, как поля класса MainActivity:
TextView tvInfo;
EditText etInput;
Button bControl;
Чтобы не было ошибок, необходимо импортировать пакет android.widget, который содержит все элементы графического интерфейса: import android.widget.*;
На самом деле среда разработки подскажет, что делать.
Теперь необходимо связать эти переменные с элементами интерфейса, уже добавленными нами в activity_main.xml, сделать это необходимо в методе onCreate(), а для получения уже созданного элемента интерфейса воспользуемся методом findViewById(). Итак в метод onCreate() добавим следующие строки:
tvInfo = (TextView)findViewById(R.id.textView1);
etInput = (EditText)findViewById(R.id.editText1);
bControl = (Button)findViewById(R.id.button1);
Метод findViewById() возвращает объект класса View, который является общим предком для всех компонентов пользовательского интерфейса, для того чтобы избежать возможных ошибок в скобках перед вызовом метода указываем до какого конкретно компонента необходимо сузить возможности объекта View.
Настройка свойства On Click для кнопки |
Эти же действия можно выполнить в фале activity_main.xml:
Настройка свойствами On Click для кнопки в файле XML |
В файл MainActivity.java, в класс активности необходимо добавить метод:
public void onClick(View v)
Имя метода не обязательно должно быть onClick(), главное, чтобы оно совпадало с именем, указанным в свойстве On Click.
Получить целочисленное значение из поля ввода, можно с помощью следующей конструкции:
Integer.parseInt(etInput.getText().toString())
изменить значение текста в информационном поле можно с помощью следующей конструкции:
tvInfo.setText(getResources().getString(R.string.ahead));
в данном случае в информационном поле появится значение строкового ресурса с именем ahead.
Осталось реализовать логику приложения в методе onClick().