¿Qué es "Stub" y "AIDL" para en java?

Pregunta 1:

Estoy estudiando el servicio de Android y muchas veces veo código como este:

private ISampleService.Stub sampleServiceIf = new ISampleService.Stub(){} 

¿Qué es .Stub ?

Pregunta 2:

Comprobé " AIDL ", pero quiero saber por qué tenemos que usar eso en lugar del archivo de interfaz de Java?

'Stub' es una clase que implementa la interfaz remota de una manera que puedes usarla como si fuera una local. Se encarga de marashalling datos / unmarshalling y envío / recepción a / desde el servicio remoto. El término "stub" se utiliza generalmente para describir esta funcionalidad en otros métodos RPC (COM, Java remoting, etc.), pero puede significar cosas ligeramente diferentes.

El IDL (Interface Definition Language) generalmente es independiente del lenguaje, y en teoría podría generar código C + + o Python. Sin embargo, el Android está basado en Java, por lo que la distinción es sutil. Una diferencia es que sólo puede tener una sola interfaz en un archivo .aidl, mientras que Java permite múltiples clases / interfaces por archivo .java. También hay algunas reglas para los tipos que se admiten, por lo que no es exactamente lo mismo que una interfaz de Java, y no se puede utilizar uno en lugar de AIDL.

Hey, por favor revise este http://developer.android.com/guide/components/aidl.html . Le ayudará a entender el talón y AIDL.

  • Transmisión recibida dos veces
  • SMS Broadcast Receiver no funciona después de reiniciar
  • Mostrando una Snackbar desde dentro de un Servicio
  • Servicio de grabación / procesamiento de llamadas! - Android
  • Android escucha los mensajes del socket del servidor
  • Background Servicio con Firebase childeventlistener no funciona después de unos minutos
  • Ice Cream Sandwich init.rc documentación
  • Recibir llamadas durante una hora usando Twilio
  • Cómo autenticar servicio web sap con ksoap2
  • Cómo obtener datos de un servicio sin consolidar en Android
  • Servicio android onBind SecurityException
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.