Android: habilitar y servicios

Actualmente estoy aprendiendo cómo crear y usar servicios en android. Miré en el androide SDK para más ayuda y encontré el android: enable = [true | Falso

En el SDK se dice que:

Los atributos y deben ser "true" (ya que ambos son de forma predeterminada) para que el servicio se habilite. Si es "false", el servicio está inhabilitado; No se puede instanciar.

Así que me gustaría saber cuál es el interés de / por qué (en general)

  • La configuración de la aplicación se activa como "falso".
  • Configurando el servicio habilitado como "falso".

Digo que si ponemos la habilitación de servicio como falsa no hay manera de llamar a ese servicio, así que ¿por qué creamos ese servicio en primer lugar?

Gracias y lo siento por tan largo mensaje.

Nuevo SAF (Storage Access Framework) es un buen ejemplo de uso de android: enabled attribute. http://developer.android.com/guide/topics/providers/document-provider.html

El atributo android: enabled se establece en un valor booleano definido en un archivo de recursos. El propósito de este atributo es deshabilitar el proveedor en dispositivos con Android 4.3 o inferior. Por ejemplo,

android:enabled="@bool/atLeastKitKat" 

Además de incluir este atributo en el manifiesto, debe hacer lo siguiente: En su archivo de recursos bool.xml bajo res / values ​​/, agregue esta línea:

 <bool name="atLeastKitKat">false</bool> 

En su archivo de recursos bool.xml bajo res / values-v19 /, agregue esta línea:

 <bool name="atLeastKitKat">true</bool> 

La configuración de la aplicación se activa como "falso".

No conozco ninguna buena razón para hacer esto.

Digo que si ponemos la habilitación de servicio como falsa no hay manera de llamar a ese servicio, así que ¿por qué creamos ese servicio en primer lugar?

Generalmente, eso es cierto. android:enabled es, en efecto, heredado para todos los componentes, por lo que no es exclusivo de los servicios. Aquí hay escenarios en los que podría ser utilizado:

  • Actividad : desea tener un segundo icono en el lanzador, pero solo si el usuario compra algo mediante la compra en la aplicación (por ejemplo, actualizaciones a las funciones "Pro")

  • BroadcastReceiver : desea obtener el control en el momento de arranque a través de ACTION_BOOT_COMPLETED , pero no es necesario que todo el tiempo

  • Service y ContentProvider : tienes una familia de aplicaciones, donde solo necesitas (y quieres) una implementación del proveedor de servicios / contenidos, aunque más de una aplicación de tu familia sea instalada por el usuario

En estos casos, es posible que deshabilite el componente ( android:enabled="false" ) en el manifiesto y utilice PackageManager y setComponentEnabledSetting() para habilitarlos posteriormente de forma condicional.

  • ¿Necesita un ejemplo de código sobre cómo ejecutar un servicio Android para siempre en segundo plano incluso cuando el dispositivo está durmiendo, como Whatsapp?
  • Dentro de una aplicación, ¿funcionará la actividad y el servicio en el mismo proceso?
  • ¿Cómo seguir reproduciendo música en segundo plano después de que el usuario haga desaparecer la aplicación?
  • El servicio de Google Geocoder no es viable (Coordenadas a la dirección)
  • El servicio de Android que se estaba ejecutando cuando se apagó el teléfono se inicia automáticamente cuando se inicia el teléfono
  • ¿Debería extender la clase Binder o usar un Messenger?
  • Cómo programar un evento de clics en Android
  • Paho MQTT Android Service Issue
  • Relación entre Foreground Services y PARTIAL_WAKE_LOCK
  • Devoluciones de llamadas del servicio remoto de Android
  • Android: ¿Cómo usar mediaController en la clase de servicio?
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.