He hecho un APK firmado con un certificado que tiene una validez de 1 día. Mi objetivo es ofrecer una aplicación de prueba a algunas personas, pero impidiéndoles copiar la aplicación después de la fecha de vencimiento. Si copian la aplicación antes de la fecha de caducidad, eso está bien. Pensé que el sistema operativo Android bloquearía cualquier aplicación con un certificado caducado que se instale en el teléfono. Sin embargo, me parece que puedo instalar la aplicación en mi teléfono 2 días después del vencimiento del certificado con el que está firmado. Jarsigner confirma que el certificado ha expirado. ¿Por qué Android permite que una aplicación se instale con un certificado caducado?¿Por qué Android permite que se instale un APK con un certificado caducado?
9
A
Respuesta
2
Entiendo que un desarrollador puede instalarlo a través de adb o treinta partes. Estoy seguro de que si lo cargas al Mercado encontrarás dificultades. En mi humilde opinión, es lógico porque cuando instala aplicaciones fuera del mercado, está asumiendo muchos riesgos que no podría resolver con una aplicación con la firma correcta.
+1
Probablemente tenga razón, y la Guía del desarrollador está equivocada. – Patrick
Cuestiones relacionadas
- 1. ¿Cómo exporto un apk firmado con el certificado de depuración?
- 2. ¿Cómo firmar una APK con más de un certificado?
- 3. ¿Cómo puedo crear un certificado para mi Android Market APK?
- 4. ¿Por qué Task.Delay() permite un retraso infinito?
- 5. ¿Por qué no se permite RVO al devolver un parámetro?
- 6. ¿Por qué TFS no permite que se conecten múltiples colecciones con un solo controlador de compilación?
- 7. archivo APK que se instala dos aplicaciones
- 8. ¿Por qué se permite un literal wchar_t vacío?
- 9. Verificar que la apk de Android no se haya reempaquetado.
- 10. ¿Evita que MacPorts instale un paquete preconstruido?
- 11. ¿Cómo puedo renovar mi certificado de ClickOnce caducado?
- 12. ¿Por qué se permite T() = T()?
- 13. Certificado de ClickOnce caducado: no firma el manifiesto
- 14. ¿Cómo verifico que una aplicación de Android está firmada con un certificado de versión?
- 15. ¿Por qué no se permite System.out.println (super)?
- 16. Obtener detalles del certificado de una apk
- 17. Cómo y qué certificado de servidor usar con autenticación de certificado de cliente SSL de Android
- 18. ¿Por qué esta llamada explícita de un método de Scala permite que se resuelva implícitamente?
- 19. ¿Por qué C# no permite que se bloquee un valor nulo?
- 20. C# System.Windows.Forms.WebBrowser Requiere que se instale Flash
- 21. Por qué Windows no permite que WinSock se inicie mientras se hace pasar por otro usuario
- 22. Android con maven? Apk unknown
- 23. ¿Por qué debería autenticar a un cliente que usa un certificado?
- 24. ¿Requiere Silverlight que se instale .NET Framework?
- 25. ¿Qué permite Android Eclipse LogCat?
- 26. Android APK no se generará al ejecutar
- 27. ¿Por qué este código me permite detectar un depurador?
- 28. ¿Firmando ClickOnce con un certificado?
- 29. Actualización apk cuando el certificado anterior expirará antes de 2033
- 30. ¿Puedo forzar a LWP :: UserAgent a aceptar un certificado SSL caducado?
Eso es interesante. Pero, en general, las personas realizan pruebas limitadas en el tiempo, pero ponen código en la aplicación para que se niegue a ejecutarse después de una fecha determinada, no esperando que el sistema operativo se niegue a instalarlo después de esa fecha. ¿Desea restringir específicamente la fecha de instalación en lugar de la fecha de ejecución? Si es así, podría crear una autorización en la instalación previa a la expiración en la configuración privada y/o en la tarjeta SD, cada una de las cuales tiene diferentes problemas de supervivencia para eliminar/volver a instalar. –
Sí No quiero restringir la fecha de ejecución, la aplicación debe estar completamente disponible para las personas a quienes se la doy, pero no debe reinstalarse. Estoy confundido porque la Guía de Android dice que el sistema prueba la fecha de caducidad del certificado en el momento de la instalación, pero no parece ser el caso. Tal vez podría hacer el trabajo como usted sugirió, pero me gustaría saber por qué no se verifica el certificado. – Patrick
Es posible que haya encontrado un error (o que haya algo sutilmente incorrecto en la prueba). Pero para lograr su objetivo, puede ser más efectivo confiar en algo que usted mismo implemente. Un esquema de autorización de ejecución (probablemente almacenado en caché) tampoco necesita depender de la fecha; podría estar vinculado a una cuenta de usuario que crearía en un servidor en alguna parte. Por cierto, tenga en cuenta que su esquema original, incluso si funcionó, sería trivialmente derrotado al volver a firmar el apk. –