¿Ejecutar código en el hilo principal en Android sin acceso a una actividad?

Tengo un servicio de Android que inicia y mantiene un hilo de fondo.

De vez en cuando, el hilo de fondo debe hacer una devolución de llamada en el hilo principal. Estoy perplejo en cuanto a cómo hacer esto.

No puedo llamar a this.runOnUiThread porque "this" es una instancia de Servicio, no de Actividad, y un Servicio no tiene el método runOnUiThread.

Tampoco puedo crear o ejecutar una AsyncTask, porque la documentación de AsyncTask dice que tanto el constructor como el método de ejecución deben invocarse desde el subproceso de la interfaz de usuario.

¿Debo mantener una referencia a la actividad que usa el servicio y llamar a su método runOnUiThread, o hay otra forma de ejecutar algo en el subproceso de la interfaz de usuario?

Gracias.

Respuestas a la pregunta(4)

Su respuesta a la pregunta