Дипломная работа на тему Создание мобильного приложения “Колледж “Угреша” для операционной системы Android

Министерство образования Московской области

Государственное автономное образовательное учреждение среднего профессионального образования Московской области

“Колледж “Угреша”

Выпускная квалификационная работа

Тема: Создание мобильного приложения Колледж Угреша для операционной системы Android.

Специальность: 230401- “Информационные системы (по отраслям)

г. Дзержинский – 2015 г.

Аннотация

Выпускная квалифицированная работа посвящена разработке и Создание мобильного приложения колледж “Угреша” для операционной системы Android. В теоретической части произведен литературный обзор, в ходе которого были рассмотрены способы создания данного приложения. В практической части представлены скриншоты разработки приложения с описанием каждого этапа.

Работа состоит из 46 страниц и 14 рисунков. Использовано 16 литературных источников.

Graduate work is devoted to the design and creation of a mobile application college “Ugresha” for the operating system Android. In the theoretical part of the literature review performed, during which they discussed how to create the application. In the practical part of the screenshots of application development, with a description of each stage.

The paper consist of 43 pages and 24 figures. Used 16 references.

Содержание

  • Введение
  • 1. Теоретическая часть
    • 1.1 Обзор мобильной операционной системы Android
    • 1.2 Компоненты приложений в Android
    • 1.3 Архитектура операционной системы Android
    • 1.4 Среды разработки приложения
    • 1.4.1 Eclipse
    • 1.4.2 Dojo
    • 1.4.3 Android Studio
  • 2. Практическая часть
    • 2.1 Требования к мобильному приложению
    • 2.2 Подготовка среды разработки
    • 2.3 Создание приложения в Android Studio
  • Выводы
  • Литература
  • Приложения

Введение

Актуальность данной темы исследования заключается в том, что современный этап развития приложений характеризуется тенденциями создания новых приложений. В наше время возрастает значение и роль получение доступа приложений на Android.

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

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

– увеличено быстродействие;

– загружается только необходимая информация, т.е. экономит интернет трафик;

– Отсутствует реклама;

– более удобный интерфейс для просмотра;

– более удобный функционал.

К таким сайтам можно отнести сайты, которые предоставляют информацию учащимся в учебных заведениях. В данном случае возникла необходимость создания подобного рода сайта или специализированного приложения для обеспечения учащихся колледжа “Угреша” было сформировано задание, ставшее предметом настоящего диплома, информации которая сопровождает учебный процесс. Задание, полученное на дипломную работу – разработать программное обеспечение для системы Android: Создание мобильного приложения “Колледж” Угреша” для операционной системы Android, с возможностью просмотра новостей, расписания, о нас, фото, видео, приветственное слово, электронный журнал.

Операционная система Android – одна из самых популярных платформ для мобильных устройств. Это не дешевый аналог продукта от Apple, а альтернатива, его основной конкурент с высокой динамикой развития. Платформа разработана на ядре Linux. Гибкость настроек системы Android чрезвычайно удачно сочетается с удобным инструментарием, что является идеальным решением для создания новых приложений. Основным источником для Android-устройств является Play Market.

Данная работа посвящена разработке приложения. Для этого необходимо изучить объектно-ориентированные программирования Java. Для разработки дипломной работы использованы компоненты Android SDK.

Создания интернет портала требует четкого определения цели. Для создания новостного приложения необходимо изучить составляющие его компоненты, язык java. Целью дипломной работы является создание мобильного приложения колледж “Угреша”.

Для достижения поставленной цели требуется решить следующие задачи:

1) Провести литературный обзор исследований;

2) Провести сравнительный анализ приложений; разработать интерфейс пользователя, создать макет, прототип будущей программы;

3) Разработать приложение на Android;

4) Протестировать разработанное приложение.

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

Introduction

The relevance of the topic of the study is that the current stage of development of applications is characterized by a tendency to create new applications. Nowadays increasing importance and role of accessing applications on Android.

With the advent of mobile devices with access to the Internet, any user regardless of time and place can access the information of interest to him. It expands the number of users who need to frequently access information specific properties. This gave rise to the need to create custom applications that meet these needs. For example, such applications may include specialized websites:

– specialized applications to meet the demand, eliminate the need to find specific information on the entire site

– increased performance ;

– loading only the necessary information, ie saves internet traffic ;

– No advertising;

– a more convenient interface for viewing ;

– More convenient functionality.

These sites include sites that provide information to students in educational institutions. In this case, the need to create this kind of site, or specialized application for college students “Ugresha ” was formed a task that has become the subject of this diploma, the information that accompanies the learning process . Setting obtained in a thesis – developed software system Android: Creating a Mobile Application “College” Ugresha “for the operating system Android, with the possibility of watching the news, schedules, about us, photos, videos, welcome address, e-zine.

