Vender versión premiun

Hola.

Tengo una aplicación que funciona como base de datos. Permite crear diferentes listas y añadir registros a cada una de esas listas para luego hacer gestiones con ellos.

Mi idea:

Vender una versión básica que permita generar una sola lista con limitación de longitud, por ejemplo 150 registros. Y cobrar una suscripción que permita hacer uso de esta aplicación.

Por otro lado, permitir la opción de convertirse a Premium. Esto significa que cambiaría el precio de la suscripción a uno superior y permitiría al usuario crear listas y registros sín límites.

He comprado la extensión in app billing de Taifun, pero la cuestión es que no tengo muy claro cómo hacer.

Se me ocurre hacer una app completa que cuando compruebe que ha modificado la suscripción desbloquee la posibilidad de crear más listas. En ese caso, necesitaría consejo de cómo hacerlo.

También se me ocurre crear dos aplicaciones. Una básica y otra premium, pero no sé si es conveniente, ya que si un usuario decide pasarse a la segunda, ¿Cómo migrarán los datos guardados en la primera lista, hacia la otra aplicación donde puede ampliarla?

Espero que me puedan aconsejar y aclara las dudas.
Gracias

Si has comprado la extensión de Taifun, entonces no te compensa hacer dos apps, ya que entonces habrás tirado el dinero.
La opción que te queda (y aconsejo) es la de desbloquear funcionalidades mediante compras en aplicación.

Deberás usar el método de Purchase (y no el de Consume, ya que este permite que se compre múltiples veces). Crea un producto en Play Console, y haz que un botón llamado “Desbloquear premium” o algo así lo invoque.
Una vez hecho esto, deberás comprobar que se efectuó el pago. Usa el LoadOwnItems, que llamará al evento OwnItemsLoaded, devolviendo una lista de productos comprados con la que podrás comprobar si el usuario lo ha pagado.

Una sugerencia extra es la siguiente optimización. El uso de estos dos últimos bloques require Internet y un tiempo de llamada a los servidores de Google. Deberías almacenar localmente (en TinyDB por ejemplo) el último estado, para que así las funcionalidades funcionen offline y el usuario no tenga que esperar unos segundos a que se verifique su compra.
Eso sí, yo comprobaría cada vez que se inicia la app si realmente se ha comprado usando esos dos bloques, y actualizar la base de datos local.

Luego, en tu código, simplemente comprueba antes de “llamar a las funciones premium” si el usuario ha pagado por ello.


En la página de @Taifun tienes un par de ejemplos muy claros de integraciones:

https://puravidaapps.com/billing.php#example1
https://puravidaapps.com/billing.php#example2
https://puravidaapps.com/billing.php#example3 (este es mediante el modelo de subscripción, por lo que no creo que te interese)

2 Likes

Le voy a echar un vistazo, gracias.

Una cosa. Cuando la app se inicia y comprueba que se ha hecho el pago. ¿Comprueba el pago mensual (de la suscripción) o sólo el pago inicial?

Deberías de comprobar ambos, ya que piensa que el Play Store, cuando haces un pago (aunque sólo sea de compra única), se puede cancelar sin coste en los primeros 30 minutos creo recordar.
Imagina la situación de que un usuario pague por el item, y a los 5 minutos una vez se haya registrado en la app como pagado solicite la devolución. El usuario disfrutaría del premium haber pagado nada.
Lo mismo se aplica a subscripciones.

1 Like

How can I try your database app or learn about what it does and it’s features?
Is there a web link you can provide?

Thanks