Compra en la aplicación de Google
Aquí se incluyen ejemplos de aplicaciones, casos de uso y estrategias de UX para ayudarle a entender el SDK y a implementarlo en su aplicación. El código fuente de ejemplo y los APKs se pueden descargar en el siguiente enlace.
AmountBoxControl se utiliza para mostrar la información del importe de la compra en la hoja de pago. Requiere un controlId y un currencyCode, y consta de Item(s) y AmountTotal, definidos como sigue y diagramados en la siguiente página:
Cuando se actualiza la hoja personalizada, el comerciante puede añadir nuevos elementos a AmountBoxControl. Por ejemplo, si el usuario selecciona una tarjeta específica en la hoja de pago que el comerciante ofrece, se puede añadir un elemento de descuento a través de updateSheet().
Este control se utiliza para mostrar las opciones de Spinner en una hoja de pago. Al crear el control, se necesitan controlId, title y SheetItemType para distinguir entre los tipos de spinner a mostrar. Su aplicación comercial establece las siguientes propiedades con SpinnerControl.
Este método de la API es una versión ampliada del método updateSheet(sheet) existente que ofrece al comerciante la posibilidad de mostrar un mensaje de error personalizado en el área de autenticación de la hoja de pago. Se puede utilizar para informar al usuario de cualquier escenario de error previsto que se encuentre.
Ejemplo de combustible Kotlin
Este método aceptará la instancia SkuDetailsParams que permite establecer el SkuType y la lista de SKUs para obtener información. El segundo parámetro es un listener de la respuesta real de la librería BillingClient:
Una vez que tenemos este listador reutilizable y una lista extensible, es fácil llenar nuestro adaptador con productos in-app y de suscripción. Podemos simplemente consultar con el mismo SkuDetailsResponseListener para ambos tipos de SKUs:
Si el servicio de Play Store se desconectó por alguna razón, tiene sentido intentar conectarse de nuevo a él. Por ejemplo, podría ocurrir si la aplicación de Play Store se actualizara en segundo plano mientras tu aplicación sigue en marcha.
Compra dentro de la aplicación medio androide
Vas a añadir la facturación a una sencilla aplicación de juego de conducción llamada Trivial Drive. La aplicación ya está construida para ti, así que sólo tendrás que añadir la parte de facturación. Como se muestra en la figura 1, en este juego el usuario conduce y consume gasolina. Eso es todo. El usuario puede comprar gasolina; el usuario puede comprar un coche más bonito; el usuario también puede comprar una suscripción mensual o anual a un bonito fondo de sol, que llamamos «estatus de oro». Ten en cuenta que aunque este codelab menciona las suscripciones, no cubre cómo implementarlas. Para aprender sobre las suscripciones, consulte la aplicación de ejemplo de Classy Taxi.
Cada carpeta es un proyecto independiente de Android Studio. El proyecto codelab-00 contiene el código fuente que utilizaremos como punto de partida. Los proyectos opcionales codelab-NN contienen el estado esperado del proyecto después de cada sección principal de este codelab. Puedes utilizar estos proyectos para comprobar tu trabajo a lo largo del camino.
En este punto, antes de añadir cualquier método al BillingRepository, es bueno crear la base de datos de facturación local de la que depende el repo. Trivial Drive vende gasolina, un coche premium, y un «estado de oro» que le permite conducir con un fondo de sol; por lo que debe crear una base de datos para el seguimiento del derecho del usuario a estos productos.
Eliminar los anuncios de compra in-app android github
Existe la posibilidad de que después de mostrar el aviso al usuario para que realice la compra dentro de la aplicación, estés haciendo algo que provoque que el diálogo/la ventana emergente para la compra dentro de la aplicación se desactive, y de ahí el mensaje. Asegúrate de que no estás haciendo algo así después de mostrar el diálogo de compra dentro de la aplicación y de esperar adecuadamente a que se complete la transacción.
El sku parece un producto gestionado. Puede que ya haya sido comprado. Asegúrate de consumirlo antes de dejar que el usuario lo compre de nuevo. En tu caso sólo se puede comprar una vez (lógicamente, ya que se trata de una actualización de la aplicación a premium). Por lo tanto, debe comprobar si ya se ha comprado y mostrar el mensaje apropiado.