В современном мире огромное количество людей имеет в своём распоряжении мобильные устройства. К таким устройствам относятся как телефоны с планшетами, так и ноутбуки. Для каждого устройства используется своя собственная операционная система. Сегодня доступ к операционной системе есть почти у каждого. Нужно всего лишь протянуть руку в карман и достать свой смартфон. Самые популярные операционные системы для мобильных устройств это Android OS и iOS. Все они имеют свои преимущества и недостатки.
Главным преимуществом операционной системы Android является её открытость для разработки. Любой желающий может легко и просто получить права разработчика на своём мобильном телефоне и загружать туда свои приложения через специальные программы. Помощниками для этого являются программы, на которых можно создавать приложения. Такие как Visual Studio, Rad Studio и Delphi. Все эти программы отличаются функционалом и интерфейсом, поддерживают разные языки программирования и обладают различной степенью доступности.
Для программирования приложения под Android нами была выбрана Rad Studio последней официальной версии. Данная программа распространяется на официальном сайте разработчиков Embarcadero. Так как официальная версия стоит весьма дорого мы воспользовались пробным периодом сроком на 1 месяц и тем самым получили стабильное рабочее ПО для разработки.
Когда мы определились где мы будем кодировать наше первое приложение нам оставалось только выбрать язык программирования. На выбор представлялись 2 языка программирования. Это С++ и Delphi.
Наш выбор пал на Delphi он же Object Pascal. C Pascal мы начали своё знакомство ещё в школе и его усовершенствованную и дополненную версию Delphi начали изучать в институте. Его можно освоить на интуитивном уровне, в частности из-за чёткого структурирования проекта. Также в использовании языка Delphi помогает базовое знание английского языка.
Расскажем немного о наших приложениях.
В отличие от OS Windows файловая система Android несколько отличается и для компиляции программы и перевода её в специальный формат APK (Android Package Kit – архив исполняемых файлов) нам необходим специальный компилятор, который является частью в Rad Studio.
Вскоре после начала программирования мы столкнулись с проблемой, которая заключалась в том, что, когда приложение запущенно оно использует динамическую память устройства, и при закрытии стирает переменные. При программировании для Windows эта проблема решается созданием текстового файла, в который эти переменные записываются и откуда позже они вызываются. Данные файлы хранятся рядом с исполняющим файлом, и не требуют сложных манипуляций при обращении к ним.
Однако при переносе проекта на Android файлы мало того, что не сохраняются автоматически в директорию с исполняющим файлом, они в вообще не переносятся на мобильную платформу.
Для этого необходимо вручную подключить перенос данных на телефон, а также знать корневую папку, в которую будет идти сохранение, чтобы в будущем программа обращалась к ней. С помощью этого мы смогли включить в игру таблицу рекордов, которая сохраняет прогресс игрока.
Нашим первым приложением стала игра в жанре RPG (Role Play Gaming – ролевая игра), в котором необходимым элементом стало сохранение достижений игрока и моментов сюжета, где он остановился. Ведь, согласитесь, что, когда вы открываете игру, в которую играли вчера, вы хотели бы продолжить с момента, на котором остановились.
Так же мы реализовали систему передвижения персонажа по локации, взаимодействие с NPC (или НИП - неиграбельный персонаж). Также была реализована последовательность заданий, система улучшения способностей персонажа и довольно простая боевая система. Именно на этом этапе мы и закончили создание данного приложения, но, возможно, в будущем вернёмся к его доработке.
В разработке у нас сейчас находятся такие незатронутые аспекты как внутриигровой магазин, где за внутриигровую валюту можно покупать улучшения персонажа (косметические и качественные), которые позволят быстрее развиваться и побеждать более сильных противников. Параллельно с разработкой механики мы также развиваем сюжет, но так как игра находится на стадии раннего тестирования, она требует улучшений и доработок по многим критериям.
Помимо этого, проходит работа над анимацией персонажа и графической составляющей в целом, что позволит в будущем привлечь больше единомышленников для более серьёзных проектов.
Нашим вторым приложением стала игра, основанная на алгоритмах передвижения и анимации объектов, а именно игра под рабочим названием «Space Rocks». В данном проекте большое внимание было уделено анимация объектов и их синхронизации с рабочим экраном, а главное с действиями пользователя. Как вы можете видеть игра представляет из себя по сути портированную версию старой игры из восьмидесятых на платформу Android. Суть игры абсолютно простая и не несёт в себе глубокого сюжета. Вы – Капитан космического корабля, пробирающегося сквозь поле астероидов и ваша задача не дать погибнуть кораблю. Здесь так же используются алгоритмы сохранения результатов игрока, созданные для реализации соревновательной составляющей. На рисунке мы можем увидеть игровой процесс.
Разработка приложений для Android OS открывает огромный спектр возможностей, начиная от простых текстовых приложений и несложных квестов, заканчивая полноценными симуляторами и стратегиями. Также открывается дорогу в коммерческую сферу использования приложений посредством загрузки их в PlayMarket.
Также разработка приложений именно на Android OS позволит нам как преподавателям в будущем создавать методические пособия для своих уроков, а также в удобной форме передавать знания своим ученикам.