Pasar información a un HostApduService desde otro contexto
Esto se ha preguntado antes sin respuestas, por lo que intentaré formular la pregunta de manera un poco diferente. ¿Cuáles son las diversas formas de pasar algunos datos a un Android?Service
sin ser capaz de vincularlo o iniciarlo yo mismo?
Aquí está el problema: tengo unHostApduService
que inicia el sistema operativo en cada transacción con tarjeta NFC. Requiere el permisoandroid.permission.BIND_NFC_SERVICE
, que es un permiso del sistema, por lo que mi aplicación no puede vincularse a él. No quiero dejar los datos en reposo, por lo que todo lo que se escribe en el disco es imposible. Pensé en algunas soluciones posibles, pero son desordenadas o inseguras:
Service
. losHostApduService
se ejecuta durante la transacción de la tarjeta, por lo que no puedo programar la transmisión de manera confiable para que llegue al servicio antes de que comience a funcionar.Ponga la información que quiero pasar en unstatic
campo en alguna parte. Esto es complicado y podría causar problemas de concurrencia, pero es lo que estoy usando actualmente.¿Alguna otra idea? Gracias por adelantado.