Operating System Android – one of the most popular platforms for mobile devices. This is not a cheap analog product from Apple, but the alternative, its main competitor, with high dynamics of development. The platform was developed on the Linux kernel. Flexible configuration of the Android system very successfully combined with a convenient tool that is ideal for creating new applications . The main source for Android-devices is the Play Market.

This work is devoted to the development of the application. To do this, examine the object-oriented programming Java. To develop the thesis components used Android SDK.

Building a web portal requires a clear definition of purpose. To create a news application requires its components to study the language java. As a result, the goal was realized the writing program.

To achieve this goal is necessary to solve the following tasks:

1. Conduct a literature review of research;

2. A comparative analysis of the application, to develop a user interface to create a layout, prototype of the future of the program;

3. To develop an application on Android;

4. To test the developed application .

To achieve the goal it is necessary to study literature, manuals and other information sources, a list of which will be published.

1. Теоретическая часть

1.1 Обзор мобильной операционной системы Android

Android – это уникальная операционная система. Разработчик приложений должен знать ее особенности и нюансы для получения хорошего результата. Одно из главных преимуществ платформы Android – ее открытость. Операционная система Android построена на основе открытого исходного кода и находится в свободном распространении [1][2]. Это позволяет разработчикам получить доступ к исходному коду Android и понять, каким образом реализованы свойства и функции приложений. Любой пользователь может принять участие в совершенствовании операционной системы Android. Существуют некоторые трудности, которые нужно учитывать при разработке. Перечислим их кратко:

– Приложение требует для установки в два раза больше места, чем оригинальный размер приложения;

– Скорость работы с файлами на встроенной флеш-карте падает в десятки раз при уменьшении свободного места;

– Каждый процесс может использовать до 16 Мб (иногда 24 Мб) оперативной памяти.

Android основан на Linux. Между приложением и ядром лежит слой API и слой библиотек на нативном коде. Приложение выполняется на виртуальной машине.

В Android можно запускать много приложений. Но одно из них есть главным и занимает экран. От текущего приложения можно перейти к предыдущему или запустить новое. Это похоже на браузер с историей просмотров.

Каждый экран пользовательского интерфейса представлен классом Activity в коде. Различные Activity содержатся в процессах. Activity может даже жить дольше процесса. Activity может быть приостановлена и запущена вновь с сохранением всей нужной информации.

Android использует специальный механизм описания действий, основанный на Intent.

1.2 Компоненты приложений в Android

Интересной чертой операционной системы Android является тот факт, что приложение в ней может использовать для своего функционала элементы других приложений, если, конечно, они предоставляют такой доступ. Например, если нашему приложению требуется отобразить прокручиваемый список изображений, а другое приложение уже имеет реализованный подходящий скроллер, открытый для других приложений, то можно просто вызвать его для осуществления этого действия и не разрабатывать свой собственный [3][4]. При этом код нашего приложения не смешивается с кодом другого и не компонуется с ним. Скорее, он просто запускает некоторый кусок другого файла, когда возникает такая необходимость. Для обеспечения такого принципа работы, система должна быть способна запускать процесс приложения тогда, когда потребуется любая его часть и создавать экземпляры java-объектов именно для этой части. Поэтому приложения Android не имеют единой точки входа, как это принято в большинстве систем. Вместо этого их код представляет собой набор некоторых отдельных целостных сущностей, компонент, из которых система по мере необходимости может создавать экземпляры и использовать их.

Можно выделить четыре типа таких сущностей-компонент. Поговорим о каждой в отдельности.

Activities

Activity представляет собой внешний пользовательский интерфейс для одной операции, которую может совершить пользователь. Если упростить, то это просто один текущий экран как некоторая единица активности, своего рода кадр с одним пользовательским действием. Здесь и далее будет использоваться термин activity без перевода, как некоторое имя собственное. Хотя дословный перевод, “активность” или “действие”, хорошо передает общий смысл компонента.

Например, activity может предоставить список пунктов меню, которые может выбрать пользователь. Или другой пример – приложение для мгновенного обмена сообщениями может использовать одно activity для того чтобы отобразить лист контактов, другое – чтобы создать сообщение для выбранного контакта, третье – чтобы посмотреть историю сообщений или выполнить настройки.

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

Приложение может состоять из всего одного activity или сразу из нескольких, как упомянутый ранее в качестве примера мессенджер. Какими именно будут activity и сколько их будет, зависит от конкретного приложения и его дизайна. Как правило, одно из activity помечается как первое, это означает, что оно будет предоставлено пользователю при запуске приложения. Одно activity может запускать другое. Таким образом, переход от одного activity к другому осуществляется тогда, когда текущее activity вызывает следующее.

