Servicio remoto android dentro de la aplicación vs app separada

Estoy tratando de averiguar los pros y los contras de escribir un servicio remoto android como parte de mi aplicación cliente (utilizando android: process = ": remote") vs hacerlo una aplicación de servicio independiente.

En ambos casos, el servicio estaría funcionando en su propio proceso por separado y tener su propio montón, etc Sin embargo, tiene que haber algunas diferencias cuando lo hacemos una aplicación independiente, ya que tendrá su propia caja de pruebas de la aplicación. He encontrado muchos ejemplos de su uso y enfoques preferidos según los escenarios, pero estoy tratando de entender los detalles técnicos internos de la misma.

¿Alguna buena fuente de información sobre esto?

Editar: ¿Cuál será el impacto en el objeto / contexto de la aplicación en caso de que los procesos de servicio y cliente se ejecuten en la misma aplicación. ¿Será sobrescrito por uno de los procesos? O habrá dos objetos de aplicación para cada proceso que no sonen correctos siendo la parte de una aplicación.

Su pregunta ha sido contestada parcialmente antes. Compruebe aquí:

  • Using android: process = ": remote" recrea el objeto de aplicación android

Pero si todavía piensas en la idea de tener algo funcionando en segundo plano, puedes echar un vistazo en esta referencia:

  • Desarrollo de una aplicación con un servicio de fondo

Tener cosas que funcionan en fondo es claramente no una buena opción. A menos que por cualquier motivo realmente lo necesite. Por lo tanto, tenga cuidado de no molestar al usuario con los servicios de fondo innecesario que no fue activado conscientemente por voluntad propia del usuario. En tal caso, hacer una aplicación independiente, o tipo de característica que será activada por el usuario es un camino más inteligente y seguro para tomar.

Si necesita poder escribir un servicio que puede realizar una comunicación complicada con clientes en procesos remotos (más allá del simple uso de Context.startService para enviar comandos a él), puede utilizar la clase Messenger en lugar de escribir archivos AIDL completos. Si sólo necesita un servicio remoto, debe seguir este tutorial .

  • ¿Puedo obtener datos de preferencias compartidas dentro de un servicio?
  • Alternar entre vista grande y vista normal para notificación de android mediante programación mediante el botón de acción de notificación
  • Maneras simples de interactuar con los servicios?
  • Cuándo usar y cuándo no utilizar un servicio en Android
  • NotificationListenerService para APIs por debajo de 18?
  • ¿Es mala práctica o grosero hacer ContentResolver.setMasterSyncAutomatically en una aplicación android?
  • Cómo saber si mi aplicación es administrada o no
  • ¿Cómo puedo detener el servicio de otra aplicación en Android?
  • Obtener java.lang.ClassCastException: android.os.BinderProxy cada vez que declaro y ejecuto dos servicios
  • Cómo ocultar la interfaz de usuario en android
  • Servicio: onTaskRemoved no llamado si se inició con bindService
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.