Разработка мобильного приложения для операционной системы"Android"
Структура и архитектура платформы Android. Особенности создания приложений на языке Java. Принципы построения и работы нейронных сетей. Навигация в среде Eclipse. Построение макета пользовательского интерфейса. Атрибуты, используемые для настройки виджето
Рубрика | Программирование, компьютеры и кибернетика |
Вид | дипломная работа |
Язык | русский |
Дата добавления | 07.08.2018 |
Размер файла | 2,6 M |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Рис.3.2 - меню установки дополнительных инструментов среды Eclipse.
Подготовка к разработке завершена. Теперь следующий этап -- создание приложения.
Создание Android-приложения
Перед тем как создать своё первое приложение, можно создать виртуальное Android-устройство, чтобы быстро тестировать на нём свой свеженаписанный софт. Существует Android Virtual Device (AVD). Это виртуальный смартфон с ОС Android, на котором вы с легкостью сможете запускать созданную вами программу. Как можно заметить, преимущество Android Virtual Device состоит в том, что наглядно можно увидеть как будет работать ваша программа на разных смартфонах с Android, а не покупать весь модельный ряд и тестировать приложение на каждом из них.
Приступим к созданию виртуального устройства Android. Следуем в меню по пути Window > Android SDK and AVD Manager (Рис. 3.3).
Рис. 3.3 - Создание Android Virtual Device
Выбираем New в правой части окна, в появившемся окне вписываем имя виртуального устройства, платформу (допустим Android 5.1), размер карты памяти (допустим 1024 Mb), тип дисплея (допустим HVGA). Затем жмем внизу на кнопку Create AVD. Теперь создадим проект. Для этого идем по пути в меню File > New > Other, в появившемся списке Android > Android Project.
После создания проекта, слева мы видим дерево директорий. Сначала загрузим свою иконку приложения, а точнее 3 иконки под разные варианты. В папку drawable-hdpi грузим png-картинку с прозрачным фоном размером в 72x72, в drawable-mdpi соответственно 48x48 и в drawable-ldpi самую маленькую размером 36x36. Делать это можно простым перетаскиванием файлов прямо на дерево. Следующим шагом будут элементы управления. В моей программе было необходимо всего три элемента интерфейса: ImageView (просто картинка логотип приложения), Button (обновить значение температуры) и TextView (вывод значения температуры). Все эти элементы управления нужно описать в специальном xml-файле. В дереве он расположен по адресу res > layout > main.xml. Во-многом разметка элементов управления сходна с вёрсткой веб-страниц, тут есть и padding, и margin, и аналог align.
Непосредственно код приложения располагается по пути src «ваше название package» «название приложения».java.
По умолчанию создается «болванка» главного класса и от неё уже дальше можно работать.
Заметьте, что когда приложению требуются какие-то системные разрешения, нужно указывать их в манифесте AndroidManifest.xml.
3.2 Описание разработанного приложения
Данное приложение состоит из 3 Activity
· MainActivity
· SearchActivity
· CompressActivity
Рассмотрим роль каждого Activity при работе приложения.
MainActivity запускается самым первым и служит для конфигурирования виджетов и запуска процедуры синхронизации списка изображений.
Синхронизация происходит в отдельном потоке, поэтому пользовательский интерфейс в течении всего процесса синхронизации остается отзывчивым. Рассмотрим процедуру синхронизации подробнее.
В начале, для проверки того, изменился ли список изображений, делается, так называемый, HEAD-запрос. Запрос HEAD обычно применяется для извлечения метаданных, проверки наличия ресурса и чтобы узнать, не изменился ли он с момента последнего обращения.
Заголовки ответа могут кэшироваться. При несовпадении метаданных ресурса с соответствующей информацией в кэше копия ресурса помечается как устаревшая.
При корректном завершении процедуры синхронизации, работа приложения передается SearchActivity.
SearchActivity имеет достаточно простой интерфейс и состоит из поисковой строки и кнопки поиска. Однако это центральная часть всего приложения. Здесь, с одной стороны, происходит взаимодействие с памятью устройства для того, чтобы получить доступ к изображению, с другой стороны проверяется возможность компрессии изображения.
Внешний вид SearchActivity представлен на рисунке 3.4.
При успешном окончании процедуры поиска, работа передается CompressActivity. Его вид представлен на рисунке 3.5.
Как видно из скриншота CompressActivity позволяет сжать выбранное изображение, а так же отобразить затраченное на этот процесс время.
Рис 3.4 - Внешний вид SearchActivity
Рис 3.5 - интерфейс CompressActivity
Заключение
В рамках данной дипломной работы было разработано мобильное приложение для просмотра и компресии изображений.
Исходное приложение было разработано утвержденному заданию и соответствует поставленным задачам, а именно:
ь Исследовано программное обеспечение мобильных устройств;
ь Рассмотрены особенности построения приложений на языке Java ;
ь Разработано приложение для ОС Android;
ь Проведен анализ выполненной работы.
На примере данного приложения можно заметить актуальность данной технологии, а так же подвести итог - использование compressor в совокупности с другими программными средствами позволяет создавать приложения для работы с изображениями.
Хоть приложение и выполняет необходимые функции, ему требуются дополнительные функция декомпрессинга, а так же настройки уровня компрессии.
Список использованных источников
1. Роджерс Р., Ломбардо Д. Android. Разработка приложений. [Текст]/ -- М.: ЭКОМ Паблишерз, 2010. -- 400 с
2. Мобильные телефоны / Платформы телефонов. -- 2010.
3. Android. -- 2010.
4. AndroidSDK. -- 2015.
5. Голощапов А.Л. Google Android программирование для мобильных устройств / А.Л. Голощапов - М. : BHV Санкт-Петербург, 2011. - 1549 с.
6. Хашими С. Разработка приложений для Android [Текст]/ С. Хашими. - М.: Бином, 2011. - 2125 с.
7. Дэрси Л. Android за 24 часа. Программирование приложений под операционную систему Google [Текст]/ Л. Дэрси. - Рид Групп, 2011. - 1499с.
8. Эккель Б. Философия Java, 4-ое издание [Текст]/ Б. Эккель. - М. : Бином, 2009. - 1768 с.
9. Дэрси Л. Разработка приложений для Android-устройств. [Текст]/ Дэрси Л., Кондер Ш. - М.: " Лори", 2014. - 402 с.
10. java.com: Java и вы // Oracle - 2012.
android нейронный сеть виджет
Приложение А
Программный код
apply plugin: 'com.android.library'
apply plugin: 'com.github.dcendents.android-maven'
buildscript {
repositories {
mavenCentral()
jcenter()
}
dependencies {
classpath 'com.github.dcendents:android-maven-gradle-plugin:1.4.1'
classpath 'com.jfrog.bintray.gradle:gradle-bintray-plugin:1.6'
}
}
ext {
bintrayRepo = 'maven'
bintrayName = 'compressor'
publishedGroupId = 'id.zelory'
libraryName = 'Compressor'
artifact = 'compressor'
libraryDescription = 'An android image compressor library'
siteUrl = 'https://github.com/zetbaitsu/Compressor'
gitUrl = 'https://github.com/zetbaitsu/Compressor.git'
libraryVersion = '1.0.5'
developerId = 'zetbaitsu'
developerName = 'Zetra'
developerEmail = 'zetra@mail.ugm.ac.id'
licenseName = 'The Apache Software License, Version 2.0'
licenseUrl = 'http://www.apache.org/licenses/LICENSE-2.0.txt'
allLicenses = ["Apache-2.0"]
}
android {
compileSdkVersion 24
buildToolsVersion "24.0.2"
defaultConfig {
minSdkVersion 9
targetSdkVersion 24
versionCode 5
versionName "1.0.5"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
apply from: 'https://raw.githubusercontent.com/zetbaitsu/JCenter/master/ installv1.gradle'
apply from: 'https://raw.githubusercontent.com/zetbaitsu/JCenter/master/ bintrayv1.gradle'
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
testCompile 'junit:junit:4.12'
compile 'io.reactivex:rxjava:1.1.6'
}
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.settings.overlay;
+
+import android.content.Context;
+import android.text.TextUtils;
+import android.util.Log;
+
+import com.android.settings.R;
+
+/**
+ * Abstract class for creating feature controllers. Allows OEM implementations to define their own
+ * factories with their own controllers containing whatever code is needed to implement
+ * the features. To provide a factory implementation, implementors should override
+ * {@link R.string#config_featureFactory} in their override.
+ */
+public abstract class FeatureFactory {
+ private static final String LOG_TAG = "FeatureFactory";
+ private static final boolean DEBUG = false;
+
+ private static FeatureFactory sFactory;
+
+ /**
+ * Returns a factory for creating feature controllers. Creates the factory if it does not
+ * already exist. Uses the value of {@link R.string#config_featureFactory} to instantiate
+ * a factory implementation.
+ */
+ public static FeatureFactory getFactory(Context context) {
+ if (sFactory != null) {
+ return sFactory;
+ }
+
+ if (DEBUG) Log.d(LOG_TAG, "getFactory");
+ final String clsName = context.getString(R.string.config_featureFactory);
+ if (TextUtils.isEmpty(clsName)) {
+ throw new UnsupportedOperationException("No feature factory configured");
+ }
+ try {
+ sFactory = (FeatureFactory) context.getClassLoader(). loadClass(clsName).newInstance();
+ } catch (InstantiationException | IllegalAccessException | ClassNotFoundException e) {
+ throw new FactoryNotFoundException(e);
+ }
+
+ if (DEBUG) Log.d(LOG_TAG, "started " + sFactory.getClass().getSimpleName());
+ return sFactory;
+ }
+
+ /**
+ * Creates stub controller that makes {@link android.widget.Toast}s.
+ * Will be removed before submitting.
+ */
+ public abstract ToastController createToastController();
+
+ public static class FactoryNotFoundException extends RuntimeException {
+ public FactoryNotFoundException(Throwable throwable) {
+ super("Unable to create factory. Did you misconfigure Proguard?", throwable);
+ }
+ }
+}
Приложение Б
Размещено на Allbest.ru
...Подобные документы
Структура и архитектура платформы Android. Основные достоинства и недостатки операционной системы Android. Среда разработки Eclipse, платформа Java. Подготовка среды разработки. Вкладка "Погода", "Курс валют", "Новости". Просмотр полной новости.
дипломная работа [1,0 M], добавлен 11.07.2014Архитектура операционной системы Android. Инструменты Android-разработчика. Установка Java Development Kit, Eclipse IDE, Android SDK. Настройка Android Development Tools. Разработка программы для работы с документами и для осуществления оперативной связи.
курсовая работа [2,0 M], добавлен 19.10.2014Архитектура операционной системы Android, набор библиотек для обеспечения базового функционала приложений и виртуальная машина Dalvik. Объектно-ориентированный язык программирования Java как инструмент разработки мобильных приложений для ОС Android.
дипломная работа [1,6 M], добавлен 08.07.2015Архитектура и история создания операционной системы Android. Язык программирования Java. Выбор средства для реализации Android приложения. Программная реализация Android приложения. Проведение тестирования разработанного программного обеспечения.
курсовая работа [167,8 K], добавлен 18.01.2017Характеристика работы операционной системы Android, используемой для мобильных телефонов. Создание Android проекта в среда разработки Eclipse. Общая структура и функции файла манифест. Компоненты Android приложения. Способы осуществления разметки.
курсовая работа [1,0 M], добавлен 15.11.2012Разработка приложений для смартфонов на ОС Android для сети аптек "Фармация". Архитектура операционной системы Android. Архитектура и реализация приложения. Его функциональность. Описание работы мобильного приложения. Расчет затрат на создание продукта.
дипломная работа [1,6 M], добавлен 17.06.2017Первое устройство, работающее под управлением Android. Приложения под операционную систему Android. Формат установочных пакетов. Разработка приложений на языке Java. Шаблоны основных пакетов и компонентов Android. Сборка приложений, основанная на Gradle.
курсовая работа [492,0 K], добавлен 08.02.2016Разработка программного обеспечения для платформы Android версии 2.3: информационное приложения для поклонников футбольной команды, с возможностью просмотра событий, статистики и иной информации о команде и ее успехах. Листинг JsonDataManager.java.
дипломная работа [4,1 M], добавлен 24.04.2013Современное состояние рынка мобильных приложений. Основные подходы к разработке мобильных приложений. Обоснование выбора целевой группы потребителей приложения. Этапы проектирования и разработки мобильного приложения для операционной системы Android.
курсовая работа [987,1 K], добавлен 27.06.2019Преимущества операционной системы Android. Проектирование интерфейса приложений. Визуальные редакторы и средства кроссплатформенной разработки. Оптимизация игрового процесса, выбор фреймворка и библиотек. Классификация и характеристика игр по жанрам.
дипломная работа [2,6 M], добавлен 10.07.2017Общие характеристики операционной системы Android. Разработка приложения на основе создания менеджера файлов. Получение с помощью приложения доступа к файлам, хранящимся в "облачном хранилище" в сети Интернет. Расчет стоимости программного обеспечения.
дипломная работа [2,7 M], добавлен 03.04.2015Google Android как программный стек для мобильных устройств, который включает операционную систему, программное обеспечение промежуточного слоя и пользовательские приложения. Структура платформы и ее основные элементы: ядро, программы, каркас приложений.
реферат [600,4 K], добавлен 08.01.2015Средства разработки развивающих и обучающих игр и используемой программы. Среда выполнения и Dalvik. Разработка приложения для платформы Android. Графический интерфейс и обработка касаний экрана. Разработка экранов приложения и их взаимодействия.
дипломная работа [2,1 M], добавлен 18.01.2016Структура Android-приложений. Особенности игрового движка. Алгоритмизация и программирование. Список игровых состояний. Настройка, отладка и тестирование программы. Разработка руководства пользователя. Тестирование инсталляции и отображения элементов.
дипломная работа [4,5 M], добавлен 19.01.2017Обзор мобильной ОС Android. Выбор инструментов и технологий. Проектирование прототипа графического интерфейса. Характеристика и описание пользовательского интерфейса. Проектирование и разработка базы данных. Определение списка необходимых разрешений.
курсовая работа [376,6 K], добавлен 13.09.2017Обзор рынка мобильных приложений, социальных сетей, аналогов. Обзор инструментов разработки: Android Studio, Microsoft visual С# 2012, PostgreeSQL, API Открытых данных Вологодской области, API Социальных сетей. Программный код, разработка интерфейса.
дипломная работа [2,6 M], добавлен 10.07.2017Знакомство с особенностями и этапами разработки приложения для платформы Android. Рассмотрение функций персонажа: бег, прыжок, взаимодействие с объектами. Анализ блок-схемы алгоритма генерации платформ. Способы настройки функционала рабочей области.
дипломная работа [3,4 M], добавлен 19.01.2017Обзор существующих популярных программ для просмотра погоды на ОС Android. Операционные системы современных смартфонов. Ключевые особенности Android, технология Java. Разработка программной части, выбор языка, описание алгоритма, ее логической структуры.
курсовая работа [911,5 K], добавлен 16.04.2014Общая схема работы приложения Android. Разработка обучающего приложения для операционной системы Android, назначение которого - развитие речи посредством произнесения скороговорок. Описание компонентов разработанного приложения, его тестирование.
дипломная работа [1,2 M], добавлен 04.02.2016Разработка открытой мобильной платформы Android. Первое устройство, работающее под управлением Android. Магазин приложений "Google Play". Полноценные программы навигации, редакторы офисных документов и синхронизационные утилиты. Рост вирусной активности.
презентация [58,8 K], добавлен 29.10.2014