close

Вход

Забыли?

вход по аккаунту

?

Kursovaya rabota (2)

код для вставкиСкачать
ЛИСТ ДЛЯ ЗАМЕЧАНИЙ
ОГЛАВЛЕНИЕ
ВВЕДЕНИЕ6
1 ОСОБЕННОСТИ РАЗРАБОТКИ ПОД ОС ANDROID7
1.1Платформа Android и ее архитектура7
1.1.1 Уровень ядра Linux (Linux Kernel)7
1.1.2 Уровень библиотек и среды выполнения (Android Runtime)7
1.1.3 Уровень каркаса приложений (Application Framework)8
1.1.4Уровень приложений (Applications)9
1.2Инструменты разработки9
1.2.1 Java Development Kit(JDK)10
1.2.2 Среда программирования Eclipse10
1.2.3 Android SDK11
1.2.4 Android Development .Tools (ADT)11
1.3Основные элементы приложения12
1.3.1 Activity12
1.3.2 Services13
1.3.3 Content providers13
1.3.4Broadcast receivers14
2 РАЗРАБОТКА ИНТЕРФЕЙСА МОБИЛЬНОГО ПРИЛОЖЕНИЯ15
2.1 Техническое задание15
2.1.1 Основание для разработки15
2.1.2 Назначение15
2.1.3 Требования к программе или программному изделию15
2.2 Основные элементы приложения16
2.3 Руководство пользователя20
2.4 Тестирование приложения22
ЗАКЛЮЧЕНИЕ23
СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ24
ВВЕДЕНИЕ
1-2 абзаца про предметную область
Целью курсовой работы является разработка .... Приложение предназначено для ... и представляет собой ....
Задачи:
− выбрать, установить и настроить среду разработки;
− изучить основные особенности разработки под ОС Android;
− разработать мобильное приложение и проверить его работоспособность на эмуляторе и реальном устройстве.
1 ОСОБЕННОСТИ РАЗРАБОТКИ ПОД ОС ANDROID
1.1 Платформа Android и ее архитектура
Android является самой популярной мобильной платформой в мире.[6]
Платформа Android представляет собой программный стек для мобильных устройств, который включает в себя операционную систему, программное обеспечение промежуточного слоя (middleware). А также основные` пользовательские приложения, входящие в состав мобильного телефона (или КПК), такие как календарь, браузер, базы данных контактов, сообщений SMS и др.
Архитектуру принято делить на четыре уровня:
- уровень ядра;
- уровень библиотек и среды выполнения;
- уровень каркаса приложений;
- уровень приложений.
1.1.1 Уровень ядра Linux (Linux Kernel)
Android основан на ОС Linux версии 2.6, тем самым платформе доступны системные службы ядра, такие как управление памятью и процессами, обеспечение безопасности, работа с сетью и драйверами. Также ядро служит слоем абстракции между аппаратным и программным обеспечением.
1.1.2 Уровень библиотек и среды выполнения (Android Runtime)
В состав Android входит набор библиотек ядра, которые предоставляют большую часть функциональности библиотек ядра языка Java. Платформа использует оптимизированную, регистр-ориентированную виртуальную машину Dalvik, в отличии от нее стандартная виртуальная машина Java - стек-ориентированная. Каждое приложение запускается в своем собственном процессе, со своим собственным экземпляром виртуальной машины. Dalvik использует формат Dalvik Executable (*.dex), оптимизированный для минимального использования памяти приложением. Это обеспечивается такими базовыми функциями ядра Linux, как организация поточной обработки и низкоуровневое управление памятью. Байт-код Java, на котором написаны ваши приложения, компилируются в dex-формат при помощи утилиты dx, входящей в состав SDK. Платформа Android включает набор C/C++ библиотек, используемых различными компонентами ОС. Для разработчиков доступ к функциям этих библиотек реализован через использование Application Framework. Ниже представлены некоторые из них: - System C library - BSD-реализация стандартной системной библиотеки C (libc) для встраиваемых устройств, основанных на Linux.
- Media Libraries - библиотеки, основанные на PacketVideo's OpenCORE, предназначенные для поддержки проигрывания и записи популярных аудио- и видео- форматов (MPEG4, H.264, MP3, AAC, AMR, JPG, PNG и т.п.).
- Surface Manager - менеджер поверхностей управляет доступом к подсистеме отображения 2D- и 3D- графических слоев.
- LibWebCore - современный движок web-браузера, который предоставляет всю мощь встроенного Android-браузера.- SGL - движок для работы с 2D-графикой. - 3D libraries - движок для работы с 3D-графикой, основанный на OpenGL ES 1.0 API.
- FreeType - библиотека, предназначенная для работы со шрифтами.
- SQLite - мощный легковесный движок для работы с реляционными БД.
1.1.3 Уровень каркаса приложений (Application Framework)
Android позволяет использовать всю мощь API, используемого в приложениях ядра. Архитектура построена таким образом, что любое приложение может использовать уже реализованные возможности другого приложения при условии, что последнее откроет доступ на использование своей функциональности. Таким образом, архитектура реализует принцип многократного использования компонентов ОС и приложений.Основой всех приложений является набор систем и служб:
- Система представлений (View System) - это богатый набор представлений с расширяемой функциональностью, который служит для построения внешнего вида приложений, включающий такие компоненты, как списки, таблицы, поля ввода, кнопки и т.п.
- Контент-провайдеры (Content Providers) - это службы, которые позволяют приложениям получать доступ к данным других приложений, а также предоставлять доступ к своим данным.
- Менеджер ресурсов (Resource Manager) предназначен для доступа к строковым, графическим и другим типам ресурсов.
- Менеджер извещений (Notification Manager) позволяет любому приложению отображать пользовательские уведомления в строке статуса.
- Менеджер действий (Activity Manager) управляет жизненным циклом приложений и предоставляет систему навигации по истории работы с действиями.
1.1.4 Уровень приложений (Applications)
В состав Android входит комплект базовых приложений: клиенты электронной почты и SMS, календарь, различные карты, браузер, программа для управления контактами и много другое. Все приложения, запускаемые на платформе Android написаны на языке Java.
1.2 Инструменты разработки
Чтобы писать приложения для Android, необходимо установить среду разработки. Все инструменты, которые требуются для разработки, доступны и абсолютно бесплатны. Перед началом работы по созданию Android-приложений необходимо загрузить и установить следующее ПО:
− Java Development Kit(JDK);
− Eclipse IDE;
− Android SDK;
− Android Development .Tools (ADT) - плагин для Eclipse.
Самые новые версии программного обеспечения можно загрузить с сайта компании Oracle.[2]
1.2.1 Java Development Kit(JDK)
Java Development Kit, сокращенно JDK - это бесплатно распространяемый корпорацией Sun комплект разработчика приложений на языке Java, включающий в себя компилятор Java (javac), стандартные библиотеки классов Java, примеры, документацию, различные утилиты и исполнительную систему Java (JRE). В состав JDK не входит интегрированная среда разработки на Java (IDE), поэтому разработчик, использующий только JDK, вынужден использовать внешний текстовый редактор и компилировать свои программы, используя утилиты командной строки.
Дополнительные возможности уже предоставляют современные интегрированные среды разработки на Java, такие, как NetBeans, Sun Java Studio Creator, IntelliJ IDEA, Borland JBuilder. Они опираются на сервисы, предоставляемые JDK, и вызывают для компиляции Java-программ компилятор командной строки из комплекта JDK. Поэтому эти среды разработки либо включают в комплект поставки одну из версий JDK, либо требуют для своей работы предварительной установки JDK на машине разработчика.
С некоторых пор фирма Sun предоставляет полные исходные тексты JDK, включая исходные тексты самого Java-компилятора.
1.2.2 Среда программирования Eclipse
Eclipse - это интегрированная среда разработки (Integrated Development Environment, далее IDE) с открытым исходным кодом (далее OpenSource). Проект был запущен в ноябре 2001 года, когда IBM передала исходный код своего Websphere Studio Workbench стоимостью 40 миллионов долларов на OpenSource и сформировала консорциум Eclipse для управления продолжающейся разработкой.
Цель создания Eclipse была сформулирована следующим образом: "разработать богатую, полнофункциональную индустриальную платформу коммерческого качества для разработки сильно-интегрированных инструментов.
Платформа Eclipse в сочетании с JDT включает многие из возможностей, которые включаются в коммерческие IDE: редактор с подсветкой синтаксиса, инкрементальная компиляция кода, потокобезопасный отладчик, навигатор по классам, менеджеры файлов и проектов, а также интерфейсы к стандартным системам контроля исходных текстов, таким как CVS и ClearCase.
Проект Eclipse представляет собой первую столь мощно поддержанную мировым IT-сообществом попытку создания единой открытой интегрированной платформы разработки приложений, обладающей надежностью, функциональностью и уровнем качества коммерческого продукта.[7]
1.2.3 Android SDK
Android SDK - это эмулятор мобильной платформы Android, которая используется в смартфонах. SDK (англ. Software Development Kit) - набор средств и инструментов разработки, позволяющий специалистам создавать программное обеспечение для определенных аппаратных платформ, операционных систем, фреймворков и прочих программных продуктов. Как правило, программист получает SDK непосредственно от производителя целевой платформы или технологии. Скачать SDK также с официального сайта [1].
1.2.4 Android Development .Tools (ADT)
По умолчанию Eclipse не особо годится для разработки Android-приложений. ADT - плагин, который настраивает среду разработки для использования Android SDK и добавляет возможность удобной разработки.
1.3 Основные элементы приложения
Приложения для Android состоят из компонентов, которые система может запускать и управлять ими так, как ей удобною
Всего в Android-приложениях существует четыре типа компонентов:
− Activity;
− Service;
− Broadcast Receiver;
− Content Provider.
Взаимодействие этих компонентов осуществляется с помощью объектов Intent. 1.3.1 Activity
Activity представляет собой внешний пользовательский интерфейс для одной операции, которую может совершить пользователь. Все activity текущего приложения работают вместе и формируют единый пользовательский интерфейс, однако при этом они независимы между собой. Каждое из них реализовано как подкласс базового класса Activity, обеспечивающего создание окна, в котором программист может поместить визуальный интерфейс. Приложение может состоять из всего одного activity или сразу из нескольких. Какими именно будут activity и сколько их будет, зависит от конкретного приложения и его дизайна. Как правило, одно из activity помечается как первое, это означает, что оно будет предоставлено пользователю при запуске приложения. Одно activity может запускать другое. Таким образом, переход от одного activity к другому осуществляется тогда, когда текущее activity вызывает следующее. Каждое activity предоставляет окно по умолчанию. Обычно окно создается в полноэкранном виде, но оно также может и не занимать весь экран и находиться поверх других окон. Activity также может задействовать дополнительные окна - например, всплывающее диалоговое для взаимодействия с пользователем в процессе работы activity, или окно для предоставления текущей информации при выборе какой-нибудь важной опции. Визуальное содержание окна строится с помощью иерархии визуальных компонентов (или представлений) - объектов, производных от базового класса View. Каждый компонент представляет собой просто прямоугольное пространство внутри окна. Родительские компоненты содержат дочерние и организуют их расположение. Иерархию компонент можно представить в виде дерева, а те элементы, которые находятся в самой нижней его части ("листья") и не имеют дочерних компонент, отрисовывают прямоугольные области и ожидают действий пользователя на этом участке. Таким образом осуществляется интерактивное взаимодействие с пользователем. В операционной системе Android уже есть набор готовых визуальных компонент, которые доступны для использования разработчиками. Набор включает в себя кнопки, текстовые поля, полосы прокрутки, меню, флажки-переключатели и многое другое. Для того чтобы поместить в окно такую иерархию, нужно вызвать метод Activity.setContentView(). Параметром метода является экземпляр класса View, лежащий в корне иерархии[4].
1.3.2 Services Services(сервисы) представляют из себя компоненты, которые работают в фоновом режиме. Он, как правило, требуется для длительных операций или для обеспечения работы удаленных процессов, но в общем случае это просто режим, который функционирует, когда приложение не в фокусе. Сервис сам по себе не предоставляет пользовательского интерфейса, то есть с пользователем не взаимодействует, а запускается, управляется и связан с другими компонентами, например, activity. Также может запускаться вместе с системой. Сервисы реализованы в виде подкласса Service. 1.3.3 Content providers Данный компонент управляет наборами данных, которые приложения предоставляют другим. Эти данные могут храниться в файловой системе, базах данных SQLite, в сети, или в любом другом постоянном месте, к которому приложение может иметь доступ. Посредством content provider другое приложение может запрашивать данные и, если выставлены соответствующие разрешения, изменять их. Например, система Android содержит content provider, который управляет пользовательской информацией о контактах. Он позволяет любому приложению, обладающему соответствующими правами вызывать составляющие этого компонента для того, чтобы считывать, записывать или изменять информацию о конкретном человеке. В более общем случае, content provider можно использовать для чтения и записи данных, которые используются приложением и не являются открытыми для других. И для того, чтобы другие приложения могли совершить операции с данными, им необходимо предоставить стандартный набор API. 1.3.4 Broadcast receivers Этот компонент отвечает за распространение общесистемных сообщений, отслеживание и реагирование на действия. Многие оповещения идут от системы, например, сообщения о том что заряд батареи мал или экран выключен. Приложения также могут инициировать такие оповещения, например, сигнализировать о том, что информация загружена на устройство и доступна к использованию. Как и сервисы, broadcast receiver не предоставляет пользовательского интерфейса, однако, он способен создавать уведомления в строке состояния, чтобы предупреждать пользователя о том, что произошло какое-то событие. Однако чаще broadcast receiver взаимодействует с другими компонентами для того, чтобы самому выполнять минимальный объем работы. Так, он может инициировать сервисы для выполнения действий, привязанных к какому-то событию. Компонент реализуется как подкласс BroadcastReceiver и каждая передача представляется как объект класса Intent[5].
2 РАЗРАБОТКА ИНТЕРФЕЙСА МОБИЛЬНОГО ПРИЛОЖЕНИЯ
2.1 Техническое задание
Настоящее техническое задание распространяется на разработку ....
Результат работы должен иметь возможность дальнейшего использования в качестве основы полнофункционального приложения.
В качестве программного обеспечения необходимо использовать язык программирования высокого уровня Java и среду программирования Eclipse с установленным и настроенным набором инструментов Android SDK.
2.1.1 Основание для разработки Программа разрабатывается на основе учебного плана направления 010400.62 "Прикладная математика и информатика". 2.1.2 Назначение
Основным назначением программы является демонстрация возможностей полнофункционального мобильного приложения, основным предназначением которого является ....
2.1.3 Требования к программе или программному изделию
2.1.3.1 Требования к функциональным характеристикам
Программа должна обеспечивать возможность выполнения следующих функций:
Исходные данные:
− Бумажный прототип интерфейса;
− Данные для тестирования приложения.
Результаты:
− Интерфейс мобильного приложения.
− Работающее приложение.
2.1.3.2 Требования к надежности
− Обеспечить непротиворечивость интерфейса
− Обеспечить целостность хранимой информации.
− Обеспечить правильность выполнения задач пользователя.
2.1.3.3 Требования к составу и параметрам технических средств
Программа должна работать на устройствах на базе ОС Android.
Рекомендуемая конфигурация:
− тип процессора ARM;
− объем оперативного запоминающего устройства - 512 Мб;
− объем свободной памяти не менее 100 Мб.
2.1.3.4Требования к информационной и программной совместимости
Программа должна работать на ОС Android версии не ниже 2.2 [3].
2.2 Основные элементы приложения
Структура приложения представлена на рисунке 2.1. Файлы, содержащие код на языке Java, находятся в package src. Пример кода представлен на рис. 2.2. В папке res содержатся файлы ресурсов: изображения, иконки, файлы с настройками различных экранов в формате XML (см. рис. 2.3, 2.4) а также настройки dimentions и строки (см рис. 2.6). В корне проекта находится файл Manifest (см. рис. 2.5). Рисунок 2.1 - структура проекта
Рисунок 2.2 - код первого экрана приложения
Рисунок 2.3 - среда разработки с открытым графическим редактором XML
Рисунок 2.4 - среда разработки с открытым текстовым редактором XML
Рисунок 2.5 - файл манифеста
Рисунок 2.6 - файл strings.xml, отвечающий за организацию русскоязычного интерфейса пользователя
2.3 Руководство пользователя
При запуске программы появляется главный экран приложения (см. рис. 2.7). На главном экране имеются три функциональные кнопки, открывающие доступ к основным возможностям программы. Рисунок 2.7 - Главный экран приложения
При нажатии на кнопку "Вызовы" открывается список вызовов с именем пациента (рис. 2.8 слева). При детализации вызова (рис. 2.8 справа), которая происходит при нажатии на краткое описание, можно заполнить необходимую информацию.
Рисунок 2.8 - список вызовов и детализация вызова
При нажатии на кнопку "Синхронизация" появляется экран, на котором можно вызвать процесс синхронизации с МИС (медицинской информационной системой). При нажатии на клавишу "Отмена" происходит отмена синхронизации (см. рис. 2.9).
Рисунок 2.9 - процесс синхронизации с МИС.
При нажатии на картинку на главном экране открывается пункт "О программе" с кратким руководством по ее эксплуатации (см. рис. 2.10).
Рисунок 2.10 - о программе.
2.4 Тестирование приложения
Тестирование приложение выполнялось на эмуляторе устройства Nexus S (версия Android 2.3, количество оперативной памяти 343Мб, размер внутренней памяти 200Мб). Запущенное на эмуляторе приложение выглядит следующим образом (см. рис. 2.11):
Рисунок 2.11 - эмулятор с запущенным на нем приложением.
Также приложение было протестировано на смартфоне Megafon Mint (версия Android 4.0.4, процессор Intel Atom Z2460, оперативная память 1Гб). Тестирование приложения не выявило проблем с его работоспособностью. ЗАКЛЮЧЕНИЕ
В результате выполнения курсовой работы было разработано мобильное приложение .... Для достижения поставленной цели в качестве инструментального средства разработки были выбраны язык программирования высокого уровня Java и среда программирования Eclipse с установленным и настроенным набором инструментов Android SDK. Следует отметить, что в рамках учебной программы изучался только язык Java, а особенности мобильной разработки были изучены самостоятельно.
Задачи курсовой работы выполнены. На данном этапе разработанный интерфейс позволяет представить, как будет работать полнофункциональное приложение. Работа над программой будет продолжена.
СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ
1) Get the Android SDK. [Электронный ресурс]. - режим доступа: http://developer.android.com/sdk/index.html (Дата обращения: 01.06.2013).
2) Голощапов А.Л. Google Android. Создание приложений для смартфонов и планшетных ПК. - СПб.: БХВ-Петербург, 2013. - 832 с.
3) Иванова Г.С. Технология программирования. - М.: КНОРУС, 2011. - 336 с. 4) Компоненты приложений в Android. Часть 1. [Электронный ресурс]. - режим доступа: http://android-shark.ru/komponentyi-prilozheniy-v-android-chast-1/ (Дата обращения: 02.06.2013).
5) Компоненты приложений в Android. Часть 2. [Электронный ресурс]. - режим доступа: http://eclipse-3.narod.ru/#_Toc90528393 (Дата обращения: 02.06.2013).
6) Официальный сайт Android. [Электронный ресурс]. - режим доступа: http://www.android.com/ (Дата обращения: 06.06.2013).
7) Что это за Android? [Электронный ресурс]. - режим доступа: http://android.com.ua/android_os.html(Дата обращения: 06.06.2013).
4
3
Документ
Категория
Рефераты
Просмотров
604
Размер файла
1 113 Кб
Теги
kursovaya, rabota
1/--страниц
Пожаловаться на содержимое документа