¿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.
- Error de facturación en la aplicación
- Android: cómo probar la facturación en la aplicación
- Error de configuración de Sandbox en la aplicación de Android en un ID de Gmail concreto
- ¿Cómo obtener información separada de precios y monedas para una compra integrada en la aplicación?
- ¿Vendiendo Ebooks en androide usando la opción paypal?
¿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.
- Error en la facturación de Android en la aplicación, diciendo "Ya tienes una orden pendiente para este elemento".
- ClassNotFoundException: com.google.android.finsky.billing.lightpurchase.PurchaseParams
- Mostrando precios localizados en la aplicación de Android
- Android inventory.getSkuDetails () devolviendo null
- ConsumerState de la API de desarrolladores de Google Play para Android
- ¿Por qué no se puede construir la muestra de facturación de mercado de Google en una versión de lanzamiento firmada?
- Android InApp Billing: El elemento que solicitó no está disponible para su compra. Inconsistente en una cuenta de Google diferente
- Falla de confiabilidad de la aplicación en la aplicación v3
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
- ¿Cómo se activa una entrada de micrófono en el emulador de Android
- Cordova Error en la compilación sólo para Android: com.android.dex.DexException: Varios archivos dex definen Landroid / support / annotation / AnimRes;