La compra en la aplicación utiliza una cuenta incorrecta después de la actualización

Escenario típico, el usuario tiene dos cuentas, [email protected] y [email protected], ambas en su dispositivo Android. El usuario compra mi actualización premium en la versión 1.0 usando la cuenta [email protected], luego se actualizan a la versión 1.1 y el código (el código de compras en la aplicación) piensa ahora que están usando la cuenta [email protected], por lo que piensa que la El usuario no ha comprado la actualización premium. Sé que está utilizando la cuenta incorrecta porque me envían su email de la orden y después me dicen que el email incorrecto se enumera en el diálogo de la compra si presionan en la cantidad $. La única solución en este momento es desinstalar y reinstalar utilizando el sitio web de Play Store y la cuenta correcta.

Estoy utilizando el IABHelper de la muestra con algunas correcciones de StackOverflow. Por lo que sé, no hay manera para que yo incluso elegir la cuenta que están utilizando para eso.

¿Alguna idea de lo que podría estar pasando? ¿Le ha pasado esto a alguien más?

El código excedió el límite de longitud en StackOverflow por lo que lo he puesto aquí http://pastebin.com/hLquZ6SP

EDIT: Ahora tengo un usuario que afirma que esto le sucede cada vez que actualiza la aplicación.

EDIT: Esto ocurre mucho más durante las fases de implementación, creo que porque la cuenta que obtiene la actualización por etapas no es la que el usuario compró el IAP con.

Esto parece ser un error en la aplicación Play Store. Consulte esta publicación del Foro de ayuda de Google para ver una solución alternativa a este problema.

Básicamente, la aplicación Play Store a veces asocia la cuenta de Google incorrecta con la facturación en la aplicación de una aplicación. Pero parece funcionar correctamente cuando la instalación de la aplicación se "empuja" desde el sitio web de Play Store (desde una computadora).

Sin embargo, una advertencia: en el hilo vinculado anterior, hay un informe de la solución que corrige la asociación de cuentas y facturación, pero luego vuelve a la cuenta de Google incorrecta después de una actualización de la aplicación. Por lo tanto, no estoy seguro si esta solución es fiable.

Tuve el mismo problema con un número muy pequeño de usuarios también.

Es imposible controlar en el código, que cuenta se utiliza para la validación de compra. Cuando esto sucede, pido a los usuarios que seleccionen la cuenta que compraron una extensión en la aplicación con la aplicación de Google Play, reinician el dispositivo, inician la aplicación y ejecutan la operación de "restaurar la compra". En la mayoría de los casos esto ayuda. Si no lo hace, entonces necesitan usar Google ui web de Google, casi como lo describió.

También tengo que admitir, que la mayoría de las cuestiones que he experimentado en 2013, a partir de 2014, y nunca desde entonces. Tal vez Google mejoró esto de alguna manera.

No tiene ninguna manera de especificar en su código qué cuenta de usuario se utilizará para la compra, ya que el sistema operativo / Google Play decide que:

  • Si descarga la aplicación desde Play Store utilizando la cuenta xyz, la misma cuenta será la facturada por las compras relacionadas con su aplicación
  • Si vuelve a instalar la aplicación (reinstalación u otro dispositivo) utilizando otra abc de cuenta, se tratará como el propietario de esa aplicación, por lo tanto las compras de xyz no son visibles en la cuenta abc
  • Si envía el apk a su vez, la cuenta que posee la aplicación será la primera cuenta de Google creada en el dispositivo

Para mí lo que usted está describiendo parece más un problema con algunos clientes que se juega por la forma en que el modelo de IAP de Google funciona. El problema sutil es que a veces los usuarios tienen diferentes cuentas activas en todos los dispositivos, por lo que puede ser difícil notar que en realidad está descargando la aplicación utilizando otra cuenta.

  • No se puede obtener un cumpleaños privado de la cuenta de Google Plus aunque se solicita explícitamente
  • Proguard con google-play-services
  • Admob - El banner muestra un fondo negro y ningún anuncio
  • ¿Realmente necesita comprobar si los servicios de Google Play utilizan AdMob?
  • Android: Google Analytics como parte del servicio de Google Play
  • Android Excepción: LoadedApk: forgetServiceDispatcher: 888 {AdWorker # 2
  • Servicios de Google Play: Terminado con valor de salida no cero 2
  • ¿Cómo puedo verificar los símbolos generados por Android en mi servidor mediante PHP?
  • Uso de los nuevos servicios de Google Play
  • Uso del emulador de Android Studio 2.0 con Google Services
  • No hay ninguna aplicación vinculada asociada con este ID de cliente
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.