Registro y claves de API

Para usar la API de reconocimiento de Google, debes agregar una clave de API de Google a tu aplicación. El tipo de clave de API que necesitas es una clave de API de Android.

Todas las apps para Android están firmadas con un certificado digital del que tienes la clave privada. Para obtener más información sobre los certificados digitales, consulta la guía de Android sobre cómo firmar tu app.

Las claves de API de Android están vinculadas a pares de paquetes de certificados específicos. Solo necesitas una clave para cada certificado, sin importar cuántos usuarios tengas para la app.

Se requieren varios pasos para obtener una clave para tu app. Se describen en detalle en esta guía y se resumen de la siguiente manera:

  1. Obtén información sobre el certificado de tu app.
  2. Registra un proyecto en Google Developers Console y agrega la API de User Context como servicio.
  3. Solicitar una clave.
  4. Agrega la clave a tu app. Para ello, agrega un elemento al manifiesto de la app.

Cómo encontrar la información del certificado de tu app

La clave de API se basa en una forma corta del certificado digital de tu app, que se conoce como su huella digital SHA-1. Para mostrar la huella digital SHA-1 para tu certificado, primero asegúrate de usar el certificado correcto. Es posible que puedas elegir entre los dos certificados siguientes:

  • Certificado de depuración: Las herramientas del SDK de Android generan este certificado automáticamente cuando realizas una compilación de depuración. Utiliza este certificado solo con apps que estés probando. No intentes publicar una app firmada con un certificado de depuración. El certificado de depuración se describe con más detalle en la sección Cómo firmar tu compilación de depuración de la documentación para desarrolladores de Android.
  • Certificado de lanzamiento: Las herramientas del SDK de Android generan este certificado cuando realizas una compilación de lanzamiento. También puedes generar este certificado con el programa keytool. Usa este certificado cuando estés listo para lanzar tu app al mundo.

Para obtener más información sobre keytool, consulta la documentación de Oracle.

Certificado de depuración

Muestra la huella digital del certificado de depuración

Usa el programa keytool con el parámetro -v para mostrar la huella digital SHA-1 de un certificado. Para ello, completa los siguientes pasos:

  1. Busca el archivo de almacén de claves correspondiente a tu depuración. El nombre del archivo es debug.keystore y se crea la primera vez que compilas el proyecto. De forma predeterminada, se almacena en el mismo directorio que los archivos de tu dispositivo virtual de Android (AVD):

    • OS X y Linux: ~/.android/
    • Windows Vista y Windows 7: C:\Users\your_user_name\.android\
  2. Indica la huella digital SHA-1:

    • En Linux o OS X, abre una ventana de terminal y escribe lo siguiente:

      keytool -list -v -keystore ~/.android/debug.keystore -alias androiddebugkey -storepass android -keypass android
    • En Windows Vista y Windows 7, ejecuta lo siguiente:

      keytool -list -v -keystore "%USERPROFILE%\.android\debug.keystore" -alias androiddebugkey -storepass android -keypass android

Debería ver un resultado similar al siguiente:

Alias name: androiddebugkey
Creation date: Jan 01, 2013
Entry type: PrivateKeyEntry
Certificate chain length: 1
Certificate[1]:
Owner: CN=Android Debug, O=Android, C=US
Issuer: CN=Android Debug, O=Android, C=US
Serial number: 4aa9b300
Valid from: Mon Jan 01 08:04:04 UTC 2013 until: Mon Jan 01 18:04:04 PST 2033
Certificate fingerprints:
     MD5:  AE:9F:95:D0:A6:86:89:BC:A8:70:BA:34:FF:6A:AC:F9
     SHA1: BB:0D:AC:74:D3:21:E1:43:07:71:9B:62:90:AF:A1:66:6E:44:5D:75
     Signature algorithm name: SHA1withRSA
     Version: 3
Certificado de lanzamiento

Cómo mostrar la huella digital del certificado de lanzamiento