Каждое activity предоставляет окно по умолчанию. Обычно окно создается в полноэкранном виде, но оно также может и не занимать весь экран и находиться поверх других окон. Activity также может задействовать дополнительные окна – например, всплывающее диалоговое для взаимодействия с пользователем в процессе работы activity, или окно для предоставления текущей информации при выборе какой-нибудь важной опции.

Визуальное содержание окна строится с помощью иерархии визуальных компонентов (или представлений) – объектов, производных от базового класса View. Каждый компонент представляет собой просто прямоугольное пространство внутри окна. Родительские компоненты содержат дочерние и организуют их расположение. Иерархию компонент можно представить в виде дерева, а те элементы, которые находятся в самой нижней его части (“листья”) и не имеют дочерних компонент, отрисовывают прямоугольные области и ожидают действий пользователя на этом участке. Таким образом осуществляется интерактивное взаимодействие с пользователем. К примеру, такое представление может отображать на экране маленькую иконку и инициировать какое-нибудь действие, когда пользователь на неё нажмет. В операционной системе Android уже есть набор готовых визуальных компонент, которые доступны для использования разработчиками. Набор включает в себя кнопки, текстовые поля, полосы прокрутки, меню, флажки-переключатели и многое другое.

Для того чтобы поместить в окно такую иерархию, нужно вызвать метод Activity. SetContentView (). Параметром метода является экземпляр класса View, лежащий в корне иерархии.

Services(сервисы) представляют из себя компоненты, которые работают в фоновом режиме. Он, как правило, требуется для длительных операций или для обеспечения работы удаленных процессов, но в общем случае это просто режим, который функционирует, когда приложение не в фокусе. Примером такого процесса может стать прослушивание музыки в то время, когда пользователь делает что-то другое или получение данных по сети без блокирования текущей активности. Сервис сам по себе не предоставляет пользовательского интерфейса, то есть с пользователем не взаимодействует, а запускается, управляется и связан с другими компонентами, например, activity. Также может запускаться вместе с системой.

Content providers Данный компонент управляет наборами данных, которые приложения предоставляют другим. Эти данные могут храниться в файловой системе, базах данных SQLite, в сети, или в любом другом постоянном месте, к которому приложение может иметь доступ. Посредством content provider другое приложение может запрашивать данные и, если выставлены соответствующие разрешения, изменять их. Например, система Android содержит content provider, который управляет пользовательской информацией о контактах. Он позволяет любому приложению, обладающему соответствующими правами вызывать составляющие этого компонента для того, чтобы считывать, записывать или изменять информацию о конкретном человеке.

В более общем случае, content provider можно использовать для чтения и записи данных, которые используются приложением и не являются открытыми для других. Например, приложение Note Pad использует такой компонент для сохранения сделанных записей.

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

Broadcast receivers. Этот компонент отвечает за распространение общесистемных сообщений, отслеживание и реагирование на действия. Многие оповещения идут от системы, например, сообщения о том, что заряд батареи мал или экран выключен. Приложения также могут инициировать такие оповещения, например, сигнализировать о том, что информация загружена на устройство и доступна к использованию. Как и сервисы, broadcast receiver не предоставляет пользовательского интерфейса, однако, он способен создавать уведомления в строке состояния, чтобы предупреждать пользователя о том, что произошло какое-то событие. Однако чаще broadcast receiver взаимодействует с другими компонентами для того, чтобы самому выполнять минимальный объем работы. Так, он может инициировать сервисы для выполнения действий, привязанных к какому-то событию.

1.3 Архитектура операционной системы Android

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

Рис 1.Архитекрута операционной системы Android

Компонентную модель называют программным стеком. Это определение тут уместно, так как речь идет о наборе программных продуктов, работающие вместе для получения итогового результата. В этой модели выполняются последовательно, уровни иерархии, последовательно взаимодействуя между собой [5][6].

Android основан урезанном ядре OC Linux и поэтому на этом уровне мы можем видеть именно его. Ядро отвечает за безопасность и функционирование системы, управлению памятью, процессами, представляет сетевой стек и модель драйверов. Ядро действует как уровень абстракции между аппаратным обеспечением и программным стеком.

Программное обеспечение промежуточного слоя, лежит набор библиотек(Libraries), который предназначен для обеспечения базового функционала для приложений. Этот уровень отвечает за предоставление реализованных алгоритмов для вышележащих уровней, осуществление кодирования и декодирования информации, поддержку файловых форматов и многое другое. Библиотеки реализованы на С/С++, скомпилированные под конкретное аппаратное обеспечение устройства, с которыми они поставляются в предустановленном виде.

Перечислим некоторые из них:

· Media Framework – библиотеки, реализованы на базе PacketVideo OpenCore. Система может осуществлять запись и воспроизведение audio и video контента, производит вывод статических изображений.

