En esta guía para desarrolladores, se muestra cómo compilar y ejecutar un juego C++ en Android que usa la API de los Servicios de juego de Google Play. Antes de comenzar, descarga y configura los siguientes requisitos:
- NDK de Android, revisión 14 o posterior
- SDK de Android v10 o una versión posterior y la versión más reciente de ADT de Eclipse
- El dispositivo debe ejecutar Android 4.0 (nivel de API 14) o una versión posterior.
- La versión más reciente del SDK de Servicios de Google Play
En esta guía para desarrolladores, se usa el kit de desarrollo nativo (NDK) de Android. Si no estás familiarizado con el NDK, consulta la documentación y los ejemplos del NDK antes de continuar.
Paso 1: Configura tu entorno
- Descarga el SDK de Android y el NDK de Android, y extráelos en tu máquina. En tu
entorno, establece
SDK_ROOT
en la ubicación de la carpeta del SDK de Android yNDK_ROOT
en la ubicación de la carpeta del NDK de Android. - Descarga los juegos de muestra de C++. En esta guía para desarrolladores, se hace referencia a la ubicación de las muestras en tu máquina como
SAMPLES_DIR
. - Descarga el SDK de C++ para los servicios de Google Play Juegos. Extrae el SDK en tu máquina de desarrollo. En tu entorno, establece la variable
NDK_MODULE_PATH
para que apunte al directorio anterior al directoriogpg-cpp-sdk
. Debes tener la siguiente estructura de directorios:NDK_MODULE_PATH/ gpg-cpp-sdk/
- Abre Eclipse. Si aún no lo hiciste, dile a Eclipse dónde instalaste el NDK. Para ello, haz clic en Preferences > Android > NDK.
Importa el proyecto de biblioteca de los Servicios de Google Play a tu área de trabajo de Eclipse.
- En Eclipse, haz clic en File > Import > Android > Existing Android Code into Workspace.
- Selecciona
SDK_ROOT/extras/google/google_play_services/libproject/google-play-services_lib
, dondeSDK_ROOT
es la ubicación de tu SDK de Android. - Haz clic en Finish.
Importa el proyecto de ejemplo minimalista a tu área de trabajo de Eclipse.
- En Eclipse, haz clic en File > Import > Android > Existing Android Code into Workspace.
- Selecciona
SAMPLES_DIR/samples-android/minimalist
. - Haz clic en Finish.
Haz clic con el botón derecho en el proyecto MinimalistActivity y, luego, en Properties. En Android, desplázate hacia abajo hasta la sección Library y asegúrate de que se haga referencia correctamente al proyecto google-play-services_lib. De lo contrario, quita la referencia y vuelve a agregarla desde tu lugar de trabajo.
Eclipse compilará automáticamente los orígenes de Java y Android de tu proyecto. Sin embargo, el código nativo de la carpeta jni
se debe compilar por separado. Para hacerlo de forma manual, navega a la carpeta jni
y ejecuta ndk-build
. Recuerda hacerlo después de realizar cualquier cambio en la carpeta jni
.
Ahora, tu proyecto debería compilarse, aunque aún no funcionará. Primero, debes configurar tu juego en Google Play Console.
Paso 2: Configura el juego en Google Play Console
Crea una entrada para tu juego en Google Play Console. De esta manera, se habilitarán los servicios de juegos para tu aplicación y se creará un ID de cliente de OAuth 2.0, si aún no tienes uno.
- Crea una entrada para tu juego siguiendo los pasos que se describen en la sección sobre cómo configurar los Servicios de juego de Google Play.
- En
AndroidManifest.xml
, cambia el atributopackage
de la etiqueta<manifest>
al nombre del paquete que elegiste cuando configuraste Google Play Console. Es posible que debas corregir algunas referencias en todo el proyecto después de realizar este cambio (en particular, en la claseR
generada). - Abre
res/values/ids.xml
y coloca tu ID de app allí. Ten en cuenta que el ID de app no es el mismo que el ID de cliente; es el número que aparece junto al nombre de tu juego en la página Detalles del juego de Google Play Console.
Paso 3: Ejecuta la muestra
Para ejecutar la muestra, necesitarás un dispositivo Android físico o un emulador con los Servicios de Google Play instalados:
- Ejecuta
ndk-build
para compilar el código nativo. - En Eclipse, haz clic en Run > Run As > Android Application y ejecuta la muestra en tu dispositivo.
- Cuando se abra el feed de Samples, presiona cualquier parte de la pantalla. Deberías ver el logotipo de Google Play Juegos. Si configuraste correctamente la app, se te pedirá que accedas.
Opcional: Compila automáticamente con Eclipse
En los siguientes pasos, se muestra cómo configurar Eclipse para que ejecute ndk-build
automáticamente cuando realices cambios en los archivos de la carpeta jni
.
- Haz clic con el botón derecho en el proyecto MinimalistActivity y, luego, en Properties. En la ventana Properties, selecciona el panel Builders.
- Haz clic en Nuevo para agregar un compilador nuevo, selecciona Program y, luego, haz clic en Aceptar.
- En el campo Nombre, ingresa "NDK Builder".
- En Ubicación, haz clic en Explorar el sistema de archivos y navega al directorio
NDK_ROOT
y selecciona el comandondk-build
. - En Working Directory, haz clic en Browse Workspace y selecciona la carpeta del proyecto MinimalistActivity.
- Haz clic en la pestaña Refresh. Asegúrate de que la casilla Actualizar recursos al finalizar esté marcada.
- Selecciona el botón de selección Recursos específicos y, luego, haz clic en Especificar recursos. En el diálogo resultante, selecciona la carpeta
jni
en MinimalActivity. - Haz clic en Apply y, luego, en OK para terminar de crear el compilador.
Ahora, cada vez que edites un archivo dentro de la carpeta jni
, Eclipse ejecutará ndk-build
e imprimirá el resultado en Eclipse Console.