77228

Разработка приложения для платформы Google Аndroid

Курсовая

Информатика, кибернетика и программирование

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

Русский

2015-02-02

430.36 KB

3 чел.

Санкт-Петербургский государственный университет

Математико-механический факультет

Кафедра системного программирования

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

google android

Курсовая работа студента 444 группы

Морозкова Михаила Андреевича

Научный руководитель:

Замышляев Александр

Выпускник кафедры системного программирования

математико-механического факультета.

Санкт-Петербург

2009

  1.  Постановка задачи

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

Основная задача – разработка клиента игры, основанной на определении местоположения, так что перемещение в игровом мире происходит одновременно с движением в реальном мире посредством сервиса гео-локации, используя одну из современных технологий для мобильной связи (EDGE, 3G, Wi-Fi).

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

  1.  Проблемы

В целях защиты авторских прав и для дальнейшего использования приложений в Android. Market каждое приложение должно быть подписано уникальным ключом и зарегистрированно на официальном сайте. Нечто похожее необходимо и для MapActivity – класса, предоставляемого платформой Android для отображения Google Maps. Для этого используется алгоритм хеширования MD5. Приложения, неподписанные зарегистрированным MD5-отпечатком, не смогут быть установлены и/или запущены на Android-устройствах. Возможно подписание отладочным ключом (debug key), но такие приложения невозможно будет опубликовать в системе распространения Android.Market.

Существует 2 типа подписки: отладочная (debug mode) и релизная (release mode). Для получения уникального ключа и подписания приложения используются 2 стандартные JDK утилиты Keytool и Jarsinger.

Пример генерации уникального ключа и подписание им приложения:

keytool –genkey –v –keystore <name>.keystore –alias <alias_name> –keyalg RSA –validity 100

jarsinger –verbose –keystore <name>.keystore <application name>.apk <alias_name>

 Подробнее о получении ключа и подписке приложения на [1] и [2].

А вот так выглядит в общем виде команда получения необходимого отпечатка сертификата MD5:

 keytool –list –alias <alias_name> -keystore <keystore_name>.keystore 

 Затем полученный ключ должен быть зарегистрирован по адресу [3].

В рамках спецификации необходимо было придерживаться интерфейса iPhone-аналога, но в силу различия набора стандартных элементов управления платформ Android и iPhone было необходимо реализовать некоторые оригинальные элементы управления. К примеру на Android нет такого простого решения, как числовые барабаны на iPhone, вместо них был использован элемент поиска (SeekBar), адаптированный под логарифмическую шкалу.

 

В то же самое время платформа Android  в отличие от iPhone предоставляет возможность доступа к уникальному номеру устройства (DeviceID), который используется в качестве логина при взаимодействии с сервером и получении с него данных.

Платформа Android – очень молодая, ей чуть больше года, что сказывается на помощи начинающим разработчикам: недостаточно примеров кода, документации по особенностям  и основным концепциям. Фактически – это только [4]. Но система предоставляет возможность легкого управления данными, посредством четко выстроенной иерархии.

Ресурсы отделены от исходников кода и представлены в виде XML, Bitmap или Raw файлов, которые компилируются в бинарные во время компиляции приложения с помощью aapt (Android Asset Packaging Tool, компилятор ресурсов в Android). В начальной стадии генерируются обозначения для ресурсов, так чтобы их можно было использовать в коде. Это позволяет компилятору затем удостовериться, что код соответствует объявленным ресурсам.

У каждого приложения должен быть AndroidManifest.xml – файл, предоставляющий системе всю необходимую о приложении информацию, которая необходима до выполнения кода. Здесь указываются пакет, компоненты (Activities – представляют пользовательский интерфейс; Services – фоновые процессы; Recievers – прием/отправка оповещений; ContentProviders – управляют наборами данных, доступных другим приложениям; Intents – содержат информацию о намерениях объекта, который его вызвал). Такое объявление позволяет Android-системе понимать когда какие компоненты и при каких условиях запускать. Так же манифест содержит информацию о разрешениях, которыми должно обладать приложение для доступа к некоторым API, а также взаимодействия с другими приложениями. Помимо разрешений там указываются связанные библиотеки и необходимые Android API.

  1.  Результаты

Разработан интерфейс различных возможных экранов приложения. Переходы между экранами соответствуют предоставленному iPhone-прототипу, будучи адаптированными на платформу Android:

Предоставленная в спецификации диаграмма последовательности экранов начала игры:

Описана внутриигровая логика, отработаны переходы между экранами. Осуществлен удобный и интуитивно понятный интерфейс – простые элементы управления: кнопки (Buttons, ImageButtons), списки (Lists), элементы прокрутки (Scrollbars); управление при помощи сенсорного экрана. Используются стандартные адаптеры (Adapters) и слушатели (Listeners) для обработки пользовательского ввода.