· Surface Manager – используется композитный менеджер окон, на подобии Compiz, но упрощённой. Чтобы не производить от рисовку графики напрямую в буфер дисплея, система посылает поступающие команды от рисовки в закадровый буфер, где они накапливаются, а потом выводятся пользователю на экран. С помощью этого система может создавать интересные бесшовные эффекты, прозрачность окон, плавные переходы.

· SQLite – производительная реляционная СУБД, используемая в Android для работы с базами данных, для хранения информации.

· 3D библиотеки – используются для оптимизированной от рисовки 3D графики. Для ускорения используют аппаратное обеспечение. Их реализации строятся на основе API OpenGL ES

· OpenGL ES -множество графического программного интерфейса OpenGL, адаптировано для работы на встраиваемых системах.

· SGL – Движок для работы с 2D графикой. Графическая библиотека является продуктом Google и часто используется в других программах.

· Libc – библиотека языка C, ее BSD реализация, настроенная для работы на устройствах базы Linux. Название его Bionic.

· LibwebCore – библиотеки быстрого браузерного движка WebKit, используемый так же в браузере Google Chrome.

Android Runtime – среда выполнения. Её составляющие набор библиотек ядра и виртуальная машина Dalvik. Библиотеки обеспечивают низкоуровневую функциональность, доступную библиотекам ядра языка Java.

Приложение в OC Android запускается виртуальной машиной Dalvik. Все работающие процессы изолированы от операционной системы. Android Runtime – его архитектура такова, что работа программ осуществляется строго в рамках виртуальной машины. Благодаря этому осуществляется защита ядра операционной системы от возможного вредоносного заражения со стороны других составляющих. Код с ошибками или вредоносное ПО не смогут испортить устройство на базе Android.Уровнем выше располагается Framework, называемый уровень каркаса приложений. Через каркасы приложений разработчики получают доступ к API, лежащие на нижнем уровне. Благодаря архитектуре Framework приложению предоставляется уже реализованные возможности других приложений, к которым разрешено получать доступ.

В базовом наборе сервисов и систем, лежащих в основе каждого приложения. Являющимися частями Framework, входят:

· Расширяемый и богатый набор представлений – используется для создания визуальных компонентов приложений.

· Менеджер ресурсов – обеспечивает доступ к ресурсам без функциональности (без кода)

· Менеджер оповещений – с его помощью приложения отображают собственные уведомления для пользователя в строке состояния.

· Менеджер действий – сохраняет данные истории работы с действиями, управляет жизненным циклом приложений, выдаёт систему навигации по ним.

· Менеджер местоположения – даёт возможность приложениям получать обновлённые данные о текущем положении устройства.

Благодаря Application Framework, приложения в Android могут получать в своё распоряжение вспомогательный функционал, с помощью этого реализуется принцип многократного использования компонентов приложений и операционной системы.

Framework – выполняет код, написанным для него, в отличие от библиотек, которые исполняются сами. Так же Framework содержит в себе большое количество библиотек с разной функциональностью и назначением, в то время как библиотеки объединяют в себе наборы функций системы

1.4 Среды разработки приложения

Разработка приложений для мобильных устройств – это процесс, при котором приложения разрабатываются для небольших портативных устройств, таких как КПК, смартфоны или сотовые телефоны. Эти приложения могут быть предустановлены на устройство в процессе производства, загружены пользователем с помощью различных платформ для распространения ПО или являться веб-приложениями, которые обрабатываются на стороне клиента (JavaScript) или сервера.

1.4.1 Eclipse

Несмотря на большое количество стандартного набора возможностей, Eclipse отличается от традиционных IDE по нескольким фундаментальным особенностям. Может быть, самая интересная возможность Eclipse – это абсолютная нейтральность относительно платформы и языка программирования [7][8]. Вдобавок к эклектичному набору языков программирования, которые поддерживаются Eclipse Consortium (Java, C/C++, Cobol), существует множество сторонних проектов, с помощью которых вы можете обеспечить поддержку интересующего вас языка программирования в Eclipse. На сегодняшний день существуют реализации следующих популярных языков программирования: Python, Eiffel, PHP, Ruby, и C#.

Платформа Eclipse предоставляется, благодаря Eclipse Consortium, в виде заранее скомпилированных исполняемых файлов для Windows, Linux, Solaris, HP-UX, AIX, QNX, и Mac OS X. Очень много внимания концентрируется вокруг архитектурной системы plug-in’ов этой платформы, а также API (Application Programming Interface), поставляемых с Plug-in Development Environment для расширения Eclipse.

Имея проекты, по разработке plug-in’ов, имея ресурсы, предоставляемые такими промышленными гигантами, как IBM, HP и Rational (которая недавно была куплена IBM), и дизайн Erich Gamma, который помогает быстро разобраться в процессе разработки – будущему Eclipse предстоит быть весьма ярким, интересным и перспективным.

Чтобы начать, потребуется:

