2010-02-08 22 views
5

Actualmente tengo una aplicación gratuita en el mercado y me gustaría ofrecerle una versión paga también. Una vez que esté instalada la versión paga, quiero importar el db y las preferencias compartidas de la versión gratuita para que los usuarios puedan desinstalarla sin perder nada.Importe datos de la aplicación gratuita db a la aplicación de pago db

El problema es este: en mi versión gratuita, no tengo un conjunto android:sharedUserId. Si agrego uno, la identificación de la aplicación en el sistema cambia y ya no puedo acceder a los datos. Ambas aplicaciones se firmarán con el mismo certificado. ¿Cómo puedo importar los datos sin estropear los permisos de la aplicación gratuita?

+0

Ojalá supiera la respuesta a esto también; cambiar el sharedUserId después de liberar la aplicación parece ser un suicidio, pero Google afirma que el problema es "irreproducible": http://code.google.com/p/android/issues/detail?id=1227 –

Respuesta

2

Desafortunadamente, no hay una respuesta fácil.

Puede agregar Service con una interfaz AIDL o ContentProvider en una versión futura de la aplicación gratuita, y luego usar eso para importar los datos en la aplicación de pago. Dependiendo de los datos, eso podría requerir algún mecanismo de "licenciamiento" homebrew para asegurarse de que solo su aplicación paga puede usar las interfaces publicadas.

Cuestiones relacionadas