Estoy intentando decidir el mejor enfoque para exponer el contenido cifrado almacenado en el teléfono a aplicaciones de terceros. El contenido es confidencial y necesita protección, por lo que solo ciertas aplicaciones pueden acceder a esto. Los enfoques que estoy investigando son IPC y proveedor de contenido. A continuación se muestra lo que creo que son algunos de los pros y contras de ambos para mi situación.Diferencias entre Android IPC y ContentProvider
IPC -
- tipos de respuesta flexible a Pro cliente. Diferentes códigos de error y los niveles de acceso restringido pueden ser devueltos
IPC - de Con
más complicada de implementar que el Proveedor de Contenido
tendría que escribir propia manera de garantizar el acceso satisfacer. Proveedor
contenido - de
Fácil Pro para implementar
Fácil de asegurar el acceso al hacer el permiso definición del proveedor: ProtectionLevel = firma
contenido Proveedor - de
Para proteger el acceso Con, firma clave del proveedor de contenidos debe ser compartida con la aplicación de 3 ª parte que no es ideal.
Flexibilidad limitada en los tipos de resultados devueltos. El proveedor de contenido devuelve solo un objeto Cursor para las columnas que se consultaron.
¿Hay grandes diferencias en el rendimiento y la batería?
¿Se puede ejecutar de forma asíncrona?
¿Algún otro comentario/sugerencia a la lista?
Gracias por sus comentarios commonsware! – Dom
Quizás debería preguntar en otra pregunta, pero ¿hay alguna otra alternativa que deba considerar para exponer mi contenido? ¿Podría usar una forma simple de comunicación basada en el Intento? Si es así, ¿cómo haría esto? Y cualquier pros/contras a esta técnica? – Dom
@Dom: Sí, podría tener un servicio que reciba comandos a través de 'onStartCommand()' y envíe los resultados a través de un 'Messenger' o algo así como un' Intent' extra en el comando. No cambia las características de seguridad. – CommonsWare