Бесплатно скачать последнюю версию Eclipse. Нужно зайти на сайт Eclipse, зарегистрироваться и скачать установочный файл.

Инструменты

Инструменты проекта с открытым кодом в Eclipse Foundation. Он наблюдал побочного комитета по управлению проектом, но каждый проект побеждал относительно и независимо. Контролируется руководителями проекта. Инструменты проекта Eclipse, описывают организацию проекта, роли и обязанности участников, и процесс развития верхнего уровня проекта.

Язык

Java – объектно-ориентированный язык программирования, разработанный компанией Sun Microsystems (в последующем приобретённой компанией Oracle). Приложения Java обычно транслируются в специальный байт-код, поэтому они могут работать на любой виртуальной Java-машине вне зависимости от компьютерной архитектуры (рис.2).

Рис. 2 Окно компилятора Java

Javaочень гибкий язык с открытым исходным кодом. Независимо от ограничений языка и платформы, практические любые проблемы можно решить относительно легко [9][10]. Это означает, что Java программисты продолжают быть одними из самых производительных. Несмотря на то, что книги по Java больше не доминируют в списке бестселлеров и Oracle выпускает апдейты не так часто, как хотелось бы, Java продолжает не просто жить, но и процветать.

Шаблоны проекта

Для разработки приложения существуют методы Шаблоны проекта решает проблему разработки стандартного программного обеспечения. Шаблоны – это абстрактные проекты, они не являются кодом. Когда используете шаблон проекта, вы адаптируете этот шаблон в соответствии со своими определенными потребностями (рис.3).

Рис. 3 Структура шаблона Модель – Вид – Контроллер

Модель (Model)

Модель представляет собой данные, с которыми оперирует приложение. Это могут быть как данные базы данных, так и любая другая структура данных описывающая некоторые объекты системы и их состояние.

Вид (View)

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

Контроллер (Controller)

Контроллер является средством, при помощи которого пользователи взаимодействуют с системой. Это может быть клавиатура, манипулятор мышь и т. д. А также является управляющим элементом для обмена данными и сообщениями между видом и моделью.

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

Модель не зависит ни от вида, ни от контроллера, что позволяет одновременно строить различные интерфейсы пользователя для взаимодействия с одной и той же моделью данных. Например, можно сделать как Java SWT или SWING десктопное приложение, так и WEB приложение для взаимодействия одними и теми же данными.

Различают как пассивный, так и активный режимы работы с моделью данных.

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

При активном режиме вводятся дополнительные обработчики и слушатели сообщений, которые посылают компонентам уровня представления сообщения о том, что данные модели были изменены и требуется обновление данных на стороне клиента “View”.

Практическое применение шаблона MVC имеет как положительные, так и отрицательные стороны. Шаблон MVC может привести к увеличению сложности по обеспечению синхронизации данных и представления в простых приложениях.

1.4.2 Dojo

Dojo – свободная модульная библиотека JavaScript. Разработана с целью упростить ускоренную разработку основанных на JavaScript или AJAX приложений и сайтов. Разработка библиотеки была начата Алексом Русселом в 2004 году. Библиотека находится под двойной лицензией: BSD License и Academic Free License [11][12].

Dojo Foundation – некоммерческая организация, созданная для продвижения Dojo. Dojo используется в Zend Framework, начиная с версии 1.6.0.

Элементы интерфейса

Элементы интерфейса Dojo – это пакеты, сформированные из компонентов: JavaScript-кода, разметки HTML и CSS. Они могут быть использованы для добавления различных интерактивных возможностей к сайту:

· меню, закладок, всплывающих подсказок;

· селекторов даты, времени; часов;

· сортируемых таблиц, динамических диаграмм, векторной 2D графики;

· элементов интерфейса “дерево”, с возможностями drag-and-drop (nested sets, вложенные множества);

· Rich Text Editor;

· различных HTML-форм с возможностью проверки ввода пользователя;

· анимированных эффектов, и возможностей построения своих собственных эффектов.

Dojo Toolkit

Dojo Toolkit делится на несколько основных пакетов, которые являлись бы полный распределение Dojo Toolkit. Эти основные пакеты:

· Dojo – Иногда их называют “ядро”, это основная часть Dojo и наиболее обычно применяются пакеты и модули содержатся здесь. Ядро охватывает широкий спектр функциональных возможностей, как AJAX, DOM манипуляции, класс типа программирования, события, обещания, хранилищ данных, перетащить и падения, и интернационализации библиотек.

· Dijit – обширный набор виджетов (компоненты пользовательского интерфейса) и основная система для их поддержки. Она построена полностью на верхней части ядра Dojo.

