Автор работы: Пользователь скрыл имя, 01 Июля 2017 в 14:50, дипломная работа
Цель работы – создание приложения, позволяющего отслеживать в реальном времени информацию об элементах гардероба в магазинах города Казани, для операционной системы Android.
Для достижения этой цели необходимо решить следующие задачи:
изучить область приложений, связанных с покупками, для мобильных устройств;
рассмотреть вопрос о разработке программ для операционной системы Android и использовать их для реализации приложения;
рассмотреть приложения конкуренты;
разработать приложение для шопинга;
произвести тестирование и валидацию программного продукта.
ВВЕДЕНИЕ ………………………………………………………………….
3
Глава 1 АНАЛИЗ ИНФОРМАЦИИ И ПОСТАНОВКА ЗАДАЧИ ……...
6
1.1
Мобильные приложения……………………………………..
6
1.2
Обзор существующих мобильных платформ………………
7
1.3
Описание предметной области……...……………………….
10
Глава 2 ОПЕРАЦИОННАЯ СИСТЕМА ANDROID………………...........
13
2.1
Архитектура Android…….…………………………………...
13
2.2
Эмулятор для разработки приложений Android SDK………
16
2.3
Компоненты пользовательского интерфейса Android……...
18
2.4
Пакеты, которые являются частью Android SDK…………..
25
Глава 3 Анализ исходных данных. Разработка, тестирование и валидация программного продукта …………………………………...........
31
3.1
Анализ исходных данных ……………………………………
31
3.2
Разработка программного продукта ….…………………….
39
3.3
Тестирование и валидация программного продукта ..…….
46
ЗАКЛЮЧЕНИЕ ………………………………………………………...........
52
СПИСОК ЛИТЕРАТУРЫ ……
public static void invokeWebBrowser (Activity activity)
{
Intent intent = new Intent (Intent. ACTION_VIEW): intent. setData (Uri. parse ("http://www.google.com")); activity. startActivity (intent);
}
В этом примере, используя намерение, мы говорим Android открыть окно, подходящее для отображения содержимого веб-сайта. В зависимости от того, какой браузер установлен на мобильном устройстве, Android будет выбрать наиболее подходящее для отображения сайта.
Кроме того, широко поддерживается ресурсы Android, которым знакомы строкт и растровые изображения, и по крайней мере некоторые известные элементы, такие как определение представления на основе XML. Использование ресурсов в этих рамках, осуществляется по-новому, с помощью чего работа ресурса становится более простой, понятной и удобной. Ниже приведен пример, в котором автоматически генерируется ID ресурса и определяется в файлах XML:
public final class R {
public static final class attr { } public static final class drawable {
public static final int myanimation=0x7f020001; public static final int numbersl9=0x7f02000e:
}
public static final class id {
public static final int textViewIdl=Ox7f080003;
}
public static final class layout {
public static final int frame_animations_layout=
}
public static final class string {
public static final int hello=0x7f070000;
}
}
Эти классы соответствуют автоматически сгенерированному ID или XML-файлом элемента или множества. Если нужно использовать такие определения XML, вместо того, чтобы использовать их идентификационные данные. Такое посредничество очень полезно в локализации. Еще одна инновационная концепция в Android это контент-провайдер (поставщик контента). Поставщик контента относится к абстракции источника данных, который может быть представлен в качестве эмиттера и REST обслуживания (репрезентативная State Transfer). В основе этой базы данных лежит абстракция SQLite и делает это свойство контент-провайдеров мощным инструментом для разработки приложений. Было отмечено, что XML играет важную роль в описании пользовательских интерфейсов для Android.
Ниже показано, как объявить меню в XML-файле:
<menu xmlns: android="http://schemes. android.com/apk/res/android">
<! B этой группе используется категория, заданная по умолчанию. ->
<group android: id="@+id/menuGroup_Main">
<item android: id="@+id/menu_clear" android: orderInCategory="10" android: title="clear" />
<item android: id="@+id/menu_show_browser" android: orderInCategory="5"
android: title="show browser" />
</group>
</menu>
Хотя Android поддерживает диалоговые окна, они все асинхронны. Работа с такими асинхронными диалогами особенно сложна для разработчиков, которые привыкли работать с синхронными модальными диалоговыми окнами, которые используются в некоторых фреймворках окон.
Android также поддерживает анимацию, эта функция включена вместе со стеком пользовательского интерфейса, который основан на видах объектов. В Android используются два типа анимации: с построением промежуточных кадров (анимация анимации анимации) и кадровой анимации. Промежуточная анимация относится к изображениям, отображаемым между основными. На компьютере эти изображения создают изменения средних значений с определенными интервалами и перерисовывают фон. Рамочная анимация состоит из последовательности кадров, которые рисуются один за другим с регулярными интервалами. В Android используются обе версии анимации с использованием функции обратного вызова анимации, интерполяторов и матрицы преобразования. Кроме того, Android может идентифицировать эти типы анимации в файле ресурсов XML.
Графическая библиотека, основанная на этом процессе, поддерживает стандартные преобразования матриц, которые позволяют масштабировать, перемещать и поворачивать изображения. Объект камеры, присутствующий в графической библиотеке, обеспечивает глубину и поддержку проецирования, так что 3D-эффекты можно моделировать на 2D-интерфейсе.
В Android, доступная и трехмерная графика. Это связано с тем, что вводится стандартный OpenGL ES 1.0. Как и OpenGL, он основан на плоском языке API C. Поскольку интерфейс программирования приложений Android SDK основан на Java, OpenGL должен использовать привязку Java для доступа к нему. В Java ME обязательна для OpenGL ES и уже определена с использованием запроса спецификации Java QSR 239, а для Android OpenGL ES использует тот же тип привязки Java.
На Android используются новые подходы, связанные с идеей информации у вас под рукой, доступ к которой осуществляется через домашнюю страницу. Первая из этих идей называется живыми каталогами (живые папки). Используя живые каталоги, коллекция элементов может быть опубликована в папке, расположенной на главной странице сайта. Содержимое этой коллекции изменяется от базового изменения в своей базе данных. Новые данные могут быть отправлены на устройство или со съемных носителей или из Интернета.
Вторая идея, связанная с домашней страницей, - виджет главного экрана. Основные виджеты используются для получения информации из пользовательского интерфейса виджета на главной странице. Эта информация может быть изменена с регулярными интервалами. Примером таких данных может быть несколько сообщений электронной почты, которые хранятся на устройстве.
Встроенный поиск в Android (Integrated Android Search) - это третья идея, связанная с использованием домашней страницы. Этот тип поиска позволяет вам искать информацию как на устройстве, так и в Интернете. В Android эта функция не ограничивается одним поиском и может давать команды с помощью элемента управления поиском.
Кроме того, с устройством работают так называемые поддерживаемые жесты Android, то есть интерпретация движений пальцев пользователя. Android позволяет записывать любую последовательность движений пальца на экране и сохранять их как жесты. Затем такие жесты могут использоваться приложениями для определения конкретных действий.
В дополнение к инструментам SDK для Android есть и другие независимые инновации, которые делают процесс разработки интересным и простым. Некоторыми примерами таких явлений являются XML/VM, PhoneGap и титан. Titanium позволяет использовать технологию HTML в программировании для браузера на основе WebKit Android.
Еще одним интересным компонентом Android SDK являются сервисы, основанные на местоположении. В этом разделе SDK предоставляет разработчикам интерфейсы прикладного программирования, приложение для работы с картами и получение информации в режиме реального времени, связанной с расположением устройства.
Компоненты отображения и связанные с телефоном компоненты API
Android разработаны для работы с аудио-, видео- и телефонными компонентами. До версии 1.5 на Android вы могли записывать только аудио и видео. Версия 1.5 позволила записать аудио и видео. Это было сделано с помощью MediaRecorder. В версиях Android 2.0 и выше движок Pico используется для преобразования текста в речь (TTS). Интерфейс, используемый в Android для преобразования текста в речь, очень прост, и он также имеет соответствующий код:
TextToSpeech mTTS;
mTTS. speak (sometextString, TextToSpeech. QUEUE_ADD); mTTS. setOnUtteranceCompletedListene
mTTS. stop (); mTTS. shutdown ();
mTTS. synthesizeToFile (…);
Еще несколько методов, относящихся к этой сфере: playSilence
setLanguage setPitch setSpeechRate isSpeaking
Важно отметить, что во всех этих концепциях Android, объединенных в единый файл XML, который определяето пакет приложений. Этот файл представляет собой файл описания (файл манифеста) (AndroidManifest. Xml). Пример этого файла:
<? xml version="1.0" encoding="utf-8"? >
<manifest xmlns: android=http://schemas. android.com/apk/res/android package="com. ai. android. HelloWorid">
android: versionCode="l" android: versionName="1.0.0">
<application android: icon="@drawab1e/icon" android: label="@string/app_name">
<activity android: name="HelloWorid" android: label="@string/app_name">
<intent-filter>
<action android: name="android. intent. action. MAIN"
<category
android: name="android. intent. category. LAUNCHER"
</intent-filter>
</activity
</application>
<-/manifest>
В файле описания Android содержатся определения действий, регистрируются поставщики содержимого и поставщики служб и обозначаются права доступа.
Чтобы получить представление о платформе Android, вам необходимо рассмотреть структуру пакетов Java. Поскольку Android SDK отличается от стандартного дистрибутива, важно знать, какие пакеты поддерживаются и которые не являются [6; 123]. Ниже приведено краткое описание важных пакетов, составляющих Android SDK:
Вышеприведенные пакеты очень важны при работе с Android. Основываясь на этом списке, вы можете получить представление о структуре глубины платформы Android.
В
общем, Android Java API включает более 40 пакетов
и более 700 классов. Тем не менее, все эти
многочисленные пакеты представляют собой
богатую вычислительную платформу, предназначенную
для написания программ для мобильных
устройств.
3. Анализ исходных
данных. Разработка, тестирование и валидация
программного продукта
3.1 Анализ исходных данных
В настоящее время люди сталкиваются с такой проблемой, как нехватка времени. Смартфон помогает человеку решать многие задачи на ходу. Программа, в которой я представляю это приложение для мобильной платформы Android, для покупок, которая в конечном счете сэкономит время и деньги, чтобы пользователь мог купить предметы гардероба. Это собрано, то, что в других приложениях для покупок разбросано или отсутствует вообще:
Обобщая вышесказанное, все, что мы указали, - это усовершенствованная мобильная информационная система. В настоящее время нет единой интерпретации понятия «информационная система» (ИС), установленной классификации информационных систем, общепринятого представления о структуре ИС, поскольку работа по созданию информационных систем проводилась параллельно в нескольких Направления - системы обработки данных и базы данных; Автоматизированные системы управления и, в первую очередь, автоматизированные информационные системы; Автоматизированные системы научно-технической информации; Автоматизированные системы нормативно-правовой документации, автоматизированные системы нормативно-методического обеспечения управления предприятием; В последнее время были разработаны различные системы специального назначения, такие как экономические информационные системы, в том числе бухгалтерский учет, банковские информационные системы, информационные системы рынка ценных бумаг, системы маркетинговой информации и т. д.
Сам термин "информационные системы" включает два важных понятия - "информация" и "система"[7; 142]. Информация (лат. information - сообщение, разъяснение; лат. informo - придаю вид, формирую, организую) - сведения о лицах, предметах, фактах, событиях, явлениях и процессах независимо от формы их представления. Система (греч. system - целое, составленное из частей соединение) - это совокупность элементов, образующих определенную целостность, единство и взаимодействующих друг с другом для достижения определенной цели.
С точки зрения информатики информационные системы обеспечивают сбор, хранение, обработку, поиск, предоставление информации, необходимой в процессе принятия решений по задачам из любой области. Они помогают анализировать проблемы и создавать новые продукты. Информационная система включает в себя ряд блоков, которые взаимодействуют особым образом друг с другом и объединяются в структуру.
Информационная система - это набор организационных, технических, программных и информационных инструментов, объединенных в единую систему с целью сбора, хранения, обработки и выдачи необходимой информации для выполнения определенных функций.
Современное понимание информационной системы предполагает использование персонального компьютера в качестве основного технического средства для обработки информации. Но, достигнув высокого технологического уровня, мобильные системы в настоящее время стоят на одном уровне с персональным компьютером. Кроме того, техническая реализация информационной системы сама по себе ничего не значит, если не учитывать роль человека, для которого предназначена информационная система. Чем больше пользователей задействовано в системе, тем более глобальными ее функции и возможности.
В Федеральном законе "Об информации, информатизации и защите информации" дается следующее определение:
"Информационная система - организационно упорядоченная совокупность документов (массивов документов) и информационных технологий, в том числе и с использованием средств вычислительной техники и связи, реализующих информационные процессы".
Информационная система в программировании - это подсистема прикладных программ, ориентированная на сбор, хранение, поиск и обработку текстовой и/или фактографической информации, работающей в диалоге с пользователем. В зависимости от предметной области информационные системы могут очень сильно различаться по своим функциям, архитектуре и реализации. Однако мы можем определить ряд общих свойств: информационные системы предназначены для сбора, хранения и обработки информации. Поэтому в основе любого из них лежит среда доступа к хранилищу и доступу к данным.
Информационные системы ориентированы на конечного пользователя, который не обладает высокой квалификацией и областью применения компьютерных технологий. Поэтому клиентские приложения информационных систем должны иметь простой, удобный, легко освоенный интерфейс, который обеспечивает конечного пользователя всеми функциями, необходимыми для работы, но в то же время не позволяет ему выполнять любые ненужные действия.
Рассмотрим какие информационные системы данного класса предлагает наш рынок мобильных приложений: