Dentro de una aplicación, ¿funcionará la actividad y el servicio en el mismo proceso?

Pregunta de Entrevista: ¿En una Aplicación, la Actividad y el Servicio se ejecutan en el mismo proceso o en diferentes procesos? Mi respuesta fue ::: En el mismo proceso.

Pregunta siguiente ::: Si es así, ¿cómo es que la actividad y el servicio se ejecutan al mismo tiempo? Mi respuesta fue ::: El sistema operativo se encargará de la ejecución. (Francamente, no sabía la respuesta).

¿Puede alguien dar una explicación de las preguntas anteriores? Si mi respuesta era incorrecta, ¿cuál es la respuesta correcta?

No hay manera de iniciar una actividad y un servicio que se ejecuten en el mismo proceso (que es el comportamiento predeterminado) al mismo tiempo.

El método onCreate () del servicio se ejecuta en el subproceso principal (UI).

El método onCreate () de la actividad también se ejecuta en el subproceso principal (UI).

La única manera de tener ambos iniciar en más o menos al mismo tiempo es que el servicio se ejecute en un proceso independiente.

Usted puede intentar lanzar pocos hilos y utilizar el semáforo con la bandera más barier.

Si el servicio y la actividad pertenecen a tu aplicación, entonces:

El mismo proceso si no se define de otra manera. Puede crear servicio que se ejecutará en un proceso independiente.

El servicio y la actividad comparten el mismo subproceso. Así que no pueden correr simultáneamente. Pero puede crear nuevos subprocesos para procesar comandos en Service. O utilice IntentService que procesa todos los comandos en el propio subproceso. Algunos métodos de servicio siempre se ejecutan en un subproceso de interfaz de usuario (por ejemplo, onCreate) Entonces, la actividad y el servicio pueden ejecutarse en paralelo (si tiene 2 y más núcleos =).

Ambos pueden trabajar en procesos iguales o diferentes dependiendo de la personalización. Y sí, OS es el responsable de la ejecución de estos dos. Compruebe esto para una explicación detallada: http://developer.android.com/guide/topics/manifest/service-element.html#proc

  • ¿Estoy consiguiendo los pasos correctos para verificar la suscripción de Android de un usuario en la aplicación?
  • Servicio enlazado versus servicio iniciado en Android y cómo hacer ambas cosas
  • Android: Objeto personalizado en AIDL
  • El servicio no se inicia de nuevo después de que la aplicación kill incluso utilice START_STICKY en algún dispositivo
  • ¿Cuándo iniciar y detener el servicio de facturación en la aplicación?
  • Cómo detener un IntentService?
  • Android: Obtener una instancia de un servicio en ejecución
  • Pasar parámetros a GcmTaskService
  • ¿Cómo mantener una aplicación Android funcionando indefinidamente?
  • Android: ¿Cómo ejecutar el servicio cuando la aplicación es visible?
  • Delphi xe10 gps del servicio del androide
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.