Особенности разработки игровых приложений платформы Android

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

Существуют три основные мобильные платформы: Android, iOS и Windows Phone 1. Наш интерес — платформа Android. Android -операционная система (ОС) для мобильных телефонов, планшетных компьютеров и нетбуков, основанная на ядре Linux. Первая её версия была выпущена 21 октября 2008. Основными преимуществами ОС Android являются:

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

• ОС основана на системе с открытым исходным кодом, что позволяет заменить почти все стандартное программное обеспечение телефона на программное обеспечение от сторонних разработчиков, благодаря чему два абсолютно одинаковых с точки зрения аппаратного обеспечения устройства будут предоставлять пользователю абсолютно разный интерфейс;

• большинство приложений для ОС являются бесплатными, что позволяет практически безгранично расширять возможности своего устройства.

Всё это в совокупности делает популярными устройства под управле­нием операционной системы (ОС) Android и актуальным разработку приложений для них. В данной работе представлено игровое приложе­ние для ОС Android.

Особенности разработки приложений для ОС Android

При создании приложений для ОС Android необходимо учитывать следующие особенности, характерные для мобильных устройств:

• ограниченная вычислительная мощность;

• ограниченный объем оперативной памяти;

• ограниченный объем дисковой памяти;

• небольшой экран с невысоким разрешением;

• финансовые затраты на передачу данных;

• относительно низкая скорость передачи данных;

• недостаточно надежные каналы передачи данных;

• ограниченный заряд аккумуляторных батарей.

Правила игры

В работе предлагается приложение, реализующее игру по следующим правилам:

•игровое поле имеет размер 5х5 клеток;

•в середине игрового поля расположено слово из 5 букв;

•два игрока делают ходы по очереди;

•каждый вписывает в свободную клетку букву, чтобы получить слово наибольшей длины, соединяя смежные буквы «змейкой» и задействовав новую букву;

•выигрывает тот, у кого сумма букв во всех словах больше, чем у соперника.

Примеры готовых интересных игр на андроид можно найти на ресурсе http://androidg.info/.

Возможности приложения

В разработанном игровом приложении реализованы следующие воз­можности:

• создание новой игры;

• сохранение начатой игры для продолжения ее впоследствии;

• загрузка и продолжение ранее сохраненной игры;

• два варианта игры: «Два игрока» (играют два человека) и «Один игрок» (играет человек с компьютером);

• проверка правильности ходов пользователя: можно ли использовать введенное слово (есть ли такое слово в базе и не было ли оно использовано ранее), можно ли поставить букву в выбранную пользователем ячейку;

• анимация при попытке вставить букву в недопустимую клетку;

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

• управление игрой посредством сенсорного экрана;

• поддержка игры в альбомной и портретной ориентации;

• настройка игры: включить/отключить звук, выбрать язык игры и пользовательского интерфейса (русский или английский).

База слов и алгоритм поиска

К библиотекам ОС Android относится база данных SQLite, которую использует приложение. Перед установкой приложения на устройство слова хранятся в текстовом файле. В процессе установки они копируют­ся в базу SQLite. Это легковесная встраиваемая реляционная база дан­ных. Она работает как библиотека в контексте приложения, то есть не требует дорогих операций запроса и обмена информацией, как это про­исходит в клиент-серверных базах.

Когда пользователь играет с компьютером, необходимо искать под­ходящее слово. Для поиска слова используется метод ветвей и границ следующим образом:

• построение слов начинаем с каждой занятой клетки и с каждой пустой клетки, куда допустимо вставить букву; помещаем эти клетки в очередь;

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

• достав из очереди комбинацию, проверяем в базе слов, допустима ли она, и если да, то берём всех допустимых соседей последней буквы и заносим их в очередь;

• повторяем предыдущий пункт, пока очередь не пуста, последнее допустимое слово и будет наилучшим;

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

Хранение в таблице всех слов целиком оказалось неэффективным, так как существенно замедляло процесс поиска. Поэтому было принято и реализовано решение хранить слова в виде пары ключ-значение, где ключ — это две первые буквы слова, а значение — это набор всевозмож­ных окончаний. При таком подходе поиск осуществляется быстрее.

Заключение

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

ОС Android позволяет создавать эффективные и эргономичные при­ложения, однако требует от разработчика учитывать ограниченность ре­сурсов мобильного устройства, например:

• ограниченные вычислительные возможности привели к использованию экономного способа хранения слов;

• небольшой экран с невысоким разрешением потребовал усилий пля поддержки операции поворота мобильного устройства;

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

Данные об источниках:

inform

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Этот сайт использует Akismet для борьбы со спамом. Узнайте как обрабатываются ваши данные комментариев.