Beruflich Dokumente
Kultur Dokumente
ACCIONES COFINANCIADAS CON FONDOS COMUNITARIOS DEL FONDO SOCIAL EUROPEO, A TRAVS DEL PROGRAMA OPERATIVO FONDO SOCIAL EUROPEO DE CANARIAS 20072013 CON UN PORCENTAJE DE CONFINANCIACIN DEL 85%.
Da 1 Qu es Android? Actividades e intenciones Da 2 Layouts y controles grficos Recursos, mens y dilogos Da 3 Persistencia de datos y content providers Grficos y animaciones 2D y 3D Da 4 Servicios en segundo plano Control del hardware especial Da 5 App Widgets y Live folders Publicacin de aplicaciones
En muchas ocasiones una aplicacin necesita ejecutar una tarea durante un cierto tiempo sin intervencin del usuario Android soporta esta caracterstica a travs de los servicios. Un servicio es un proceso que se ejecutan en segundo plano sin interaccin con el usuario
Un servicio puede estar recuperando datos de internet cada cierto
tiempo mientras el usuario usa el telfono. El reproductor de msica puede reproducir una cancin mientras el usuario navega por internet.
Servicios locales Servicios que forman parte de la aplicacin. Servicios privados solo accesibles desde su aplicacin Servicio remotos Servicios que forman parte de otras aplicaciones instaladas en el dispositivo y estn accesibles de forma pblica por otras aplicaciones.
Controlador del servicio Es el encargado de arrancar y parar el servicio. Este rol lo puede cumplir cualquier componente Cliente del servicio Se conecta al servicio obteniendo una referencia de su IBinder, dese el que podr hacer peticiones al mismo
public class LocalService extends Service { private int statusCode; private MyServiceBinder myBinder = new MyServiceBinder();
public IBinder onBind(Intent intent) { return myBinder; } public class MyServiceBinder extends Binder implements IMyService { public int getStatusCode() { return statusCode; } }}
llame a stopself
Llamando a bindService()
Realiza un enlace a travs de una conexin con el servicio. Una vez
conectado el cliente se puede comunicar con el servicio La conexin permanece hasta que se llama a unbindService
Son servicios pblicos que pueden ser consultados desde otras aplicaciones La comunicacin es entre procesos y se realiza mediante RPC (Remote Procedure Call) Android aporta un AIDL (Android Interface Definition Language) para definir la interfaz que el servicio expone al cliente. La interfaz AIDL define el contrato entre cliente y servidor. A partir del proceso de compilacin del proyecto eclipse se genera el cdigo del Stub que se usar durante la comunicacin La creacin y uso del servicio remoto es exactamente igual a la creacin y uso de un servicio local exceptuando la comunicacin que en este caso es a travs de RPC
al aidl compiler y generar el cdigo java 3. Implementa el servicio y devuelve la implementacin en el mtodo onBind 4. Registra el servicio al archivo AndroidManifest.xml
public class RemoteService extends Service { int statusCode; IMyRemoteService.Stub myStub = newIMyRemoteService.Stub() { public IBinder onBind(Intent intent) { public int getStatusCode() throws RemoteException { return statusCode; } } }
public IBinder onBind(Intent intent) { return myStub; }
generar el cdigo java 3. Conecta al servicio antes de hacerle peticiones, creando un ServiceConnection
generar el cdigo java 3. Conecta al servicio antes de hacerle peticiones, creando un ServiceConnection 4. Registra en el archivo AndroidManifest .xml el permiso para usar el servicio