Aplicación de Android Service

Estoy escribiendo una suite de software para dispositivos Android que mantendrá un registro de los tiempos de llamadas y otras informaciones de llamadas. Me gustaría que una de las aplicaciones se ejecute como un servicio sin ser iniciado desde una actividad, y me gustaría que se inicialice de inmediato cuando el teléfono se inicia, y permanecer en funcionamiento constantemente, escuchar las llamadas telefónicas, registro de información a una base de datos como necesario. El Servicio deberá presentar un diálogo al usuario al final de cada llamada.

2 preguntas:

  1. ¿Cómo puedo conseguir que el programa (Service) se inicialice automáticamente al arrancar sin necesidad de configurar el usuario o de interactuar?

  2. Tenía la impresión de que no puede instanciar y mostrar diálogos sin usar una actividad. Me gustaría que los diálogos aparezcan sobre lo que el usuario tiene actualmente en la pantalla, y mostrar un diálogo. ¿Hay una manera de hacer una actividad completamente transparente sobre la actividad actual o hay una manera de exhibir diálogos de un servicio?

gracias por adelantado.

¿Cómo puedo conseguir que el programa (Service) se inicialice automáticamente al arrancar sin necesidad de configurar el usuario o de interactuar?

Agregue este permiso a su manifiesto:

<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" /> 

A continuación, agregue un receptor a su manifiesto:

 <receiver android:name="your.package.BootReceiver"> <intent-filter> <action android:name="android.intent.action.BOOT_COMPLETED" /> <category android:name="android.intent.category.HOME" /> </intent-filter> </receiver> 

Crear un receptor en código Java:

 public class BootReceiver extends BroadcastReceiver { @Override public void onReceive(Context context, Intent intent) { // start the service from here } } 

Tenía la impresión de que no puede instanciar y mostrar diálogos sin usar una actividad. Me gustaría que los diálogos aparezcan sobre lo que el usuario tiene actualmente en la pantalla, y mostrar un diálogo. ¿Hay una manera de hacer una actividad completamente transparente sobre la actividad actual o hay una manera de mostrar diálogos de un servicio?

Sí, eso es verdad. Tienes que tener una actividad que muestre el diálogo. Para crear una actividad transparente, agregue el siguiente estilo en su archivo res/values/styles.xml (si no tiene uno, res/values/styles.xml ). Aquí hay un archivo completo:

 <?xml version="1.0" encoding="utf-8"?> <resources> <style name="Theme.Transparent" parent="android:Theme"> <item name="android:windowIsTranslucent">true</item> <item name="android:windowBackground">#00000000</item> <item name="android:windowContentOverlay">@null</item> <item name="android:windowNoTitle">true</item> <item name="android:windowIsFloating">true</item> <item name="android:backgroundDimEnabled">false</item> </style> </resources> 

A continuación, aplique el estilo a su actividad, por ejemplo:

 <activity android:name=".TransparentActivity" android:theme="@style/Theme.Transparent"> ... </activity> 
  • Cómo detener un servicio de Android desde un hilo
  • ¿Por qué mis intenciones no se entregan correctamente?
  • ¿Vincular el servicio a la actividad o fragmento?
  • Android: Leyendo la etiqueta NFC en la clase de servicio
  • ¿Es mejor usar AsyncTask o Service para cargar un archivo en segundo plano?
  • Cómo cancelar un servicio de primer plano de usar la notificación (borrar descartar) o borrar todas las notificaciones?
  • Android: ¿Cómo solucionar la falla de la conexión de la API de Google desde un servicio?
  • Servicio de fondo de stop android después del bloqueo de actividad
  • ¿Cómo puedo guardar datos del servicio de Android?
  • Empleos para GCM Network Manager
  • Diseño de arquitectura Android - ¿Cómo hacerlo bien?
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.