В этом руководстве разработчика показано, как скомпилировать и запустить игру на C++ на Android, использующую API игровых сервисов Google Play. Прежде чем начать, загрузите и настройте следующие требования:
- Android NDK версии 14 или выше.
- Android SDK v10 или выше и последняя версия Eclipse ADT .
- Устройство должно работать под управлением Android 4.0 (уровень API 14) или выше.
- Последняя версия SDK сервисов Google Play.
В этом руководстве для разработчиков используется Android Native Development Kit (NDK). Если вы не знакомы с NDK, прежде чем продолжить, обратитесь к документации и примерам NDK .
Шаг 1. Настройте среду
- Загрузите Android SDK и Android NDK и извлеките их на свой компьютер. В вашей среде установите
SDK_ROOT
в местоположение папки Android SDK, аNDK_ROOT
— в папку Android NDK. - Загрузите примеры игр на C++ . В этом руководстве разработчика расположение образцов на вашем компьютере называется
SAMPLES_DIR
. - Загрузите C++ SDK сервисов Google Play Games . Извлеките SDK на свою машину разработки. В вашей среде установите переменную
NDK_MODULE_PATH
так, чтобы она указывала на каталог над каталогомgpg-cpp-sdk
. У вас должна получиться следующая структура каталогов:NDK_MODULE_PATH/ gpg-cpp-sdk/
- Откройте Затмение. Если вы еще этого не сделали, сообщите Eclipse, где вы установили NDK, нажав «Настройки» > «Android» > NDK .
Импортируйте проект библиотеки сервисов Google Play в рабочую область Eclipse.
- В Eclipse нажмите «Файл» > «Импорт» > «Android» > «Существующий код Android в рабочую область» .
- Выберите
SDK_ROOT/extras/google/google_play_services/libproject/google-play-services_lib
, гдеSDK_ROOT
— это расположение вашего Android SDK. - Нажмите «Готово» .
Импортируйте минималистичный пример проекта в рабочее пространство Eclipse.
- В Eclipse нажмите «Файл» > «Импорт» > «Android» > «Существующий код Android в рабочую область» .
- Выберите
SAMPLES_DIR/samples-android/minimalist
. - Нажмите «Готово» .
Щелкните правой кнопкой мыши проект MinimalistActivity и выберите «Свойства» . В Android прокрутите вниз до раздела «Библиотека» и убедитесь, что на проект google-play-services_lib правильно указана ссылка. Если нет, удалите ссылку и снова добавьте ее из рабочей области.
Eclipse автоматически скомпилирует исходные коды Java и Android вашего проекта; однако собственный код в папке jni
необходимо компилировать отдельно. Чтобы сделать это вручную, перейдите в папку jni
и запустите ndk-build
. Не забудьте сделать это после внесения каких-либо изменений в папку jni
.
Теперь ваш проект должен скомпилироваться, хотя пока он не будет работать. Сначала вам необходимо настроить игру в консоли Google Play.
Шаг 2. Настройте игру в консоли Google Play.
Создайте запись для своей игры в консоли Google Play. Это активирует игровые сервисы для вашего приложения и создаст идентификатор клиента OAuth 2.0, если у вас его еще нет.
- Создайте запись для своей игры, выполнив действия, описанные в разделе «Настройка игровых сервисов Google Play» .
- В
AndroidManifest.xml
измените атрибутpackage
тега<manifest>
на имя пакета, которое вы выбрали при настройке консоли Google Play. Возможно, вам придется исправить некоторые ссылки в проекте после внесения этого изменения (особенно в сгенерированный классR
). - Откройте
res/values/ids.xml
и поместите туда свой идентификатор приложения. Обратите внимание, что идентификатор приложения не совпадает с идентификатором клиента; это число рядом с названием вашей игры на странице сведений об игре в консоли Google Play.
Шаг 3. Запустите образец
Для запуска примера вам понадобится физическое устройство Android или эмулятор с установленными сервисами Google Play:
- Запустите
ndk-build
для компиляции собственного кода. - В Eclipse нажмите «Выполнить» > «Запустить от имени» > «Приложение Android» и запустите образец на своем устройстве.
- Когда образец откроется, коснитесь любого места экрана. Вы должны увидеть логотип Google Play Games. Если вы правильно настроили свое приложение, вам будет предложено войти в систему.
Необязательно: автоматическая сборка с помощью Eclipse.
Следующие шаги показывают, как настроить Eclipse для автоматического запуска ndk-build
при внесении изменений в файлы в папке jni
.
- Щелкните правой кнопкой мыши проект MinimalistActivity и выберите «Свойства» . В окне «Свойства» выберите панель «Построители» .
- Нажмите «Создать» , чтобы добавить новый Builder, выберите «Программа» , затем нажмите «ОК» .
- В поле «Имя » введите «NDK Builder».
- В разделе «Местоположение» нажмите «Обзор файловой системы» , перейдите в каталог
NDK_ROOT
и выберите командуndk-build
. - В разделе «Рабочий каталог» нажмите «Обзор рабочей области» и выберите папку проекта MinimalistActivity.
- Нажмите вкладку «Обновить» . Убедитесь, что установлен флажок Обновлять ресурсы после завершения .
- Выберите переключатель «Определенные ресурсы» и нажмите «Указать ресурсы» . В появившемся диалоговом окне выберите папку
jni
в разделе MinimalActivity. - Нажмите «Применить» , а затем «ОК» , чтобы завершить создание построителя.
Теперь каждый раз, когда вы редактируете файл в папке jni
, Eclipse запускает ndk-build
и печатает выходные данные на консоли Eclipse.