· dojox – коллекция упаковок и модулей, которые предоставляют широкий спектр функциональных возможностей, которые строятся на обоих ядра Dojo и Dijit. Пакеты и модули, содержащиеся в Dojox, будут иметь различную степень зрелости, обозначенных в README файлов каждого пакета. Некоторые из модулей чрезвычайно зрелые и некоторые весьма экспериментальный характер.

· Util – Различные инструменты, которые поддерживают остальную часть инструментария, как возможность для создания, тестирования и документирования кода.

Одним из долгосрочных целей Dojo Toolkit, чтобы продолжать делать пакеты более яркие и не обязательно требует пакеты существовать в Dojox. Некоторые из пакетов, которые в настоящее время частью этого сообщества являются:

· dgrid – полнофункциональный, легкий сетка данных.

· gridx – быстрый рендеринг, модульная, плагин сетки на основе.

1.4.3 Android Studio

Android Studio – является официальным IDE для разработки приложений Android, на основе IntelliJ IDEA. На вершине возможностей, которые вы ожидаете от IntelliJ, Android Студия предлагает:

· Гибкая Gradle-система сборки

· Построить варианты и несколько АПК поколения файла

· Шаблоны кода, чтобы помочь вам построить общие черты приложение

· Богатый редактор макет с поддержкой перетаскивания и падение редактирования темы

· вкусненькое инструменты, чтобы поймать производительность, удобство использования, совместимость версии, и другие проблемы

· Proguard и приложение-подписание возможности

· Встроенная поддержка для Google Cloud Platform, что позволяет легко интегрировать Google Cloud сообщениями и App Engine

· И многое другое

Структура Android SDK. Используемые компоненты

Android SDKвключает в себя разнообразные библиотеки, документацию и инструменты, которые помогают разрабатывать мобильные приложения для платформы Android.[13][14]

· API Android SDK-API библиотеки Android, предоставляемые для разработки приложений.

· Документация SDK-включает обширную справочную информацию, детализирующую, что включено в каждый пакет и класс и как это использовать при разработке приложений.

· AVD (Android Virtual Device) -интерактивный эмулятор мобильного устройства Android. Используя эмулятор, можно запускать и тестировать приложения без использования реального Android устройства.

· Development Tools – SDK включает несколько инструментальных средств для разработки, которые позволяют компилировать и отлаживать создаваемые приложения.

· Sample Code – Android SDK предоставляет типовые приложения, которые демонстрируют некоторые из возможностей Android, и простые программы, которые показывают, как использовать индивидуальные особенности API в вашем коде.

Версии SDK и Android API Level

Перед началом разработки приложений для Android полезно понять общий подход платформы к управлению изменением API. Также важно понять Android API Level (Идентификатор уровня API) и его роль в обеспечении совместимости вашего приложения с устройствами, на которых оно будет устанавливаться.

Уровень API – целочисленное значение, которое однозначно определяет версию API платформы Android. Платформа обеспечивает структуры API, которые приложения могут использовать для взаимодействия с системой Android. Каждая следующая версия платформы Android может включать обновления API.

Обновления API-структуры разработаны так, чтобы новый API оставался совместимым с более ранними версиями API. Таким образом, большинство изменений в API является совокупным и вводит новые функциональные возможности или исправляет предыдущие. Поскольку часть API постоянно обновляется, устаревшие API не рекомендуются к использованию, но не удаляются из соображений совместимости с имеющимися приложениями.

Уровень API, который использует приложение для Android, определяется целочисленным идентификатором, который указывается в файле конфигурации каждого Android-приложения.

Таблица определяет соответствие уровня API и версии платформы Android.

Таблица – Соответствие версии платформы и уровня АРI

Версия платформы

Уровень API

Android 2.1

7

Android 2.0.1

6

Android 2.0

5

Android 1.6

4

Android 1.5

3

Android 1.1

2

Android 1.0

1

Инструменты для разработки и отладки приложений

Кроме эмулятора, SDK также включает множество других инструментальных средств для отладки и установки создаваемых приложений.[15][16] Если вы разрабатываете приложения для Android с помощью IDE Eclipse, многие инструменты командной строки, входящие в состав SDK, уже используются при сборке и компиляции проекта. Однако кроме них SDK содержит еще ряд полезных инструментов для разработки и отладки приложений:

· Androidважный инструмент разработки, запускаемый из командной строки, который позволяет создавать, удалять и конфигурировать виртуальные устройства, создавать и обновлять Android проекты (при работе вне среды Eclipse) и обновлять Android SDK новыми платформами, дополнениями и документацией;

· Dalvik Debug Monitor Service (DDMS) – интегрированный с Dalvik Virtual Machine, стандартной виртуальной машиной платформы Android, этот инструмент позволяет управлять процессам и на эмуляторе ил и устройстве, а также помогает в отладке приложений. Вы можете использовать этот сервис для завершения процессов, выбора определенного процесса для отладки, генерирования трассировочных данных, просмотра “кучи” или информации о потоках, делать скриншоты эмулятора ил и устройства и многое другое;

