You are on page 1of 31

InstalacindelEntornodeprogramacin

ParalainstalacindeAndroidenelEntornoEclipse
debemosseguirvariospasos.
InstalarelJDKdeJava
InstalarEclipse
InstalarelSDKdeandroid
ConfigurarlavariablePATH
ConfigurarEclipseinstalandolasversionesdeAndroidnecesariasyvarios
extras.
Instalarlosdriversdenuestrodispositivoandroidparapoderejecutarsobre
el.
Instalarunemuladorintegrado
Instalarunemuladordeterceros(GennyMotion)

Enhttp://hownet.es/umhandroid/eclipseyandroidsdk/ teneisuna
giadeloquehayqueirhaciendo.

Introduccion

Plataformadedesarrollolibreycodigoabierto.
BasadoenLinux.
Grancantidaddeserviciosdisponibles.
ServiciosGPS
Lectorescdigosbarras
Basededatos
Sensores(posicionamiento,cmara,)
Aplicacioneshechasdecomponentes
Aplicacionestipopuzzle.
Cadapieza(componente)puedereutilizarse.

Multimedia:
Mejorcalidadvisualydesonidoencadanuevaversinde
Android.
Filtrosantialiasingpara2D
Grficos3DconOpenGLacelerado,etc...
Seguridad:
Aldesarrollarunprogramaindicamosquserviciosusar
nuestraaplicacin,paraquealinstalarse,avisealusuariode
dichospermisos.
Datosindependientesentreaplicaciones.
Gestionciclovidaautomtico:
Pensadoparadispositivosconpocosrecursos.
ElS.O.seencargadeliberarmemoriacuandopasamosde
unaappaotra.

Multiplehardware:
Pensadoparamultiplesplataformas,tiposdepantalla,tamaos
pantalla.
Desdetelefonosamicroondaspasandoportelevisoresde46
pulgadashastaautomviles

LenguajesdeProgramacin:
DesarrolloenJavac/c++usandoNDK(Nativedevelopment
kit).

C / C++

Encargadadetraducirelbytecodedelasaplicacionesjava
encdigonativoentendibleporeldispositivo.
Cuandosecompilaaplicacinandroidsegeneranarchivos
.dex(Dalvikexecutables).Eselresultadodecompilar
cdigojavaunidoalaslibrerasnecesariasdevarios
archivos.dex(mediantelaherramientadx).
Sereducetamaoarchivos.dexreutilizandorecursosy
clasesyconviertejuegoinstruccionesjavaenjuego
instruccionesdelamaquina.El.dexsincomprimires
menorque.jarcomprimido

Las aplicaciones Android estn compuestas por un conjunto de componentes


vinculados por el archivo AndroidManifest.xml que indica cmo interactan.
Contiene metainformacin acerca de la aplicacin, como por ejemplo los
requerimientos que debe cumplir la plataforma sobre la que se ejecuta.
UnaaplicacinAndroidestarcompuestaporlossiguientescomponentes(no
necesariamentetodosellos):

Activity (actividad)
BroadcastIntentReceiver(receptordeemisionesdeintents)
Service (servicio)
ContentProvider(proveedordecontenido)
Fragment (fragmentos)
Widgets
Notifications (notificaciones)

Las Activities son la capa de presentacin de la aplicacin, cada


pantalla de nuestra aplicacin ser una subclase de la clase Activity
En una activity haremos uso de elementos de la clase View (vistas)
para generar interfaz de usuario y seremos capaces de responder a
eventos que se realicen sobre ellas.

Puedehaberactivitiessininterfazdeusuario.
Aunque las Activities son independientes, se pueden llamar
entre ellas pasndose parmetros.

Broadcast Intent Receivers o receptor de mensajes es un componente


que se encarga de recibir y reaccionar frente a ciertos mensajes
emitidos por el sistema (solicitados mediante intents)

Los receptores iniciarn automticamente la aplicacin para


responder a un intent que se haya recibido, haciendo que sean
ideales para la creacin de aplicaciones guiadas por eventos.
Una aplicacin puede tener tantos receivers como necesite.
Todos extienden la clase BroadCastReceiver

Los servicios estn diseados para mantenerse ejecutndose sin


depender de ninguna activity.
Extienden la clase Service.

Seutilizanparallevaracaboprocesamientoquedebeser
realizadodemaneraregular,inclusoenelcasoenelque
nuestrasactividadesnoseanvisiblesonisiquieraestnactivas.
Por ejemplo servicios que se conectan a un servidor para ver si ha cambiado alguna
informacin o un reproductor de msica, o actualizando fuentes de informacin,
atender a diversos eventos o activando la visualizacin de notificaciones en una
actividad.

Permiten almacenar y compartir datos entre aplicaciones.


Proporcionan una capa de abstraccin para acceder a datos
almacenados por una aplicacin de modo que sean accesibles a otras.
(bases de datos, ficheros,).
Es como si fuese una API para acceder a los datos de una aplicacin.
Extienden la clase ContentProvider
Los dispositivos Android incluyen de serie un conjunto de proveedores
de contenidos nativos que permiten acceder a datos del terminal,
como por ejemplo los contactos o el contenido multimedia.

Surgen a partir de version 3.0 para solucionar problema de las


multiples pantallas.
Una activity puede estar compuesta de varios fragments.
Por ejemplo visor de correo:
Un fragment con la lista de correos
Otro fragment con el detalle del correo que se ha seleccionado en el
otro.
En pantallas pequeas (mviles) se suele mostrar cada fragment en una
pantalla diferente, en tablets en una sola pantalla se pueden muestran los
dos juntos.

Son mensajes asincronos enviados entre aplicaciones y de/hacia la