Usa el programa keytool con el parámetro -v para mostrar la huella digital SHA-1 de un certificado. Para ello, completa los siguientes pasos:

  1. Busca el archivo de almacén de claves correspondiente a tu certificado de lanzamiento. El almacén de claves de lanzamiento no tiene una ubicación ni un nombre predeterminados. Si no especificas uno cuando compilas tu app para el lanzamiento, la compilación deja tu .apk sin firmar y deberás firmarla antes de publicarla. Para el certificado de lanzamiento, también necesitas el alias del certificado, las contraseñas del almacén de claves y el certificado.
  2. Ingresa lo siguiente para enumerar los alias de todas las claves en un almacén de claves:

    keytool -list -keystore your_keystore_name
          
  3. Reemplaza your_keystore_name por la ruta de acceso completamente calificada y el nombre del almacén de claves. Incluye la extensión .keystore. Ingresa la contraseña del almacén de claves cuando se te solicite. Luego, keytool mostrará todos los alias en el almacén de claves.
  4. En una terminal o un símbolo del sistema, ingresa lo siguiente:

          keytool -list -v -keystore your_keystore_name -alias your_alias_name
          
  5. Reemplaza your_keystore_name por la ruta de acceso completamente calificada y el nombre del almacén de claves. Incluye la extensión .keystore.
  6. Reemplaza your_alias_name por el alias que le asignaste al certificado cuando lo creaste.

Debería ver un resultado similar al siguiente:

Alias name: <alias_name>
Creation date: Feb 02, 2013
Entry type: PrivateKeyEntry
Certificate chain length: 1
Certificate[1]:
Owner: CN=Android Debug, O=Android, C=US
Issuer: CN=Android Debug, O=Android, C=US
Serial number: 4cc9b300
Valid from: Mon Feb 02 08:01:04 UTC 2013 until: Mon Feb 02 18:05:04 PST 2033
Certificate fingerprints:
    MD5:  AE:9F:95:D0:A6:86:89:BC:A8:70:BA:34:FF:6B:AC:F9
    SHA1: BB:0D:AC:74:D3:21:E1:43:67:71:9B:62:90:AF:A1:66:6E:44:5D:75
    Signature algorithm name: SHA1withRSA
    Version: 3

En la línea que comienza con SHA1, se incluye la huella digital SHA-1 del certificado. La huella digital es una secuencia de 20 números hexadecimales de dos dígitos separados por dos puntos.

Cómo obtener una clave de API en Google Developers Console

Para comenzar a usar la API de reconocimiento de Google, haz clic en el botón Obtener una clave. Se vincula a Google Developers Console, que te guiará a lo largo del proceso y activará la API de reconocimiento automáticamente.

Obtén una llave

También puedes seguir estos pasos para obtener una clave de API:

  1. Ve a Google Developers Console.
  2. Selecciona un proyecto o crea uno nuevo.
  3. Haz clic en Continuar para habilitar la API de reconocimiento.
  4. En la página "Credenciales", crea una clave de Android y configura las credenciales de la API.

  5. En el diálogo "Crear clave", debes restringir tu uso a las apps para Android. Para ello, ingresa la huella digital SHA-1 y el nombre del paquete de tu app, como se muestra en el siguiente ejemplo:

    BB:0D:AC:74:D3:21:E1:43:67:71:9B:62:91:AF:A1:66:6E:44:5D:75
    
    com.example.android.awareness-example
    
  6. Haz clic en Crear. Tu nueva clave de API de Android aparece en la lista de claves de API de tu proyecto. Una clave de API es una string de caracteres, como la siguiente:

    AIzaSyBdVl-cTICSwYKrZ95LoVuw7dbMuDt1KG0
    

Ahora que tienes una clave de API, puedes agregarla al manifiesto de tu app, como se describe en la guía Cómo comenzar.

Activar API adicionales

La API de reconocimiento te permite acceder a varios tipos de datos contextuales, como balizas. Para usar estos tipos, debes habilitar las API correspondientes en Google Developers Console.

Servicios Métodos de la API de reconocimiento API para habilitar
Pixeles contadores SnapshotApi.getBeaconState(), FenceApi.BeaconFence API de Nearby Messages