· Hierarchy Viewer— визуальный инструмент, который позволяет отлаживать и оптимизировать пользовательский интерфейс разрабатываемого приложения. Он показывает визуальное дерево иерархии представлений, анализирует быстродействие перерисовки графических изображений на экране и может выполнять еще много других функций для анализа графического интерфейса приложений;

· Layoutopt— инструмент командной строки, который помогает оптимизировать схемы разметки и иерархии разметок в создаваемом приложении. Необходим для решения проблем при создании сложных графических интерфейсов, которые могут затрагивать производительность приложения;

· Draw 9-patch – графический редактор, который позволяет легко создавать NinеРаtсh графику для графического интерфейса разрабатываемых приложений;

· sqlite3 – инструмент для доступа к файлам данных SQLite, созданных и используемых приложениями для Android;

· Traceview – этот инструмент выдает графический анализ трассировочных логов, которые можно генерировать из приложений;

· mksdcard – инструмент для создания образа диска, который вы можете использовать в эмуляторе для симуляции наличия внешней карты памяти (например, карты SD).

· Наиболее важный из них– эмулятор мобильного устройства, однако в состав SDK входят и другие инструменты для отладки, упаковки и инсталляции ваших приложений на эмулятор.

2. Практическая часть

2.1 Требования к мобильному приложению

android dalvik приложение мобильный

Для создания системы необходимо сформулировать требования, которым должно соответствовать разрабатываемое приложение. Сформируем их для конкретного мобильного приложения колледж “Угреша”:

-Новости;

-Видео;

-Фото;

-Приветственное слово;

-Расписание;

-Электронный портал;

-О нас;

-Синхронизация информации через интернет;

Пользователь – это субъект, обращающийся через различные устройства к приложению. В качестве пользователей приложения Угреша, выступают студенты колледжа, преподаватели и администрация колледжа, которые в режиме реального времени получают возможность получить всю необходимую им актуальную информацию обеспечивающую учебный процесс. После того как сформулированы требования к приложению приступаем к их реализации. Для этого мы используем программу Android Studio, которая позволяет разработать приложение для платформы Android, протестировать его и опробовать.

2.2 Подготовка среды разработки

Для создания приложения необходимо установить программу разработки Android Studio. Ее можно скачать на сайте: https://developer.android.com/sdk/index.html. Данный сервис позволяет создавать приложение для платформы Android.

Данная программа позволяет, с помощью эмулятора, протестировать и опробовать данное приложение.

Основными функциями подсистемы является:

-Установка необходимых компонентов для реализации поставленной задачи;

– Поэтапная настройка среды разработки;

– Разработка графического контента приложения;

– Разработка полноценного приложения в выбранной среде разработки;

– Тестирование приложения с помощью эмулятора;

– Пример публикации приложения в магазине Play Market.

2.3 Создание приложения в Android Studio

В программе нажмите кнопку File> New> New Project для того, чтобы создать новый проект (рис.4).

Рис. 4 Создание нового проекта

Следующим указываем название нового приложения и выбираем устройство, для которого это приложение создается, нажмите кнопку Next (рис.5).

Рис. 5 Название своего проекта

Далее выбираете версию Android для телефона и планшета. На рисунке также мы видим описание версии Android и процент пользования людей именно этой версией Android, лучше выбирать оптимальную версиюAndroid. Если выбрать 2.1.1, то вы себе ограничиваете в инструментах для создания своего мобильного приложения. Версию 5.0 тоже не стоит выбирать, так как ей пользуется малое количество людей. Поэтому лучше выбирать оптимальную версию 4.0. Нажимаем кнопку Next (рис.6).

Рис.6 Выбор модели Android

Android Studio предлагает нам выбрать шаблоны для создания приложения. Выбираем пустой Blank Activity и нажимаем кнопку Next (рис.7).

Рис.7 Шаблоны

Customize the Activity:

-Activity Name – Здесь нужно указать имя класса главного экрана нашего приложения.

-Layout Name – Здесь мы оставим одно слово main, для удобства. Нажимаем “Finish” (рис.8).

Рис.8 Имя главного экрана

Далее у нас открывается программа, где мы можем начинать разрабатывать своё приложение. На картинке вы можете увидеть на сколько многофункционален Android Studio (рис.9).

Рис 9. Окно главного экрана

Теперь мы создаём кнопки добавляя на макет экрана. И даём название своим кнопкам, которые у нас будут отображаться в приложении.

В создаваемом приложении будет семь вкладок: новости, видео, фото, приветственное слово, расписание, электронный портал, о нас (рис.10).

Рис.10 Создание кнопок