misma aplicacin.
Eventos a los que podemos responder (bateria baja, insercion tarjeta
SD) o generar los nuestros propios.
Enviando un intent al sistema declara la intencin de tu aplicacin de
que se lleve a cabo una determinada accin.
El sistema ser el encargado de decidir quin lleva a cabo las acciones
solicitadas.

IntentFilters son componentes que permiten filtrar qu


aplicaciones pueden atender dichos eventos, o dicho de otra
forma, qu aplicaciones pueden recibir qu intents.

Son pequeas aplicaciones con un interfaz grfico reducido que


pueden ser publicadas para su insercin en otras aplicaciones o en la
pantalla principal del dispositivo y que recibirn actualizaciones y
notificaciones peridicas.

Las notificaciones permiten comunicarse con el usuario sin necesidad


de robar el foco de la aplicacin activa actualmente o de interrumpir a
la actividad actual.
Por ejemplo, cuando un dispositivo recibe un mensaje de texto, avisa
al usuario mediante luces, sonidos o mostrando algn icono en la
barra de notificaciones.

Alolargodeunaejecucinnormaldeunaaplicacin,susActivitiespuedenestar
enalgunodelossiguientesestados:
.Activa
Cuandoelusuariovelaactividadypuedeinteractuarconelladesdelapantalla.
Cuandoestlaprimeraenlapiladeejecucin.
.Pausada
Cuandopasaasegundoplanoperoaunestvisible.
Laactividadpausadapierdeelfocodeejecucinperosiguevisible.
Puedesermatadaporelsistemasisenecesitamemoria.
.Parada
Cuandopasaasegundoplanoyestatotalmentetapadaporotraactividad.
Tambienpuedesermatadaporelsistema
.Destruida
Laactividadyanoestdisponible,sehanliberadotodossusrecursos.

Las aplicaciones Android no tienen


casi control sobre su ciclo de vida.
Android decidir cuando una
aplicacin o actividad cambia de
estado o muere
Las aplicaciones tienen que estar
atentas a estos cambios y preparadas
para actuar en cada momento.
Android intenta que el usuario
siempre sea atendido por lo que la
aplicacin activa tendr mas
prioridad, si necesita recursos
matar
otras
actividades
no
prioritarias.
El orden de detencin y eliminacin
de los procesos viene definido por la
prioridad de los mismos.

Procesos Activos
Procesosquecontienen
aplicacionesqueestn
interactuandoconelusuario.
Androidintentaquesulatencia
seamnimaliberandorecursos.
Slosondetenidoscomoltimo
recurso.

Procesos Visibles
Procesosvisiblesperoinactivos.
Porquesuscorrespondientes
aplicacionesseestnmostrando
detrsdeotrasoporqueno
estnrespondiendoaninguna
entradadelusuario.
Estosucedecuandouna
Actividadseencuentra
parcialmenteocultaporotra
actividad(transparenteoqueno
ocupatodalapantalla).
Estosprocesossondetenidostan
solobajocondicionesextremas.

Procesosasociadosa
serviciosenejecucin
ProcesosActivosperonovisibles
Losserviciospermitenqueexista
procesamientosinnecesidadde
queexistaunainterfazde
usuariovisible.
Debidoaqueestosserviciosno
interactandirectamenteconel
usuario,recibenunaprioridad
ligeramenteinferioraladelos
procesosvisibles.
Sinembargosesiguen
considerandoprocesosactivosy
noserndetenidosamenosque
seaestrictamentenecesario.

Procesosinactivos
Procesosquealbergan
actividadesquenisonvisiblesni
seencuentranrealizandoun
procesamiento,niejecutando
ningnservicio.
Elordenenelquesedetendrn
estosprocesosvendr
determinadoporeltiempoque
stosllevaninactivosdesdela
ltimavezquefueronvisibles.

Procesosvacios
Sonelresultadodelintentode
Androiddereteneraplicaciones
enmemoriaunavezquestas
hanterminado.
Conestoconsiguelanzarde
nuevolaaplicacinenmenos
tiempo.

onCreate(Bundle):
Al crear la Activity, Android llama a este
mtodo de nuestra Activity.
Se utiliza para realizar todo tipo de
inicializaciones, como la creacin de la interfaz
de usuario o la inicializacin de estructuras de
datos.
Puede recibir como parmetro, informacin de
estado de la instancia (en una instancia de la
clase Bundle), en caso de haber sido
reanudada desde una actividad que fue
destruida y vuelta a crear.

onStart():
Este mtodo es llamado por Android la
actividad est a punto de ser mostrada al
usuario.

onResume():
Es llamado por Android cuando la actividad va
a comenzar a interactuar con el usuario.
Es un buen lugar para lanzar las animaciones
y la msica.

onPause():
Es llamado por Android cuando la actividad
est a punto de ser lanzada a segundo plano,
normalmente porque otra aplicacin es
lanzada.
Es el lugar adecuado para detener
animaciones, msica o almacenar los datos
que estaban en edicin.

onStop():
Es llamado por Android cuando la actividad ya
no va a ser visible para el usuario.
Ojo si hay muy poca memoria, es posible que
la actividad se destruya sin llamar a este
mtodo, por lo que no es buen lugar para
guardar lo que se estaba editando.

onRestart():
Es llamado por Android cuando la actividad va
a volver a ser representada despus de haber
pasado por onStop().

onDestroy():
Es llamado por Android antes de que la
actividad sea totalmente destruida.
Por ejemplo, cuando el usuario pulsa el botn
<volver> o cuando se llama al mtodo finish().
Ojo si hay muy poca memoria, es posible que
la actividad se destruya sin llamar a este
mtodo.

You might also like