Join FlipAndroid.COM Telegram Group: https://t.me/joinchat/F_aqThGkhwcLzmI49vKAiw


¿Por qué no puedo crear varios ID de cliente de OAuth 2.0 para el mismo nombre de paquete?

En el tutorial aquí , se afirma que es perfectamente posible utilizar dos ID de cliente OAuth 2.0 para el mismo nombre de paquete.

Debe crear dos ID de cliente, uno con la huella digital del certificado de liberación y otro con la huella digital del certificado de depuración. Asegúrese de utilizar el mismo nombre de paquete para ambos. Esto permite a los servicios de Play Games reconocer llamadas de sus APK vinculados que están firmados con cualquiera de los certificados

Así que sigo el tutorial en el enlace de arriba: primero vaya a Game Service en la Developer Console , Add a new Game . A continuación, agregar una Linked app con este juego, me obliga a crear un ID de cliente OAuth 2.0. Después de crear el primer ID de cliente con SHA1 de mi clave de liberación, no puedo encontrar ningún botón para crear otro ID de cliente. Así que voy a Cloud Developer Console y descubrí que puedo crear una segunda ID de cliente aquí bajo APIs & auth -> Credentials . debug.keystore SHA1 de mi debug.keystore para este segundo ID de cliente. A continuación, compilar y probar mi juego de ejemplo con la clave de depuración y la clave de liberación.

Sin embargo, después de ejecutar la aplicación e intentar iniciar sesión, el resultado es que sólo se acepta la aplicación que utiliza la clave de liberación (utilizando el primer ID de cliente), mientras que la aplicación que utiliza la clave de depuración (utilizando el segundo ID de cliente) no es aceptado.

A continuación, intento eliminar el ID de cliente de la clave de liberación en la consola de desarrollo de Cloud (para que el ID de cliente de la clave de depuración permanezca como el único ID de cliente allí) y probar mi aplicación de nuevo. Esta vez, la aplicación que utiliza la clave de depuración es aceptada, y la aplicación que utiliza la clave de liberación, por supuesto, no se acepta.

¿Significa esto que no puedo crear varios ID de cliente de OAuth 2.0 para el mismo nombre de paquete?

  • Algunas preguntas sobre OAuth y Android
  • Uso de Google OAuth 2 en dispositivos incrustados basados ​​en Android
  • ¿Por qué el flujo oauth2 nativo de Google requiere secreto de cliente?
  • OAuth / OpenID - ¿Qué debo usar?
  • Implementar OAuth2 con las credenciales de contraseña de propietario de recurso en Android
  • Oauth_callback en Android
  • Android: Google SSO - OAuth o AccountManager? ¿O ambos?
  • Android y OAUTH 2.0
  • 2 Solutions collect form web for “¿Por qué no puedo crear varios ID de cliente de OAuth 2.0 para el mismo nombre de paquete?”

    Como se explica en la nota roja de advertencia en el mismo tutorial :

    Advertencia: no cree nuevos ID de cliente para su juego desde la Consola de desarrolladores de Google. Si lo hace, los servicios de Play Games no asociarán su configuración de juego con el ID de cliente, y esto podría causar errores durante el juego.

    En la parte de Game Console de la Consola para desarrolladores, vaya a 2. Linked Apps y seleccione Link another app y siga las instrucciones allí, dándole un nombre como 'Game Name Debug' y usando su clave de depuración SHA1 (cada otro campo Debe ser el mismo que su aplicación de lanzamiento).

    Una nota adicional:

    Debe especificar un paquete diferente en los servicios de Google Play al vincular la segunda aplicación. Si no especifica un paquete diferente, la sección "Autorizar" no aparecerá. A continuación, en la sección autorizar puede especificar el paquete original (si desea utilizar sólo un paquete para no cambiar los manifiestos). Es un poco engorroso y extraño, pero funciona.

    FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.