La llamada de servicio vuelve a la actividad en android

Tengo un servicio de back ground funcionando. Tengo un cliente que interactúa con el servicio.

Cuando el cliente solicita alguna operación, el servicio lo realiza y debe devolver el resultado a la actividad (cliente).

Sé cómo invocar los métodos de servicio en la actividad y el uso de llamadas de vuelta que podemos lograr lo que quiero hacer. Pero no soy capaz de entender el mecanismo de devolución de llamada y el ejemplo de código proporcionado en demos Api (remoteservice).

¿Puede alguien dar mejor tutorial sobre este servicio de llamada de vuelta o cualquier cosa que es alcanzable mediante el mecanismo más simple.

Gracias de antemano!

Si ayuda, aquí hay dos ejemplos de proyectos que muestran un cliente / servicio remoto con devoluciones de llamada.

También puede utilizar Intents de difusión para enviar información del servicio al cliente.

Aquí está el flujo
Cree su intención de llamar a un servicio. Puede BindService() o BindService() con BIND_AUTO_CREATE

Una vez que el servicio es bond, creará un túnel para hablar con él clientes que es la interfaz de IBinder . Esto es utilizado por su implementación de interfaz AIDL y devolver el IBinder en

 private final MyServiceInterface.Stub mBinder = new MyServiceInterface.Stub() { public int getNumber() { return new Random().nextInt(100); } }; public IBinder onBind(Intent intent) { // TODO Auto-generated method stub Toast.makeText(this, "Service OnBind()", Toast.LENGTH_LONG).show(); return mBinder; } 

Una vez que devuelve el mBinder , ServiceConnection que creó en el cliente se devolverá y obtendrá la interfaz de servicio mediante este

  mConnection = new ServiceConnection() { public void onServiceDisconnected(ComponentName name) { // TODO Auto-generated method stub } public void onServiceConnected(ComponentName name, IBinder service) { // TODO Auto-generated method stub mService = MyServiceInterface.Stub.asInterface(service); }; 

Ahora tienes la interfaz mService para llamar y recuperar cualquier servicio de ese

  • Android: uso de la red en un servicio
  • No puedo encontrar la causa de mi accidente con este seguimiento de pila
  • Android - widget de actualización sobre el servicio con datos de la red. ¿El mejor enfoque?
  • Actualizar Android ListView en Widget
  • ¿Hay una alternativa onBackPressed () para un servicio?
  • Obtener: No se permite iniciar el servicio Intención ... sin permiso Proceso de servicio es malo
  • IOS equivalente al servicio de Android?
  • Servicio de Android y tareas repetitivas que se ejecutan en subprocesos
  • Actividad de Android sin GUI
  • Android - Ejecutar en segundo plano - Service vs. standard java class
  • Cómo saber si el usuario está en la pantalla de bloqueo desde el servicio
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.