Join FlipAndroid.COM Telegram Group: https://t.me/joinchat/F_aqThGkhwcLzmI49vKAiw


¿Esta implementación de la política de Google LVL sería razonablemente segura?

El ServerManagedPolicy predeterminado que Google proporciona en su Biblioteca de verificación de licencias se basa en las respuestas del servidor para determinar el intervalo de revalidación de licencia. Esto resulta en la necesidad de una revalidación cada pocos días, a perpetuidad. Esto no es sólo una molestia para los usuarios, sino que puede ser un problema grave para los usuarios que pasan períodos prolongados sin conectividad. (Acabamos de tener una consulta de un usuario que espera estar sin conexión a Internet durante varias semanas, que es lo que motiva esta pregunta).

En resumen, estoy buscando un algoritmo que logrará dos cosas:

  1. reducir drásticamente los requisitos de conectividad en comparación con ServerManagedPolicy ;
  2. proporcionar el mismo nivel de protección contra la piratería.

En una respuesta a esta pregunta, el algoritmo de política sugerido es ignorar los tiempos proporcionados en la respuesta del servidor de Google y en lugar de usar un período de caducidad LICENCIADO de aproximadamente un mes, con comprobaciones de licencia que se intentan cada pocos días (para extender el período de caducidad si se recibe una respuesta LICENCIADA).

Si bien este enfoque aborda parcialmente el primer objetivo, todavía requiere que los usuarios se conecten una vez al mes durante el uso de la aplicación, por lo que no funcionaría para (al menos uno de) nuestros usuarios.

El algoritmo siguiente logra el primer objetivo, pero no sé sobre el segundo. Cualquier comentario que señale debilidades de este algoritmo, o sugerencias para otro enfoque, sería bienvenido.

  1. En la primera ejecución, haga una comprobación de licencia e insista en una respuesta LICENCIADA antes de proporcionar funcionalidad completa. Una vez recibido, establezca un período de vencimiento relativamente corto (pero más largo que el período de reembolso que Google Play proporciona, actualmente 15 minutos). También registre un período de gracia de unos pocos días más allá de eso.
  2. La aplicación volvería a comprobarse después del período de caducidad de la licencia. Si no se conectó (modo avión, etc.), seguiría funcionando hasta el vencimiento del período de gracia.
  3. Después de la expiración del período de gracia, insista en una segunda respuesta LICENCIADA antes de permitir el funcionamiento normal de la aplicación.
  4. Después de recibir la segunda respuesta LICENCIADA, habilite permanentemente todas las características de la aplicación y nunca se moleste en revisar de nuevo.
  5. Si se recibe una respuesta UNLICENSED en cualquier momento, deshabilite permanentemente la funcionalidad completa. (El usuario puede, por supuesto, volver al paso 1 eliminando todos los datos de la aplicación.)

Puntos adicionales:

  • Se sugirió renunciar a la primera verificación de la licencia y esperar hasta la expiración del período de retorno antes de hacer una verificación de la licencia. El propósito de insistir en la primera respuesta LICENCIADA es evitar la explotación en la que, después de que una comprobación de licencia falla, el usuario simplemente detiene el proceso de la aplicación, borra los datos de la aplicación y reinicia la aplicación. (La aplicación proporciona valor incluso si se puede utilizar durante sólo 15 minutos cada vez.)
  • El propósito de insistir en una segunda respuesta LICENCIADA es moverse por la explotacion buy-run-backup-return-restore.
  • No estoy preguntando si la verificación de licencia de devolución de llamada es una buena idea o no (eso es lo que ofrece Google en lugar de su mecanismo de protección de copia obsoleto). También soy muy consciente de que ninguna protección contra la piratería es infalible y todo el mecanismo de licencias de Google puede ser eludido (en cuyo caso todas las preguntas sobre el diseño de un algoritmo de política son irrelevantes). El punto principal de esta pregunta es el riesgo relativo (para nosotros) y los beneficios (para el usuario) del algoritmo anterior en comparación con otras políticas (como el ServerManagedPolicy ).

  • Los comentarios de los usuarios no aparecen en Google Play
  • Google Play: se ha detectado una mínima API mínima
  • ¿Cómo eliminar un borrador de google play?
  • Aumenta el nivel de la API de Android durante la actualización de la aplicación
  • Aplicación en el mercado de Android: las notificaciones HTTP no vienen
  • Problema con Android IAP, sin OrderID en el objeto de compra
  • Error al ejecutar aapt dump badging - Google Play Store
  • Publicación de aplicaciones pagadas en Android Market - India
  • One Solution collect form web for “¿Esta implementación de la política de Google LVL sería razonablemente segura?”

    En lo que respecta a la piratería, siempre va a haber un riesgo, nada de lo que hagas lo evitará completamente.

    A diferencia de otros riesgos, corre el riesgo de molestar a sus clientes con una aplicación que no pueden utilizar.

    Me esperaba un montón de 0 * comentarios de los clientes infelices que ni siquiera puede utilizar una aplicación que pagaron como se ha deshabilitado, mientras que las personas que recibieron la aplicación de forma gratuita probablemente no tienen interrupciones. Es como comprar un DVD y obtener su cara llena de advertencias de copyright, cuando los piratas reciben una visión ininterrumpida.

    Insistiría en una respuesta con licencia al comprar la aplicación, y no me molestaría con la segunda respuesta. Si alguien puede encontrar su camino alrededor de una respuesta, encontrarán su distancia en torno a la segunda.

    Editar: Estoy de acuerdo con kcoppock que un cheque con licencia 20 minutos después de la compra causaría la menor interferencia a los clientes y evitar el error de reembolso que usted ha mencionado

    FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.