Добавлена поддержка карт (Google Maps) для определения местоположения игроков, которая позволяет игрокам видеть друг друга в игровом мире. Для этого предназначен сервис определения местоположения - Geo-location (Geonames.org в данный момент).

  1.  Литература

  1.  http://developer.android.com/guide/publishing/app-signing.html
  2.  http://code.google.com/intl/ru-RU/android/add-ons/google-apis/mapkey.html
  3.  http://code.google.com/intl/ru-RU/android/maps-api-signup.html
  4.  http://developer.android.com/index.html


 

А также другие работы, которые могут Вас заинтересовать

28444. Массивы. Описание одномерного массива. Ввод – вывод одномерного массива. Обработка одномерных числовых массивов. Описание двумерного массива. Ввод – вывод двумерного массива. Обработка двумерных числовых массивов 30 KB
  Описание одномерного массива. Ввод – вывод одномерного массива. Описание двумерного массива. Ввод – вывод двумерного массива.
28445. Особенности договорных отношений и оформление договорной документации между юридическими лицами и участниками туристской деятельности 29.5 KB
  Договоры с авиа компаниями могут быть трех видов: договор на квоту мест на регулярных авиа рейсах; агентское соглашение; чартер аренда самолета. Договор на квоту мест на регулярных авиа рейсах. Квота мест может быть жесткой или мягкой. При жесткой квоте мест вся ответственность за не реализацию мест падает на туристскую фирму независимо от причины не реализации.
28446. Технология составления и основное содержание туристской документации 43.5 KB
  В набор технологической документации для каждого тура обязательно включаются: технологическая карта туристского путешествия по маршруту; график загрузки туристского предприятия группами туристов на определенное время; информационный листок к путевке туристского путешествия; бланки путевок типовой формы ТУР1 Туристская путевка утвержденной Минфином России; лист бронирования см. Технологическая карта туристского путешествия это документ наглядно и лаконично дающий все необходимые для работы сведения и данные по туру...
28447. Порядок движения документов в организациях социально 32 KB
  Порядок движения документов в организациях социальнокультурного сервиса и туризма. Документооборот д о – это движение документов в организации с момента создания или получения до отправки или передачи их на хранение. Основой структуры любого документооборота является документ комплекс документов связанный процессов управления разных уровней и автоматической обработкой. Единый маршрут для одного вида документов или совокупности документов образует документопоток.
28448. Особенности договорных отношений и оформление договор 33.5 KB
  Турфирмы же туроператоры и турагенты это организации занимающиеся деятельностью по формированию продвижению и реализации или только по продвижению и реализации туристского продукта. В соответствии со статьей 9 Закона о туризме туроператор при формировании и продвижении туристского продукта приобретает право на услуги входящие в тур на основании договоров с лицами предоставляющими отдельные услуги или с туроператором по приему туристов обеспечивающим предоставление всех видов услуг входящих в тур. Порядок реализации туристского...
28450. Связь цен с различными экономическими показателями: спрос, затраты, деятельность конкурирующих предприятий, качество 120.5 KB
  К факторам влияющим на цену относятся: существующий или создаваемый спрос размер понесенных затрат деятельность конкурирующих предприятий ситуация на финансовом рынке установленный стандарт услуг. Это ограничивает прибыль от повышения цены поскольку может оказаться что в результате повышения цен определенное число клиентов откажется от услуг в результате чего продажи упадут Сильное повышение цены может ограничить или ликвидировать спрос. Нельзя рассматривать проблему спроса на гостиничные услуги вне зависимости от ее цены. Повышение...
28451. Гостиничная услуга, ее специфика и составные элементы. Особенности работы гостиничного предприятия 74.5 KB
  Зависимость гостиничных услуг от целей путешествия объясняется тем что решения гостя посетить определенное место основывается как правило не на факторе наличия в этом месте конкретной гостиницы. Колебания спроса непосредственным образом связаны с социальноэкономической и политической обстановкой месторасположения гостиницы. работа персонала гостиницы особенно тех кто непосредственно контактирует с клиентами требует умения и желания находить общий язык с самыми разными людьми поскольку среди постояльцев гостиницы бывают богатые и...
28452. Понятие и содержание инновационных процессов. Сущность и виды инноваций. Модель инновационной деятельности 63.5 KB
  В мировой практике и экономической литературе инновации интерпретируются как превращение потенциального научно технического прогресса в реальный воплощающийся в новых продуктах технологиях и услугах. Инновационная деятельность – это деятельность направленная на практическое использование научнотехнических результатов с целью получения нового продукта для удовлетворения потребностей общества. Инновации нововведение – это конечный результат инновационной деятельности получивший применение в виде нового или усовершенствованного продукта...