Важным моментом является визуализация органов управления приложения. Очень важно сделать интерфейс понятным и дружелюбным интерфейсом. На мой взгляд, что управление приложением можно представить в виде кнопок красного цвета. Разработанный дизайн на наш взгляд наилучшим образом удовлетворяет требованиям дружелюбности. Процедура изменения дизайна выглядит следующим образом.

Создаете XML форму, чтобы придать форму своим кнопкам. В код пишете public void showNews (View View), это обработчик кода (рис.11).

Рис.11 Панель управления приложением

Следующим добавляем картинку на главный макет экрана. Для того чтобы добавить картинку, которая вам нужна, на главный экран выносим ImageView, следом в папку drawable добавляем картинку, которую вы хотите (рис.12).

Рис.12 Добавление картинки

Теперь в кнопки добавляем ссылки сайта, тех страниц, которые вы хотели бы видеть в своём приложении (рис.13).

Рис.13 Ссылки

Окончательный вид приложения

Рис.14 Законченное приложение

Выводы

В результате выполнения дипломной работы было создано мобильное приложение. Были получены следующие результаты:

1) Проведен литературный обзор;

2) Проведен сравнительный анализ приложений, разработан интерфейс пользователя, создан макет, прототип будущей программы;

3) Разработано приложение на Android;

4) Протестировано разработанное приложение;

Перспективы работы:

– Привлечение внимания абитуриентов;

– Возможность расширения функционала приложения за счет учебных материалов;

– Список за должностей по предметам;

– Список прогулов и опозданий;

– Опрос и предложения по улучшению Колледжа;

Литература

1. http://geektimes.ru/post/99323/- Основы программирования под Android. Дата издания 2010 год.

2. Э. Бурнет. Б 91 Привет, Android! Разработка мобильных приложений. – СПб.: Питер, 2012. – 256 с.: ил

3. http://android-shark.ru/komponentyi-prilozheniy-v-android-chast-1/- Компоненты приложений в Android. Дата издания 2011 год

4. Дейтел П., Дейтел Х., Дейтел Э.А 66 Android для разработчиков. – СПб.: Питер, 2015. – 384 с.: ил. – (Серия “Библиотека программиста”).

5. http://android-shark.ru/arhitektura-operatsionnoy-sistemyi-android/. Архитектура операционной системы Android. Дата издания 2011 год.

6. Pro Android 2 Copyright © 2010 by Sayed Y. Hashimi, Satya Komatineni, and Dave MacLean, New York -687c.

7. http://www.eclipse.org/. Дата обновления сайта 2015 год.

8. Дэвид Карлсон Eclipse Distilled – Copyright by Pearson Education, Inc All rights reserved ISBN 0-32-128815-7 © Издательство “Лори”, 2013

9. https://ru.wikipedia.org/wiki/Java. Статья о языке программирования Java. Дата издания 2015 год.

10. Шилдт, Герберт. Ш 57 Java 8. Полное руководство; 9-е изд.: Пер. с англ. – М. : ООО “И.Д. Вильяме”,2015. – 1 376 с. : ил. – Парал. тит. англ.

11. http://berdaflex.com/ru/eclipse/books/rcp_filemanager/ch04s06.html. Шаблон проектирования Model-View-Controller. Дата издания 2010 год.

12. Расселл М. Dojo. Подробное руководство – Пер. с англ. – СПб.: Символ_Плюс, 2009. – 560 с., ил.

13. http://dojotoolkit.org/reference-guide/1.10/.Руководство Dojo Toolkit. Дата издания 2015 год.

14. Ryan Hodson Android-программирование – Syncfusion Inc. Number of pages: 113,July 2014

15. https://developer.android.com/tools/studio/index.html. Android студия обзор. Дата издания 2015 год.

16. Kevin Grant and Chris Android Программирование: Разработка и дизайн – Copyright © 2014 by Kevin Grant and Chris Haseman, Number of pages 246

Приложение 1. Интерфейс программы

Приложение 2

Приложение 3

Приложение 4

Приложение 5

Приложение 6

Приложение 7

Приложение 8

Поделиться статьёй
Поделиться в telegram
Поделиться в whatsapp
Поделиться в vk
Поделиться в facebook
Поделиться в twitter
Леонид Федотов
Леонид Федотов
Окончил НИУ ВШЭ факультет компьютерных наук. Сам являюсь кандидатом наук. По специальности работаю 13 лет, за это время создал 8 научных статей и 2 диссертации. В компании подрабатываю в свободное от работы время уже более 5 лет. Нравится помогать школьникам и студентам в решении контрольных работ и написании курсовых проектов. Люблю свою профессию за то, что это направление с каждым годом становится все более востребованным и актуальным.

Ещё статьи

Нет времени делать работу? Закажите!
Вид работы
Тема
Email

Отправляя форму, вы соглашаетесь с политикой конфиденциальности и обработкой ваших персональных данных.