tengo unas pocas preguntas conectados a Android facturación en la aplicación:facturación integrada en aplicaciones de seguridad y Diseño preguntas
¿Es posible hacer una compra de aplicación no de mercado? Entiendo que sería una vulnerabilidad, pero no tengo la oportunidad de averiguar si es posible o no.
¿Cómo puedo obtener el estado de compra para un producto en particular? Por lo que yo entiendo, se puede hacer utilizando la solicitud
RESTORE_TRANSACTIONS
, pero no se recomienda su uso con mucha frecuencia. Eso no es un problema teórico. Mi aplicación permite a los usuarios comprar contenido utilizando la facturación integrada en la aplicación. El contenido se puede descargar desde un servidor, y el servidor debe permitir la descarga de contenido solo si fue comprado. Pero no puede verificar si el contenido fue comprado o no sin usar una respuesta firmada de Android Market.¿Cómo puedo obtener el precio y la descripción de un artículo de Android Market? Parece que sé la respuesta y es "no hay manera de que se pueda hacer", pero tal vez estoy equivocado. Sería muy útil tener la posibilidad de recuperar el precio del artículo.
Me resulta muy interesante cómo resolvió/resolverá estos problemas en sus aplicaciones. La respuesta a cualquiera de estas preguntas será apreciada.
Gracias por su respuesta! Tengo alguna pregunta adicional. 1) ¿Qué ocurre si mi aplicación se descompila, se modifica y se vuelve a compilar? Será una aplicación no comercial entonces. ¿La facturación en la aplicación dejará de funcionar?2) Es imposible tener un esquema de compra segura cuando almacena información sobre compras en una base de datos. Entonces, estoy desarrollando una aplicación que recibe el archivo de licencia de un servidor y lo reviso localmente. Mi servidor necesita algunos datos firmados para generar una licencia. No puedo pedirle una licencia porque será la vulnerabilidad de un servidor. ¿Cómo debo implementar esto usando la implementación actual de facturación en la aplicación? – Michael
Market realiza un control de firma basado en la clave que utilizó para firmar la aplicación cuando la cargó en el mercado. Dado que la versión modificada no se firmaría con su clave, el mercado la rechazaría. Sin embargo, no hay nada que impida que un atacante determinado modifique el archivo .apk, de modo que omita por completo el proceso IAP y asuma que ha comprado todo. El enlace que proporcioné tiene un enlace a una sección de "seguridad" que cubre la protección contra este tipo de cosas. Para responder a su segunda pregunta, busque en LVL (biblioteca de verificación de licencias). Eso debería cubrir tus necesidades. –
Uso la facturación en la aplicación para comprar contenido que se descarga desde un servidor. Incluso si .apk se modifica, el contenido no se puede descargar sin comprarlo. E incluso si se copia, no se puede usar sin el archivo de licencia. Ciertamente, la verificación de la licencia también se puede modificar, pero es otro problema. No estoy seguro de que Android Market verifique la firma de la aplicación, pero preferiría que sí. ¿Qué pasa con los documentos? Leí toda la documentación de facturación en la aplicación y todo el código fuente de la muestra. Pero las cosas que pregunto no están cubiertas allí. Y LVL no me ayudará porque no se puede usar para vender contenido. – Michael