TactilApp Logo

Google Play In-app Billing

Jun 25, 2013 android, in app billing No hay comentarios

in app billing android
Gracias a la SDK para android las compras de servicios dentro de la aplicación son muy fáciles de realizar. En 3 sencillos pasos podrás ofrecer un servicio Premium dentro de tu aplicación.

 

Crear la entrada en Google Play

Desde la cuenta de Google Play Developer, crea una entrada para crear la aplicación y en el apartado de Servicios y APIs podrás encontrar la clave de licencia para la aplicación. Esta clave será la que vincule tu aplicación con la herramienta In-app Billing de Google.

Por otro lado, desde tu IDE, en el fichero AndroidManifest.xml añade la línea

<uses-permission android:name="com.android.vending.BILLING" />

Con esto, añadimos a la aplicación la gestión de las compras. Ahora generamos el primer .apk de la aplicación y lo subimos a la consola de Google Developer. En unas horas ya podremos configurar nuestros servicios de pago.

 

Configurar el producto

Desde la cuenta de Google Play Developer, entramos en Productos integrados en la aplicación y añadimos un nuevo producto. Tenemos diferentes tipos de productos:

Productos administrados

        : Es un producto que sólo se compra una vez de forma permanente. Véase por ejemplo, una funcionalidad Premium.

Productos no administrados

        : Es una compra que se puede realizar múltiples veces. Véase por ejemplo, compra de créditos.

Suscripciones

      : En este caso se vende un servicio periódico. Véase una suscripción mensual a un RSS.

Para más información sobre los tipos de productos, puedes ver http://developer.android.com/google/play/billing/billing_overview.html#prodtypes

Para añadir el producto, una vez hemos seleccionado el tipo, ponemos un identificador, que debe ser único entre todas nuestras aplicaciones.

En la siguiente pantalla, rellenaremos el resto de detalles del producto, como es el nombre que verá el usuario o el precio.

Implementar nuestra aplicación

Una vez ya hemos configurado el producto, queda añadirlo a nuestra aplicación. Por no extendernos demasiado, os recomendamos descargar la aplicación Operadorapp de código abierto que hemos compartido en github: http://github.com/TactilApp/OperadorApp_Android

En primer lugar, añadimos el contenido de los paquetes com.android.vending.billing y com.tactilapp.operadorapp.iabilling, con la base de In-app Billing.

A continuación, implementamos la parte explícita de nuestra aplicación, en este caso, está en la clase CompraDeLaAgenda(que sostiene la lógica de la pantalla) y Paso1Activity(que sostiene la lógica de la compra).

CompraDeLaAgenda deberá inicializar In-app Billing al cargar la actividad de la siguiente forma:

Creando un helper

        que vincule la aplicación con Google Play a través del ID que generamos en el primer paso.

Creando un listener

      que compruebe si el servicio ya ha sido comprado o no para actuar en consecuencia en esta actividad.

Si el usuario solicita la compra del producto, emplearemos el helper creado para solicitar a Google Play la compra, para lo que le indicaremos el id del producto (indicado en el segundo paso) y creamos un listener para realizar las acciones necesarias según la compra se realice correctamente o se produzca algún fallo.

Subir la aplicación final

Finalmente, sólo queda subir la aplicación a Google Play. Debemos tener en cuenta a la hora de probar la aplicación, que primero debemos descargar la aplicación una vez desde Google Play para que el móvil vincule bien la aplicación, sino, no va a funcionar la compra.

Además, si queremos añadir cuentas para probar, desde Google Play Developer, en la pestaña Configuración, en la opción Datos de la cuenta, en el apartado Licencia para pruebas, podrás añadir los correos de la gente que va a probar la aplicación, de forma que la transacción económica no se lleva a cabo.

Sobre Jose Da Rocha

Jose Da Rocha ha escrito 3 artículos en este blog.