¿Cómo migrar de una aplicación Android pagada a una aplicación pagada con facturación en la aplicación?

Actualmente tengo dos versiones de mi aplicación en el mercado de Android, una pagada y otra gratuita. Pero quiero integrar la facturación en la aplicación en mi aplicación gratuita y cobrar a los clientes en una base de suscripción, por un precio inferior al precio actual de la aplicación pagada.

¿Pero cómo debo manejar esto para los clientes existentes? Parece injusto dejarlos pagar de nuevo por el uso de la funcionalidad pagada, mientras que fueron los primeros en adoptar mi solicitud. Idealmente implemento algo que dará a los usuarios existentes acceso a la funcionalidad desbloqueada en mi aplicación gratuita.

¿Alguna idea de cómo lograr esto? Un esbozo de un buen enfoque a tomar es suficiente, no me importa hacer alguna investigación sobre cómo implementar realmente un enfoque de este tipo.

Libere una versión independiente de su aplicación; Utilice la versión de pago como si fuera una clave de licencia para la versión gratuita.

PackageManager manager = getPackageManager(); if (manager.checkSignatures("old.package.name", "new.package.name") == PackageManager.SIGNATURE_MATCH) { //full version } 

Puede conservar tanto las versiones pagadas como las gratuitas / IAB, pero basúdalas en el mismo proyecto de biblioteca para que solo tenga un conjunto de archivos de origen que mantener. El proyecto de biblioteca podría desbloquear todas las funciones actualmente disponibles para los usuarios pagados de la versión de pago (activada, por ejemplo, probando el nombre del paquete de la aplicación) y desbloquear esas mismas funciones para la versión gratuita sólo cuando se haya realizado el pago mediante IAB.

Esto también le permitirá cobrar a los usuarios de la versión de pago por características adicionales más allá de las que estaban presentes cuando pagaron por la aplicación, si se agregaran algunas características verdaderamente significativas en el futuro y quería cobrar una cantidad adicional por esas.

También tendría la ventaja de que sus actuales usuarios pagados no tendría que hacer nada en absoluto; Para ellos parece que no se ha producido ningún cambio. En particular, no tendrían que instalar su aplicación gratuita / IAB, ni pasar por ningún procedimiento de autorización especial.

La desventaja sería que usted tendría que construir y cargar dos proyectos para cada versión. Sin embargo, esto podría ser parcialmente automatizado.

  • Incrementar la versión de la base de datos (por ejemplo, 34 -> 35)
  • En el método SqliteOpenHelper desbloquea tus funciones para usuarios anteriores

Ejemplo:

 public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion){ if(oldVersion != 0 and oldVersion <= 34){ appConf.unlockAllFeatures() } } 
  • Si su aplicación aún no utiliza la base de datos, hágalo en onCreate, pero observe que onCreate se llama a una primera llamada de base de datos

Corregirme si entendí incorrectamente. Usted ha mencionado sobre la suscripción que significa detalles de usuario + base de datos + información adicional?

Si su aplicación no tiene base de datos ni nada que contenga registros de usuarios. Yo sugeriría que lanzar una actualización a la aplicación de pago y permitir sharedpreference o common ini archivo. Utilice la aplicación gratuita para leer el mismo archivo de preferencias compartidas o su propio archivo ini para leer la configuración.

Va para la base de datos le ayudará en el futuro para más actividades de relación con el cliente.

Android dev sitio web cubre este bien.

http://developer.android.com/guide/market/billing/index.html

  • Android IAB. Error - Se requiere autenticación. Debes iniciar sesión en tu cuenta de Google.
  • Prueba de facturación de aplicaciones en otros países
  • Reembolso de facturación de Android en la aplicación
  • ¿Cómo comprobar si un usuario tiene una suscripción (facturación de Android en la aplicación)?
  • Prueba del producto gestionado por puchase en la aplicación
  • Cómo resolver "El elemento que estaba intentando comprar no se pudo encontrar"
  • En la aplicación de facturación android retorno de autenticación se requiere cuando intenta suscribirse al producto
  • podemos probar la aplicación Android de compra en la aplicación a través del emulador de API de GOOGLE
  • Android en la aplicación robotmedia: Restaurar transacciones
  • Compra en la aplicación con el servidor
  • Identifying refunded Play Store descargas
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.