Está en la página 1de 229

Título:Rea

l
idadAumen tadaenel Museo
Autores:And rea M. Ga
llego
,LeandroA.Agui
lar
Di
rec tor
:Jav ie
rD íaz
Codirector:IvanaHa rar
i
Carrera:Licencia
turaenInformá
ti
ca,Licen
cia
turaenS
is
temas

LaRea lidadAumen tadaesuncampodeinves t


igaciónydesa rrol
loqueenlosú l
timosañossehav istopo tenc
iado
graciasa lpujantec recim
ientodete léfonosce lulares,concáma rasdev ideoya ltascapac idadesdep rocesam iento.
Entrelasd iscipl
inasque másfue r
tehanapos tadopo rlareal
idadaumen tadaseencuen t
rala museog rafía.Los
museosu t
il
izanes tanuevatecno logíapa rao f
rece rentornos másve rosími
lesquepe rmitana lv
i s
itanteuna mayo r
inme rsión,gene randolapos ibi
lidaddequein teractúendirec
tamen teconlosob jetosexpues tosdeunafo rma
at
rac t
i vayalavezd idác
ti
ca.
E
l MuseodeF ís
i cadelaUNLPesunespac iodeencuen troconlac ienciaabier
toatodoe lpúb l
i co
.A ltratarsede
unámb itodeeducac iónnofo rma l
,o f
recelaven tajadep romove relen t
retenimiento,fac
il
itandoas íunav isión más
amigab ledelaF ísica.
LaRea lidadAumen tada mejoralape rcepc
iónde lusua r
ioylainteraccióncone l mundorea l
.E stacapac idaddela
RealidadAumen tadanos mo t
ivóadesa rro
llarunaap licac
iónquelepe rm i
ta alvis
itanteob tener mayo rinformación
sob relosob jetosenexpos ic
iónden trode l museodefo rmainteract
ivaycump l
iendocon losob jeti
vosde l museo.

D
isposi
t
ivos móv
iles,Rea
l
idadAumen
tada
, Museo
, Sehalogradodesa
rro
l
larunaapl
icac
ióndeRea l
idad
And
roid
,Usabil
idad Aumentadaenelámbi
tode lMuseodeFís
ica.Lacua
l
esparametr
izab
leyextensib
leavar
ios museos
.

Sehaanalizadolausabi
l
idaddelaapl
icación med
ian
te
untestapart
irdelcualseob
tuvie
ronresul
tados
sa
ti
sfacto
riossobreeldesempeñodelsi
stema.

Seaplicóla tecno logíade R eal


idadAumen tadaen Incorpo
rarn
uevasfunc
iona
l
idades enla ap
l
icac
ión
uncon textocient
íf
i co,educativoycu ltu
ralcomoe l móv
il.
MuseodeF ísi
cadelaUNLP .
Sedesa rrol
ló unaap licac
iónmóv ilparae lSis
tema Re
fac
tor
izac
ióngene
ralde
lcód
igo.
Operat
ivoAnd roid
.
Como comp lemento y con e l obje
tivo dereali
zar Me
jora
reladm
in
is
trado
r Web.
una ap licac
ión pa ramet
rizable
, tamb ién se
desarrol
lóunaap li
cac iónWeb.
Sellevó a cabo un aná lis
is de usab i
l
idad dela
ap
licación móvilene lcontex
tode l Museo.

Mayo2013
Ag
radec
imien
tos

Amifamil
ia,pr
inc
ipalmen
te m
ispadres,Yo
liyEduardo,grac
iasporelapoyoincond
icional
,el
es
fuerzoylaconf
ianzaentodoses
tosaños.
AAndrés,micompañerodevida
,graciasportupro
fundoamoryapoyo ,porsermi motorypi
larde
cadadía.
..TEAMO .
Yatodaslaspersonasqueconsuapoyoayuda ronparaquelaf
inal
izacióndeestetrabajosea
pos
ible
,aam igosycompañeros
.
Andrea
.-

Qu
ieroag radece
ratodaslaspersonasque mehanayudadoase
runa mejorpe
rsona
,sine
llasno
hub
ierallegadoaeste momentotanespec
ia
lde miv
ida.A mi
spadresespec
ia
lmente
,atoda mi
fami
lia,amigosycompañe ros
.
Leandro.-

Que
remos po rúlt
imotamb iénagradece
ratodoe lpersonaldelMuseodeFís icacuyaco
laborac
ión
hasidoimportant
ísimaparaverhechorealidadnues
trotrabajo
.Pa ranoso
trosfueunaexpe
rienc
ia
muyenriquecedora,noso
lopo rtodoloaprendidoydesarro
lladosinoporhaberrea
l
izadounapo r
te
importanteaunainsti
tuc
ióntanp res
tig
iosacomoe l MuseodeF ísi
ca.
And
reayLeand ro.-

2
Í
ndicegene
ral

CAP
ÍTULO1 .INTRODUCC IÓN. .
..
...
..
..
...
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
7
1
.1Introducc ióna lates is. ..
...
...
...
..
...
..
..
...
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
7
1
.2El Museo. .
....
...
...
......
....
...
...
...
..
...
..
..
...
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
7
1
.3LaP ropues ta. ..
...
......
....
...
...
...
..
...
..
..
...
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
8
1
.4 Objetivos iniciales. ....
....
...
...
...
..
...
..
..
...
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
9
1
.5E structu rade lp royec to....
...
...
..
...
..
..
...
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
9
CAP
ÍTULO2 .D ISPOS ITIVOS MÓV ILES .
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
11
2
.1Introducc ión. .
...
...
......
....
...
...
...
..
...
..
..
...
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
11
2
.2Arqu i
tec tu rades istemas móv iles...
...
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
12
2
.2.1 Ope rado ra. ..
......
....
...
...
...
..
...
..
..
...
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
12
2
.2.2Red móv il....
......
....
...
...
...
..
...
..
..
...
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
12
2
.2.3D ispos itivo. ..
......
....
...
...
...
..
...
..
..
...
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
13
2
.2.4P la tafo rma. ..
......
....
...
...
...
..
...
..
..
...
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
13
2
.2.5S is temas Ope ra t
ivos. ..
...
..
...
..
..
...
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
14
2
.2.6F ramewo rkdeap licaciones. ..
..
...
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
17
2
.2.7Ap licac iones. .....
....
...
...
...
..
...
..
..
...
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
18
2
.2.8Se rvic ios. ..
...
......
....
...
...
...
..
...
..
..
...
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
18
2
.3E voluc iónde losd ispos it
ivos. ..
...
..
..
...
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
18
2
.3.1P rime ragene rac ión. .
...
...
..
...
..
..
...
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
19
2
.3.2Segundagene rac ión. ..
...
..
...
..
..
...
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
19
2
.3.3T erce ragene rac ión. ..
...
...
..
...
..
..
...
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
20
2
.3.4Cua rtagene rac ión. ...
...
...
..
...
..
..
...
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
21
2
.4Desa rrolloenap licac iones móv iles...
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
22
2
.5Tiposdeap licaciones móv iles....
..
..
...
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
23
2
.5.1SMS. ..
....
...
...
......
....
...
...
...
..
...
..
..
...
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
23
2
.5.2S itioswebpa ra móv iles. .
..
...
..
..
...
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
24
2
.5.3 W idge t Web móv iles. ..
...
..
...
..
..
...
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
25
2
.5.4Ap licac iones Web móv i
les. ..
..
..
...
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
25
2
.5.5Ap licac ionesNa t
ivas. ...
...
..
...
..
..
...
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
26
2
.5.6Juegos. ..
...
...
......
....
...
...
...
..
...
..
..
...
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
27
2
.5.7Compa rac ióndet iposdeap l
icac
iones. .
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
27
CAP
ÍTULO3 .REAL IDADAUMENTADA. ..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
28
3
.1Introducc ión. .
...
...
......
....
...
...
...
..
...
..
..
...
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
28
3
.2Ap l
icac iones. ...
...
......
....
...
...
...
..
...
..
..
...
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
30
3
.2.1 Med icina. ..
...
......
....
...
...
...
..
...
..
..
...
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
30
3
.2.2Fab r
icac iónyrepa ración. .
...
..
..
...
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
31
3
.2.3Ano taciónyv isua lización. .
...
..
..
...
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
31
3
.2.4P lan ificac ióndet rayec tor
iasRobo t...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
31
3
.2.5Ap licac iones M il
ita res. .
...
..
...
..
..
...
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
32
3
.2.6Ap licac ionesA ctua les. .
...
..
...
..
..
...
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
32
3
.3Diag ramadeunaap licac iónderea l
idadaumen tada...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
33
3
.3.1Cap tu rade laescenarea l...
..
..
...
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
33
|
3
.3 .2.1T rack ing med ianted isposit
ivosfís
icos..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
34
3
.3 .2.2T rack ingbasadoenv isión...
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
35
3
.3 .2.3T rack ingh íb r
ido. ...
...
..
...
..
..
...
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
38
3
.3.3 Gene rado rde laescenav irtua
l. .
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
38

3
3
.3.4Comb inac iónde l mundov i
rtualy laescenarea l...
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
.40
3
.4Rea l
idadaumen tadaend ispos it
ivos móv iles. .
..
..
...
..
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
.40
3
.5Cód igos QR. ...
...
...
......
...
.....
...
..
....
...
....
..
..
...
..
....
..
..
...
..
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
.41
3
.6Cód igos QRyRea l
idadAumen tada. ..
..
..
...
..
....
..
..
...
..
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
.43
3
.7Rea l
idadaumen tadaen los museos. .
..
..
...
..
....
..
..
...
..
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
.43
3
.7.1Cód igo QRená reasdeexpos ición....
..
....
..
..
...
..
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
.44
3
.7.2Cód igos QRená reasderese rva. .
..
...
..
....
..
..
...
..
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
.44
3
.7.3Cód igos QRend ifusión. .
..
....
...
....
..
..
...
..
....
..
..
...
..
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
.45
3
.7.4Cód igos QRen lapág inawebde l museo. .
..
...
..
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
.45
3
.7.5Cód igos QRen laB ib l
iotecade l Museo. ..
..
..
...
..
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
.45
3
.7.6Cód igos QReneven tos. ..
....
...
....
..
..
...
..
....
..
..
...
..
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
.45
3
.8Recomendac ionesdeusodecód igos QR. .
....
..
..
...
..
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
.45
3
.9Conc lus ión. .....
...
...
......
...
.....
...
..
....
...
....
..
..
...
..
....
..
..
...
..
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
.46
CAP
ÍTULO4 .ANDRO ID. .
...
.....
...
..
....
...
....
..
..
...
..
....
..
..
...
..
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
.48
4
.1Introducc ión. ...
...
...
......
...
.....
...
..
....
...
....
..
..
...
..
....
..
..
...
..
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
.48
4
.2His toria. .
.........
...
...
......
...
.....
...
..
....
...
....
..
..
...
..
....
..
..
...
..
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
.48
4
.3V ersionesdeAnd ro
id. ...
.....
...
..
....
...
....
..
..
...
..
....
..
..
...
..
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
.49
4
.4Distribuc iónde lasve rsiones. ..
....
...
....
..
..
...
..
....
..
..
...
..
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
.51
4
.5Ca rac te rísticas. .
...
......
...
.....
...
..
....
...
....
..
..
...
..
....
..
..
...
..
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
.52
4
.6Arqui tec tu ra ....
...
...
......
...
.....
...
..
....
...
....
..
..
...
..
....
..
..
...
..
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
.53
4
.7Fundamen tosdelaap licac ión.....
...
....
..
..
...
..
....
..
..
...
..
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
.55
4
.8Componen tesdeAp l
icac ión. .
..
....
...
....
..
..
...
..
....
..
..
...
..
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
.56
4
.8.1A c
tivac ióndecomponen tes. .
...
....
..
..
...
..
....
..
..
...
..
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
.57
4
.8.2P rocesos. ...
...
......
...
.....
...
..
....
...
....
..
..
...
..
....
..
..
...
..
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
.57
4
.8.3C iclodev idadeunaac t
ividad. ....
..
..
...
..
....
..
..
...
..
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
.58
4
.9En to rnodedesa r
rollo. ...
.....
...
..
....
...
....
..
..
...
..
....
..
..
...
..
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
.61
4
.9.1Ins talac iónde lSDK. ....
...
..
....
...
....
..
..
...
..
....
..
..
...
..
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
.61
4
.9.2He rram ien tasdedesa r
rollo. .
...
....
..
..
...
..
....
..
..
...
..
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
.64
4
.10E st ructu radeunp royec toAnd roid. ..
..
..
...
..
....
..
..
...
..
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
.66
CAP
ÍTULO5 .USAB ILIDAD. ....
...
..
....
...
....
..
..
...
..
....
..
..
...
..
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
.70
5
.1In troducc ión ....
...
...
......
...
.....
...
..
....
...
....
..
..
...
..
....
..
..
...
..
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
.70
5
.2 Fundamen tosenHC I. ..
.....
...
..
....
...
....
..
..
...
..
....
..
..
...
..
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
.71
5
.3Clas ificac iónde lasIn terfacesde lusua r
io...
....
..
..
...
..
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
.73
5
.4Independenc iade lD iálogo. ...
..
....
...
....
..
..
...
..
....
..
..
...
..
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
.76
5
.5Componen tesde laIn terfazde lUsua rio...
..
....
..
..
...
..
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
.77
5
.6CiclodeV idade laIn terfazde lUsua rio..
...
..
....
..
..
...
..
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
.77
5
.7 MétricasdeE valuac ióndeunaIn ter
faz :Princip
iosdeN ie
lsen...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
.80
5
.8Interfaces Móv iles. .....
...
.....
...
..
....
...
....
..
..
...
..
....
..
..
...
..
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
.82
5
.8.1Con tex to. .
...
...
......
...
.....
...
..
....
...
....
..
..
...
..
....
..
..
...
..
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
.82
5
.8.2A rqui tec tu rade la info rmac ión. ....
..
..
...
..
....
..
..
...
..
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
.82
5
.8.3 E ld iseñov isual. ..
...
.....
...
..
....
...
....
..
..
...
..
....
..
..
...
..
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
.83
5
.9Diseñodeap licac ionesAnd roid. .
...
....
..
..
...
..
....
..
..
...
..
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
.86
5
.9.1Sopo rta r mú l
tiplespan tal
las. ...
....
..
..
...
..
....
..
..
...
..
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
.86
5
.9.2P rinc ipiosdeD iseño. ...
...
..
....
...
....
..
..
...
..
....
..
..
...
..
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
.92
5
.10E tapadeE valuac iónde laIn terfazde lUsua r
io....
..
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
.94
5
.10.1Técn icasdeeva luac ióndeIn terfazdeusua rio..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
.94
5
.10.2Nuevastendenc iasenHC I....
....
..
..
...
..
....
..
..
...
..
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
.95
CAP
ÍTULO6 .ESPEC IFICAC IÓNDELPROTOT IPO. .
..
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
.97
6
.1Concep tosde laap licac ión. ...
..
....
...
....
..
..
...
..
....
..
..
...
..
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
.97
6
.2Reque rim ien tosde lc l
ien te móv il....
....
..
..
...
..
....
..
..
...
..
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
.97
6
.3Reque rim ien tosde ladm in istradorweb. .
...
..
....
..
..
...
..
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
.98

4
6.4Casosdeuso. .....
......
..
.....
....
...
....
..
..
...
..
..
..
..
..
...
..
..
....
..
..
..
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
99
6.4.1Casosdeusode laap licación móv i
l..
..
..
...
..
..
....
..
..
..
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
99
6.4.2Casosdeusode ladm inistradorweb. ..
..
...
..
..
....
..
..
..
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
99
6.4.3Desc r
ipc iónde loscasosdeusode laapl
icaciónmóvil. .
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
100
6.4.4Desc r
ipc iónde loscasosdeusode ladm in
istradorweb. ..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
101
6.5Arqu itec turade lsis tema. ..
....
...
....
..
..
...
..
..
..
..
..
...
..
..
....
..
..
..
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
103
6.6Diag ramadec lases. ..
..
.....
....
...
....
..
..
...
..
..
..
..
..
...
..
..
....
..
..
..
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
103
6.6.1Desc r
ipc iónde lasc lases. ....
..
..
...
..
..
..
..
..
...
..
..
....
..
..
..
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
106
CAPÍTULO7 .S ISTEMAWEB. ...
...
....
..
..
...
..
..
..
..
..
...
..
..
....
..
..
..
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
109
7.1Arqu itec tura. ...
.....
......
..
.....
....
...
....
..
..
...
..
..
..
..
..
...
..
..
....
..
..
..
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
109
7.2Framewo rkSp ring. ....
..
.....
....
...
....
..
..
...
..
..
..
..
..
...
..
..
....
..
..
..
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
109
7.2.1Inyecc ióndedependenc ias. .
..
..
...
..
..
..
..
..
...
..
..
....
..
..
..
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
109
7.2.2AOP. ..
......
.....
......
..
.....
....
...
....
..
..
...
..
..
..
..
..
...
..
..
....
..
..
..
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
110
7.3Sp ring MVC. ...
.....
......
..
.....
....
...
....
..
..
...
..
..
..
..
..
...
..
..
....
..
..
..
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
110
7.4Sp ringSecu rity. ...
......
..
.....
....
...
....
..
..
...
..
..
..
..
..
...
..
..
....
..
..
..
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..1
11
7.5Hibe rna te. .
......
.....
......
..
.....
....
...
....
..
..
...
..
..
..
..
..
...
..
..
....
..
..
..
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
112
7.6JQue ry. .....
......
.....
......
..
.....
....
...
....
..
..
...
..
..
..
..
..
...
..
..
....
..
..
..
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
112
7.7Creac iónde lp royec to. .....
....
...
....
..
..
...
..
..
..
..
..
...
..
..
....
..
..
..
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
112
7.8Creac iónde lasc lasesde l mode lo..
...
..
..
..
..
..
...
..
..
....
..
..
..
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
113
7.9Creac iónde lcon trolado r. .
....
...
....
..
..
...
..
..
..
..
..
...
..
..
....
..
..
..
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
114
7.10C reac iónde losse rvicios. ...
...
....
..
..
...
..
..
..
..
..
...
..
..
....
..
..
..
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
116
7.11Comun icac ión móv il/servido r.....
..
..
...
..
..
..
..
..
...
..
..
....
..
..
..
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
118
7.12Con figu rac iónde laap licac ión. ..
..
..
...
..
..
..
..
..
...
..
..
....
..
..
..
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
119
7.12.1 Web .xm l......
......
..
.....
....
...
....
..
..
...
..
..
..
..
..
...
..
..
....
..
..
..
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
119
7.12.2app lica t
ionCon text.xm l. ..
....
..
..
...
..
..
..
..
..
...
..
..
....
..
..
..
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
119
7.12.3app lica t
ionCon text- security.xml...
..
..
..
..
...
..
..
....
..
..
..
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
120
7.12.4jdbc .prope rties. .
..
.....
....
...
....
..
..
...
..
..
..
..
..
...
..
..
....
..
..
..
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
121
CAPÍTULO8 .IMPLEMENTAC IÓNDELAAPL ICACIÓN MÓV IL.
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
123
8.1Pro totipode la inte r
faz. ....
....
...
....
..
..
...
..
..
..
..
..
...
..
..
....
..
..
..
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
123
8.2Imp lemen taciónde lp rototipo. ....
..
..
...
..
..
..
..
..
...
..
..
....
..
..
..
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
136
8.2.1C reac iónde lp royec to. ...
...
....
..
..
...
..
..
..
..
..
...
..
..
....
..
..
..
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
136
8.2.2E struc tu rade lp royec to. .
...
....
..
..
...
..
..
..
..
..
...
..
..
....
..
..
..
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
137
8.2.3Componen tesde laap licación. ...
..
..
..
..
..
...
..
..
....
..
..
..
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
138
8.2.4Comun icac ióncone lse rvido r..
...
..
..
..
..
..
...
..
..
....
..
..
..
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
151
8.2.5Imp lemen taciónde loscomponen tesdelaap licac
ión...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
160
8.2.6In te rnac iona l
izac ión. ..
....
...
....
..
..
...
..
..
..
..
..
...
..
..
....
..
..
..
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
218
CAPÍTULO9 .ANÁL IS ISDEUSAB ILIDAD. .
..
..
..
...
..
..
....
..
..
..
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
221
9.1ArmadodeAmb ien te. ..
.....
....
...
....
..
..
...
..
..
..
..
..
...
..
..
....
..
..
..
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
221
9.2 Objetivo. ...
......
.....
......
..
.....
....
...
....
..
..
...
..
..
..
..
..
...
..
..
....
..
..
..
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
221
9.3Pe rf
ilesdeusua r
ios. ..
..
.....
....
...
....
..
..
...
..
..
..
..
..
...
..
..
....
..
..
..
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
221
9.4Encues ta. .
......
.....
......
..
.....
....
...
....
..
..
...
..
..
..
..
..
...
..
..
....
..
..
..
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
222
9.5Aná lisisde losresu ltados. ....
...
....
..
..
...
..
..
..
..
..
...
..
..
....
..
..
..
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
223
9.6Conc lusiones. .
.....
......
..
.....
....
...
....
..
..
...
..
..
..
..
..
...
..
..
....
..
..
..
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
223
CAPÍTULO10 .CONCLUS IONES. ....
..
..
...
..
..
..
..
..
...
..
..
....
..
..
..
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
225
10.1Cump lim ien tode losob jet
ivos inic
iales..
..
..
...
..
..
....
..
..
..
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
225
10.2Resu ltadosob tenidos. ....
....
...
....
..
..
...
..
..
..
..
..
...
..
..
....
..
..
..
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
225
10.3E valuac iónde lp royec to.....
...
....
..
..
...
..
..
..
..
..
...
..
..
....
..
..
..
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
226
10.4T raba jofu turo. ...
......
..
.....
....
...
....
..
..
...
..
..
..
..
..
...
..
..
....
..
..
..
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
226
CAPÍTULO1 1.B IBL IOGRAF ÍA. ...
....
..
..
...
..
..
..
..
..
...
..
..
....
..
..
..
..
..
...
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
227

5
6
Cap
ítu
lo1
.In
troducc
ión

1
.1In
troducc
iónalates
is

Lareal
idadaumen tada(apart
irdeaho rare ferenc
iadacomo RA )esuncampodeinves t
igacióny
desar
rol
lo que enlos úl
timos años se ha visto po
tenciado g
rac
ias al pujan
te crec
imiento de
te
léfonoscelu
lares,concáma rasdev ideoya l
tascapacidadesdep rocesamiento
. Enun mundo
cadavez másglobal
izadodondelasd istanc
iassevue lven máscor
tas
,ydondelasneces idadesde
comunicac
iónson másindispensables
,lainformaciónconsu manejoyaccesoap rop
iados,pasaa
serunvalo
re ins
trumentorespect
ivamen tedeg ranut
i
lidadparaeldesarro
llodelassociedades.

Larealidad aumentada es un pa
rad
igma deinte
racc
ión que ag
regain
formac
ións inté
t
ica ala
rea
lidad. Lareal
idad nosesup r
ime
.El usua
riovelarealidad“aumen
tada” o en
riquec
idacon
ob
jetos3Ds inté
t
icoso in
formac
ióntex
tua
l.
SegúnRona ldAzumalaRA :

● Combina mundorealy mundov


ir
tua
l
● Esin
teract
ivoentiemporeal
● Seregis
traen3dimensiones

Poreste mot
ivo,unsis
temade RAneces itaráun medioparacaptura
rlaimagendel mundoreal
(unacáma radev ideoouna webcam ),una máqu inacapazdec rearimágeness
inté
ticas
,yde
procesa
rlaimagenrea l añad
iendoestainformación(unprocesadorysof
twareespecí
ficopara
esto
)yun med ioparap
royecta
rlaimagenfinal(unapanta
l
la)
.

Has
tahaceunosaños ,a
lgoas íhub ierasidorea
lmen
tecos toso,sob retodoten
iendoencuenta
quenodebenserdispos
i
tivos muyg randesparapode
rtransportarseatodashoras.Sinemba
rgo,
hoyend ía
,cas
itodosnosotrosdisponemosdetodases tastecnologíasenunapa ra
torea
lmente
pequeñoyquesue
leacompaña rnosatodasho ras:e
lte
léfono móv i
l.

Tan
tolosp royec
tosyaex
is
ten
tescomolosquees tánendesa r
rol
loolas merasideasa cercade
pos
iblessis
temasde RAson másqueintere
san tesyplanteannume rosasposib
i
lidades
.Además ,
demuestranquelaRAesunatecnolog
íaconunpo tenc
ia
lsob resa
lien
teyquesegu ramente,juga

unpapel muyimpor
tan
teennuest
rasvidascot
idianasenunfu turono muyle
jano.

Entrelas d iscip
l
inas que másfue r
te han apostado porlarea l
idad aumentadase encuen trala
museog raf
ía .Los museosu ti
l
izan es tanuevatecno logíapa rao frece
ren to
rnos másve rosími
les
que pe rmitan alv is
itante una mayo rinme rs
ión
, gene randola pos ib
il
idad de quein terac
túen
d
irec tamen teconlosob jetos expuestosdeunafo rma a trac
tivay alavezd idáctica. E
l mundo
v
irtualdela RA l
levaa l museo ,loquee l mundorealnopuede ,grac
iasalacapac idaddeinse r
tar
objetosvirtualesenunespac iorea l
. Medianteunaaplicación RAespos ibleaumen tarlacolecc
ión
delosob jetosquesepuedenobse rvarene l Museo
.Laspos ib
il
idadesdean imaciónv i
rtualola
inclusión de e t
iquetasflo
tan tes of
recentamb ién unimpo r
tanterecurso para añadirin
formación
adicionalquesupe ra loscarte
lest rad
iciona
les.

Nohaydudasqueimp lemen
taruns is
temade RApuedeofrece
ral Museode F
ís
ica mú
lt
iples
pos
ibi
l
idadesdeen
riquece
rlaexpe
rienc
iadev
is
itaa
l museo
.

1
.2E
l Museo

7
E
l Museode F ísicadela UNLPa lbergaunaco lecciónde másde2 .000ins
trumentosut
i
lizados
paralaenseñanzade laFísicaenlasun ive
rsidadesdep r
incip
iosdelsig
loXX.
Debido a que e l Museo está d
iseñado de mane ra didáct
ica y pedagóg
ica po
r un equipo de
profes
ionales de d
iferen
tes disc
ipl
inas ,ofrece una atract
iva p
ropuesta paratodos aquel
los
interesadosenacercarsealconocimientode laFís
ica.

E
l Museocuentaconunsis temadev isi
tasguiadasquees tádirig
idoalpúblicoengenera
lya
g
ruposdenive
lpreescola
r,esco lar
,terc
iar
io,unive
rsi
tar
ioyconcapac idadesdi
feren
tes
.
E
lobje
tivode
lsistemadev isitases mostraro
trosenfoquesdelostemasquesedesa r
rol
lanenlas
c
lasesconvenc
ionales
.Alt rata
rse de un ámbito de educac
ión noformal,of
recelaventa
ja de
p
romoverelent
reten
imien
to ,faci
li
tandoas íunavis
ión másam igab
lede laFís
ica.

E
l Museose encuen tra organizado envitr
inas
, dondecada una expone ob
jetos deca
tegor
ías
d
ife
rentes.Dichosobjetosnoposeenn ingúncar
teloinfo
rmaciónquelosident
i
fiqueyqueexpl
ique
sufuncionamientopermit
iendoa lvis
itanterecor
reryconoce rel Museoatravésdesusp rop
ios
med
ios.Losv is
itan
tesquel legabanal Museo solocontabanconlaayudadelosgu íaspa
rapoder
aumentarsuconocimientosob relosd
istin
tosobjetos
.

Porotrapar
te,el Museonod isponedeningúnsis
temadein formaciónquepe rmitaadminis
trarla
info
rmaciónrelac
ionadaalosob je
tosenexposic
ión.Porlotanto,eradesumaimpo rtanc
iapa rael
Museodisponerdeuns is
temaquenosó lolepermi
taadm inist
rarlain fo
rmacióndelosob je
toss i
notambiénqueledéa lvis
itantelapos
ib
il
idadderecorrerel museos inlanecesidaddesol
ici
ta run
guía
.

1.3LaPropues
ta

La Real
idadAumen tada mejoralapercepcióndelusuar
ioylain
teraccióncone l mundoreal
.Lo s
obje
tosvir
tuales mues
tranlainformaciónquee lusua
rionopuedede tecta
rdirec
tamen teconsus
prop
iossent
idos.La in
formacióntransmi
tidaporlosobje
tosv
ir
tua
lesayudaa losusuariosareal
iza
r
tareasdel mundoreal
.

E
ldesa r
rol
loyconsumodeap licac
iones móv
i
leshaexpe r
imen tadounrápidocrec
imientoenlos
ú
lt
imosañosdeb idoaldesa
rro
llodelasplata
formasabie
rtas,comoAnd roidyalposicionam
iento
enel mercadodelosce
lu
laresconaccesoaIn te
rne
t.Lasaplicac
iones móvi
leshansuperadoala
navegac
ión Webylascomputadorasvanperd
iendoter
renofrentealossma r
tphonesylastable
ts.

Porta
l mo
tivo,nospa
rec
ió muyapropiadoreal
izarunaap l
icac
iónconReal
idadAumentadapa
ra
l
levar
laacaboenunen to
rnocien
tíf
ico
,edu cat
ivoycu l
tura
lcomoel MuseodeFís
icayademás
of
rece
ralv
isitan
teunaexpe
rienc
ia másdidác
t
icae in
teract
iva
.

Paraellorealizaremosunaap l
icac
iónwebquepe rmitealosusua r
iosde l museoadm inis
trartoda la
informaciónre lac
ionadaalosob jetoscomoimágenes ,aud iosyv ideos.D ichainformaciónes tará
a
lojadaenunse rvido
rdebasededa tos,
lacua lserád iseñadaespec ia
lmen tepa raes teproyec to.
Luego, med ianteunaapl
icación móvi
llepe rmiti
ráalv isi
tanteinvest
igarsob ree l Museoyaccede ra
lainformac iónquesed isponedelosob jetosqueseexponenené l
.Elvisitantepod ráinteractuar
conlaap licacióndeuna mane ra másac tivapa rt
ic
ipandodecues t
ionarios ,juegosocomp letando
encuestas.E s
teconceptodepa rt
ic
ipaciónac tivaseco rrespondeconlade finic
iónde RAdadapo r
RonaldA zumaquesere fierealainterac
tividadent iemporea l
. Aumen tandolarea lidadnoso lose
pretende mos t
rarinfo
rmaciónsinoquesein tentaproduc irunaretroal
imentac ióncone lpart
icipante
delaexpe riencia.

8
1
.4 Ob
jet
ivosin
icia
les

Losob
jet
ivos
inic
ia
lesdees
tates
inason
:

E
lobje
tivogenera
l:esapl
icartecnolog
íadeRAenuncontex
tocient
íf
ico
,educa
t
ivoycul
tura
lcomo
e
l MuseodeFísicadela U
.N.L
.P. Genera
runaap
l
icac
iónparamet
rizab
lequesepuedaex
tende
ra
másdeun museo.

Ent
relosobjetivosespecíf
icos:
Invest
igar sobre el desar
rol
lo de ap
licac
iones móv
i
les yla Rea
lidad Aumen
tada
, desc
rib
iendo
ap
licac
ionesde RAex is
tentesendist
intosámbi
tosyanal
izandolosprob
lemasencont
radosene l
desar
rol
lodees toss
istemas .

Invest
igarapl
icac
ionesde Rea
lidadAumentadaenel museo
,ten
iendoencuen
tae
lcon
tex
to,los
recursosnecesar
ios
,elen
tornoylosusua
riosque
inte
ractúan
.

Desa
rro
l
larunaap l
icac
iónde RealidadAumentadapa
rael MuseodeFís
icadela U
.N.L
.Pcone
l
ob
jet
ivodeo f
receralvis
itanteunen to
rnoat
ract
ivoqueleposib
i
li
teuna mayo
rinmers
iónene
l
m
ismo,ana
lizandotodoelprocesoqueello
imp
lica.

Invest
iga
r sob
relos aspec
tos de usab
i
lidadtan
to enlas ap
l
icac
iones móv
i
les como enla
s
ap
licac
ionesdeRea
lidadAumentada
.

Anal
izar
lausab
il
idaddelaap
licac
ióndesa
rro
lladayobse
rva
relimpac
toypercepcióndelos
usuar
ios.Pa
rael
lossedesar
rol
laránp
ruebasdecampo,dondesepondráapruebaelproduc
to
anteungrupodevis
i
tan
tes

1
.5Es
truc
turade
lproyec
to.

Lae
labo
rac
iónde
lpresen
tein
formees
tád
iv
id
idaen3secc
ionesp
rinc
ipa
les
:

UnaInves
tigac
iónteór
ica
,quecubr
imosenlos capí
tulos1a5 .
E
lDesa r
rol
lotecno
lógico
,quedesc
rib
imosenloscapítulos6a8.
E
lanális
isdeusabil
idadyconc
lus
iones
,quecorrespondea loscap
ítu
los9a10
.

EnlaInvestigac
iónteór
icareco
rr
imoslosfundamentosteó
ricos delostemas a desa
rro
l
lar
necesa
riosparala
implemen
tac
ióndelp
roto
t
ipopropues
toin
ic
ia
lmente.

Enel Capítu
lo2 introducimoslos Dispos
it
ivos móv
iles
,comenzamosconunain troducc
iónala
evo
lución delosteléfonos móvi
les seguido de una descr
ipc
ión genera
l de su arqui
tec
tura.
Desc
ribimostamb
iénde ta
llesdepla
taformasactua
lesypa r
ticu
lar
idadesdedesar
rol
lo.

En e
l Capí
tulo 3 exp
l
icamos e
l concepto de Rea
lidad Aumentada
, de
tal
landolos pa
sos pa
ra
gene
rarunsistemade Rea
l
idadAumen tada,paraluegoconclu
irconlapopula
ridaddela RApara
d
ispos
it
ivos móv
iles
.

Enel Capí
tulo4 desc
rib
imoslap la
tafo
rma Andro
id. De
tal
lamoslaspr
inc
ipalesca
racte
rís
ticasde
es
tesistemaoperat
ivo móvi
l,sud
iseño,arqu
itec
turayfuncionam
ien
to.In
troduc
imoslaplata
forma
de desar
rol
lo, he
rramientas de desa
rro
llo
, anatomía delas apl
icac
iones y sus pr
incipa
les
componentes.

En e
l Cap
ítu
lo 5 se expl
ican conceptos de usab
il
idad
,fundamen
tos
, mé
todos y mé
tr
icas de
eva
luac
ión
,pr
inc
ip
iosded iseñoye tapasdee va
luación
.

9
Conrespec
to ala segunda secc
ión de e
stetraba
jo,el Desar
rol
lotecno
lóg
ico
, se desc
ribe
comple
tamentelaimplemen
tacióntan
to de
l lado delse
rvido
r dela apl
icac
ión
, como dela
ap
licac
iónc
l
ientepa
rael móv
i
l.

En e
l Capítu
lo 6, descr
ib
imosla E spec
if
icación delpro
totipo
. Def
inimosla arqui
tectura y
componen
tes dela ap
licac
ión, espec
i
ficando at ravés de casos de usolafunciona
lidad a
imp
lementaryl
legamosal mode
lodeda tosauti
lizar
.

En e
l Cap
ítu
lo 7, nosrefer
imos alaImp
lemen
tación de
l Adm
in
ist
rador Web
,presen
tamose
l
Framewo
rkSpr
ingyH ibe
rnate
.Ahondamosende
tal
lesdeimplemen
tac
ión.

EnelCap í
tulo8,hacemoslop rop
ioconalaImplementac
ióndelClien
te Móv
i
l.Implementamosla
pa
rte c
liente delpro
tot
ipo desc
rib
iendola p
lata
forma And
roid y dec
is
iones de d
iseño que se
tomaronalola rgode
ldesarro
llo
.

Conrespec
toalaterce
raseccióndeestetrabajo
,deAná l
is
is deusabi
lidadyconclus
ión
,sehace
unarevis
ióndelosresu
ltadosobten
idosapa r
tirdelasencues
tasrespondidaspo
rlosusua
riosde
laapl
icac
iónmóv
i
lyse mues t
ranlasconc
lusionesgenera
les.

En e
l Capí
tulo 9 ana
l
izamoslosresu
ltado
s surg
idos a pa
rt
ir de una encues
ta de u
sab
i
lidad
respond
idaporlosusuar
iosde
laapl
icac
ión móv
i
l.

Po
rú l
t
imoene
l Cap
ítu
lo10 se mues
tranlo
sob
jet
ivosin
ic
ia
les
,lasconc
lus
ionesylost
raba
josa
fu
turo.

10
Cap
ítu
lo2
.Dispos
it
ivos móv
iles

Enelcap
ítu
loan te
rio
rhemoshechounab re
veint
roducciónalt
rabajodelates
ina
.Ene
lpresen
te
cap
itu
loexp
lica
remose lconcep
toyevo
luc
ióndelosdisposi
t
ivos móv
iles
.

2
.1In
troducc
ión

A
l mira
rhaciaat
rás y obse
rvarel desar
rol
lotecnológ
ico que ha exper
imentadolaHuman idad
desde med
iadosdelsig
loXXhastahoy,nocabedudadeque másqueunavancesehap roduc
ido
unaverdade
rarevoluc
ión.E
ldescubr
imientodelainfo
rmát
ica,suapl
icaciónpaula
tinaentodotipo
deáreasdeconocimien
toasícomosuintroducc
iónene lcomúndelapob lac
iónat ravésdetodo
t
ipodecomponen teshacambiadonuest
raso c
iedaddeuna mane
rano tab
le.

Lacompu tadora es uno delosinven tos que me jorsintet


iza esta nuevas i
tuacióntecnológica
.
Aparecie
ron p r
imero como eno rmes y costosas máquinas que so lamen teestaban disponib
les
enimpo r
tantes universidades o centros deinves tigación.Luego,conlaapa r
ic
ióndenueva s
técnicasdefab r
icacióncomolosc ircu
itosintegrados,sutamaño ,suscapac idades,y sob retodo
prec
io,va r
iaronde ta l formaque se conv ir
tieron enunp roducto deconsumo mas ivo.La
aparic
ión deIn ternet, y sobretodo su ape r
tura al público general
, determinaron defo rma
inequívocala impo rtancia de lascompu tadoras en lav ida soc ia
l,labora
l o académ ica de
cualquie
rpe rsonahastae ldíadehoy .

Juntoconlaapa r
icióndein terne
tcomo med iodeuso masivo,a mediadosdeladécadade1990 ,
tambiénsep rodujolareinvencióndelatelefon
ía móvi
l.Ydeesacomb inaciónnac iólapos
ibi
l
idad
detenerlainformaciónacces ibleencualquie
r momentoylugar
.En tonceselteléfono móv
ilde
jóde
serund ispos
itivoparaso lohace rl
lamadasoenv ia
rSMSs inotambiénqueempezóase rv
irpara
teneraccesoa in
ternet
,toma rfotogra
fías
,videosyposeerunavariedaddeap licaciones
.

Un d
isposi
ti
vo móv i
l es unté rmino genera
l que desc
ribe una amp lís
imafam i
l
iadeapa ra
tos
e
lect
rónicossurg
idosenlosú l
timosaños,dereducidotamaño ,queo frecen alguna capac
idad
de procesamiento y a lmacenam iento de datos y que es tánorientados a una función
conc
reta o va r
ias de e llas
: desde los telé
fonos móvi
les másevo luc
ionados(los l
lamados
smar
tphones),ao rdenadoresportát
iles
,cámarasdig
ita
les
,reproducto
resde mús icaoconsolasde
v
ideojuegos
.[1]

La mayo ría de estos aparatos cuentan con un s istema ope ra


tivo de mayo r o meno r
comp lej
idad, que permi
terealizarlasta reas de gestión de memo r
ia y con t
rol dehardwa re
necesa r
ias. En el caso delos o rdenadores po
rtát
iles, contanta oinc luso mayor capacidad
quelos de sob remesa,los s is
temas ope ra
t
ivos hab itua
les sonpe r
fectamente compa t
iblesy
funcionan s in d
ife
rencias
. S in embargo, en disposit
ivos móvilescomotab letsypda ’sen t
re
ot
ros, es p rec
iso diseña
r nuevos s istemas ope rat
ivos adap tadosespec í
f
icamen te a su s
caracterís
t
icas:rest
ricc
iones de memo r
ia y procesam iento
,consumo m ínimodeene rg
íaog ran
estab
ilidadensufuncionamiento,entreot
ros.

Laindustr
ia móv
il comenzó casialm ismotiempo quela Web , perotomó años para que se
cons
idere como un med io masivo. El móvi
l puede hacertodolo quelos o t
ros medios de
comunicac
ión pueden hace r
. Podemoslee rtextos, pub
licar
los, reproduci
rg rabac
iones, ver
pe
lícu
las,escucharlaradio
,ve rte
levis
ión
,a ccede
rainternet,etc
.A lgunasdelasca racte
rís
ticas
quedi
ferencianalosdispos
i
tivos móv
ilesde
lrestodelos mediosdecomun icac
iónson:

11
● Eselprimer mediodecomun icac
iónverdaderamentepe
rsona
l
● T
ienenlacapac idad de enviaryrecibi
rinformac
ión entodo momen
to,inclusocuando es

inac
tivo.
● Lol
levamosconnoso trosatodos lados
● Nospermitencrea rypublicarfotos
,videoseinformac
iónycompart
irnues
trasexper
ienciasen
lasredessociales,casientiemporeal.[2
]

Lainfraes
truc
tura móv
i
lc recerá a un e
levadoritmolos p
róximos años
,con másinnovacióny
pro
l
iferac
iónded ispos
it
ivos móvi
les.Especia
lmen tededispos
it
ivosdegamaa l
tatalescomoe l
iPhoneylosqueposeenlap lata
formaAnd ro
id,loscua
lesreduc
iránlabrechaen
trela mov
i
lidady
lainformá
tica
.

2
.2A
rqu
itec
turades
istemas móv
iles

Sepuedeveruns
istema móv
i
lcomouns
istemadecapas
,dondecadacapadependede
la
an
ter
iorpa
rafunc
iona
r.[2
]

F
igu
ra2
.1.A
rqu
i
tec
turades
is
temas móv
i
les

E
stascapasse
rándesc
rip
tasacon
t
inuac
iónenlass
igu
ien
tessecc
iones
.

2
.2.1 Ope
rado
ra

Los ope
radores es
tán enla base .Ellos serefieren alos ope
rado
res deredes móvile
s olas
compañíasdeteléfonosce lulares
.Losope radoressonlosqueesenc ia
lmentehacentraba
jartodo
e
lsis
tema móvil
:insta
lanto rresdecomun icación,gest
ionanlaredcelular
,hacenquelosservic
ios
(comoInterne
t)esténd ispon ib
lesparalosabonadosde móv i
les.[
2]En argen
tina e
jemplos de
ope
radorassonClaro, Movistar,Nexte
lyPe rsonal.

2
.2.2Red móv
il

Lasoperadorasoperanlasredesina
lámbr
icas.Latecno
log
íace
lula
res
,enun modos imp
li
f
icado
,
unarad
ioquerec ibeseñaldeunaantena.Eltipoderad
ioyantenade
term
inalacapac
idaddela
redylosservic
iosquepuedenestard
ispon
iblesenél
.
12
La mayoríadelasredesa lrededorde l mundousane lestándar GSM,u t
i
lizando GPRSo GPRS
EDGEpa ra
2GyTMSoHSDPApa ra3G .Tamb iéntenemosCDMA(CodeD ivis
ion Mul
tip
leA ccessocód igode
d
iv
isión múlt
ip
ledeacceso )ysuh íb r
ido2.5GCDMA2000queaunqueo f
receunacobe rtu
ra mayor
,
l
imitanlacan t
idadycapacidaddese rv
ic
iosquepuedent ransfe
ri
rsesobree l
la.Po rlotanto,en
pa
ísescomoE s
tados Un
idoso Ch inadondelagen teestá másesparc
idaes mejoru t
il
izar CDMA.
[2
].U t
i
liza menostor
resdandoa lossubsc rip
tores menosserv
ic
ios.
Acont
inuacióndetal
lamoslasp r
incipalesdi
ferenciasent
re GSMyCDMA [3
][4]:

GSMfuncionacon4bandasquecomúnmen teseencuen trande900MHzy1 .800MHzenEu ropay


As
ia, y de 850MHz y 1 .900MHz en E stados Un idosy Amé r
ica Latina. E l GSM pe rm i
te ocho
l
lamadas simu l
táneas enla m ismaf recuencia
. Con es te métodolaf recuenc
ia es dividida en

lt
iplescana les queson un idoscomos ifuera unso loflujo dein formac ión
.E s
tate cnología
permi
teava riosusua rioscompa r
ti
relm ismocana lalm ismot iempo.Ademásenlared GSM ,hay
unnúme rol
ím itefi
jodeusua r
iosquepuedenusa runafrecuenc iaalm ismot iempo.Laca l
idadde
lal
lamadanosedeg rada ,pe roes mucho másfác ilquelasf recuenciases ténocupadasysetenga
lanecesidadde ma rca r másdeunavez ,co saquenoestancomúnenlasredes CD MA. Lared
CDMAt raba
jadefo rmato talmentedife
ren te.É staenvíalain formaciónat ravésde lcanal
,después
queelcanales tádigi
talizado . Muchasllamadasseenv íanunasob relao traat ravésdetodoe l
canal
.Acadal lamadaseleas ignasup ropiocód igodef recuenciapa ra man tenerlaseñald ist
inta
.
Coneste métodoseo frece mucha mássegu ridadquelared GSM .E staeslarazónpo rlacua l
muchosexpertosp re
fieren laredCDMA .

2
.2.3D
ispos
it
ivo

Losd ispos
itivossonloste léfonoscelu
lares
.Lossma r
tphone ,aunquetodav
íanosonunapo rc
ión
mayorita
riadel me rcado,cadavezson máspopu lares.[2
]Sonu t
il
izadosdia
riamen tepo rmi
llones
depe rsonaspa racomun icarse
,navega rporinternetoenv iar ma
ilsentreo
trosusos . Segúnuna
estadíst
ica del año 201 1 en Aust
ral
ia,el Reino Unido, Suecia
, Noruega,A rabia Saudi
taylos
Emiratos Árabes Un idos
, másde l50%desupob laciónposeensma r
tphones.T ambién Es
tados
Unidos, NuevaZe landa ,Dinamarca,Ir
landa
,LosPa ísesBa jos,EspañaySu izaaho ratienen más
deun40%depene trac
iónene l me
rcadode lossma rtphones.
EnE stados Un idose l80%delosdueñosdesma rtphonesd icenqueellosnosa lendesucasas i
nollevansud isposi
tivo móv
ily1/3dicequede ja
ríanp r
imerosuTVan tesquesusma rtphone.[5]

2
.2.4P
lata
forma

La p
latafo
rma móv i
l esla capa que existe para propo
rciona
r acceso alos disposi
tivos. Pa
ra
e
jecuta
rcua lqu
iersof
twa reoserv
ic
ioencadad isposi
tivosenecesi
taunap la
taforma,ounlengua je
deprogramacióncone lcualseescribetodoelso ftware. Comotodaslaspla
taformasdeso f
tware,
és
tassed iv
idenen3ca tego
rías
:Licenciadas
,p rop
ietar
iasyopensou rceodecód igolib
re .[2
]

Licenciado
Las platafo
rmassevenden alosfab rican
tes de d
ispos
it
ivos
. Laidea escrear una pla
taforma
común o unain ter
faz de programación(AP I
) quetraba
je s
imila
rmente através de mú l
tip
les
d
isposit
ivosconel menoresfuerzoposiblerequer
idoparaadapta
rsealasdife
renciasentredichos
d
isposit
ivos.Aunquelarea
l
idadind icaquenosucedetanas íyaqueaveceslasd iferenc
iassuelen
seramp lias
.

Lasp
lata
formasl
icenc
iadasson
:

13
Java Mi
croEdi
tion(Java ME)
Ant
iguamenteconocidocomoJ2ME[6 ]
,Java MEeslap la
tafo
rmadeso f
tware más p
redominan
te.
Es un subcon
juntolicenc
iado dela p
lata
forma JAVAy provee una co
lecc
ión de AP
I para e
l
desar
rol
loenteléfonos móv
i
les.

B
inaryRun t
imeEnvironmen
tfo rWire
less(BREW )
BREW[7 ]esunap lata
formalicenc
iadac readapo
r Qua
lcommparad ispos
i
tivos móv
i
les,yusada
mayor
ita
riamen
te en el mercado de Estados Un
idos
.E s una p
latafo
rmaindependiente dela
inte
rfazquepuedeco r
rerunava r
iedaddef ramewo
rksdeap
licac
ióncomo C /C++
,Java,andF lash
L
ite.

W
indows Mobi
le
W
indows Mobi
le[8]esunave
rsióncompactadels
is
temaope ra
tivo W
indow
scombinadoconuna
su
itedeaplicac
ionespa
rad
isposi
t
ivos móv
ile
squeestábasadaenlaAPIWIN32de Mic
roso
ft
.

L
iMo
L
iMo[9
]esunap la
tafo
rmabasadaenLinuxcreadapo
rlafundac
iónLiMo.LiMoinc
luyeSDK
spa
ra
c
rea
rapl
icac
ionesJAVA,na
tivasoweb móv
i
lesusandoel WebK
itbrowse
rframework
.

Propietar
io
Lasp lata
formasprop
ieta
riasestándiseñadasydesar
rol
ladasporlosfabr
ican
tesded
ispos
it
ivo
s
parase rusadasensusdispos
i
tivosexclus
ivamen
te.En
treestasseinc
luyen
:

Palm
Palmuti
lizatresdi
feren
tesp la
taformasp rop
ietar
ias.Sup r
imery másreconoc
idaeslaplata
forma
Palm OSbasadoene llenguaje C/C++,laquefuein ic
ia
lmentedesar
rol
ladaparasulíneadePalm
P
ilot
. Conlaapa r
ic
iónteléfonosinte
ligentes
,Pa lmcreó webOS,queesunap lata
formabasadaen
L
inuxysue jecuc
iónsehaceto talmenteene l marcodelnavegado
r WebKi
t[10
].

B
lackBer
ry
B
lackBer
ry[11
] man
tiene su prop
ia p
lata
forma p
rop
ieta
ria basada en Java
, que se u
t
il
iza
ex
clus
ivamen
teensusdispos
i
tivos
.

iPhone
Appleuti
l
izaunave rs
ióncompactade Mac OS Xcomop lataformaparasul íneadedispos
it
ivo
s
iPhone,iPad eiPod, quecie
rtamen te es
tá basada en Unix.Actua
lmentese encuent
ra en la
versión4G.Proveetodaslasherramientasyrecursosparacons t
rui
rapl
icacionesnat
ivasconun
buensopo r
tepara mu
lt
imediaygráf
icos[12].

Códigol ibre
P
lataformasdecód igo abier
to,sonlasp lata
formas móvi
lesquees tánd isponib
lesg ra
tui
tamen te
paralos usua rios que pueden descargar
, modif
icar y ed
ita
r.E stas plataformas sonlas más
recientesen móv i
les,peroaúnas ícadavezes tánganando máscon f
ianzaconlosfab r
icantesde
d
ispositivosy desa r
rol
ladores
. Una de estasplatafo
rmas es Android, desarrol
lada po
rla Open
Handse tAll
iance,encabezadapo r Goog
le.LaA l
ianzabuscadesa r
rollarunap la
taformadecód igo
ab
ie r
topa ra móvi
lesbasadoene llenguajedep rog
ramaciónJava . Describi
remosende ta
llela
p
lataformaAnd roid másadelanteenelcap ítu
lo4.

2
.2.5S
istemas Ope
rat
ivos

14
Antessuced íaquesiund ispositivo móv
ilcor
ríaunsistemaoperat
ivo,lo másprobableesquese
considera
raunsma rtphone. Peroaho raescadavez másamp l
ioe lconjun
toded ispos
i
tivosque
soportansistemasoperativos
.
Lossistemasope ra
tivossuelentene rserv
ic
iosbásicosoconjun
tosdehe r
ramien
tasquepermitena
lasap l
icacionesquesecomun iquenen t
resíycompa r
tirda
tosose rv
icios
.[2
]
Aunquenotodosloste lé
fonost ienensistemasoperat
ivos
,lossigu
ientes sonalgunosdelos más
comunes :

Symb
ian

Symb ian OSesuns istemaope ra


tivodecód igoabiertod iseñadopa rad isposi
tivos móv i
les,con
b
ibliotecasasoc iadas ,framewo rksdein te
rfazdeusua rioe imp lemen tacionesdere fe
rencia.
Symb ianesuns istemaope rativopa rad isposi
tivos móvilesdesa rro
l
ladopo rP sion,Nok ia
, Mo toro
la
yE ricsson.E lp r
inc ipalob je
tivodees tascompañ íase rae ldec rearunnuevoycompa rt
idos istema
opera t
ivo que es tuviera pe rfectamen te adaptado aloste léfonos móv iles de
l momen to,yfuese
ademáscapaz decompe ti
rcon Pa lm OSy W indow s Mob ile
. La p r
ime rave rsión de S ymb ian
,
basadaene lsis temaEPOCdeP s
ion ,se lanzóen1998.
E
l acue rdo bajo e lcua lse desa r
rolló S ymbian es bas tantes imple:S ymbian Ltd. desarrol
la el
s
istema opera tivo S ymb ian, queinc luye e lm ic
rokerne l
,loscon t
rolado res,elm idd
lewa rey una
cons iderable pila de p rotoco los de comun icación ein terfaces de usua r
io muy bás icas. Los
desa rro
lladoresqueob tienenlal icenc iacorrespondientepa ratrabajarcon S ymb ianimp lemen tan
sus p ropiasin terfaces de usua r
io ycon juntos de aplicaciones segúnlas neces idades de su s
propiosd isposi
tivos .E stope rm i
tióaS ymbianposicionarsecomouns is
temaope rativo muyflexible
,
queten íaencuen talosrequ isitosdela mayo r
íadelosd ispos i
t
ivosfab ricadosy,a lm ismot iempo,
perm it
íauna ltog radoded i
fe renciación.[13 ]

W
indows Mob
ile

W
indow s Mob i
leesuns is
temaope rat
ivod iseñadopo rMicrosoftyo rien
tadoaunag ranva riedad
dedispos it
ivos móv i
les.Enrea l
idad ,Window s Mob
ilerepresentaunapa r
ticula
rizacióndeo trog ran
s
istemade M ic
roso f
tl
lamado W indow sCE .
Ap r
incipios dela década delos 90 ,cuandocomenza ron a apa recerlos pr
ime ros d isposi
tivos
móvi
les , Microsofttomóla dec isión de crear un sis
tema ope rativo capaz de hace rfren te al
entoncesrec ientemen telanzado po r Apple,e lsis
tema New ton MessagePad .F ruto de es ta
inic
iativa surgió Pegasus , cuyo nomb re come rc
ial de
f
init
ivofue W indow s Compac t Edition,o
W
indow sCE [14 ]
.
E
l obje t
ivo principal que buscaba M icrosof
te ra que el nuevos istemafue ralosu fic
ientemen te
f
lexibleyadap tablepa rapode rse ru t
il
izado senunamp l
ioaban icoded isposi
tivos ,cuyoún ica
característ
icacomúnesladese rdereducidotamañoytene r,portan to
,una l
imitaciónobv iaensus
recursos .Lasca racte
ríst
icasprincipa
lescon lasquecuenta W indow sCEsonlass iguien tes
:

- Esuns istema modular


,loquepe rmi
tequecadafab r
icantepuedaseleccionaraquel
las
par
tesque lebenef
ician máspa rasud ispos
i
tivo.
- Contemplaunaconsiderablegamade recu rsoshardware:tec
lado
,cáma ra,panta
llatác
ti
l
,
etc
.
- T
ieneuntamañoen memo riarelat
ivamentepequeñoyba jocostecomputacional
.
- Escapazdet raba
jarcond ist
intasfami
liasdep rocesado
resde32b i
ts.
- Permi
teinterac
tua
rcono trosdisposit
ivos móviles.

Unaspec
tod
ist
int
ivode W
indow
s CEconre
spectoao
trosproduc
tosdesar
rol
ladosporMic
rosof
t
esqueunelevadonúme
rodesuscomponentesseo
frecealosfab
rican
tesydesarro
l
ladoresa

15
través delprop
iocód igofuente
.E s
toles pe rm
i
te poder adap
tare
ls istema asus d
ispos
it
ivos
especí
ficos
. Aque
lloscomponen tes bás
icos de Windows CE que no neces
i
tan n
ingúntipo de
adaptacións
iguensiendoofrec
idosúnicamen
tecomocód igobina
rio.

Pa
lm OS

Pa
lm OS es els istema operat
ivo desarrol
ladoinicia
lmen te po
r Palm,Inc. Pa
lm u
ti
lizatres
d
ife
rentesp
lata
formasp rop
ieta
rias
.Sup r
imery másreconoc idaeslap lata
formaPalm OSbasado
enellengua
je C/C++,laquefuein ic
ialmentedesarrol
lada parasulíneade Palm P
i
lot. Conla
apa
ric
ióndeteléfonosinte
l
igen
tes,Pa lmcreówebOS ,queesunap lata
formabasadaenLinuxysu
e
jecuc
iónsehaceto ta
lmenteene l marcodelnavegado r WebKi
t.[2
]

L
inux

E
l código ab ier
to de Linuxse está ut
il
izandocadavez más como uns is
tema operativo para
te
léfonosin tel
igentes,inc
luyendo RAZR2de Mo toro
la.[2
]L inuxfueinicia
lmen tedesarrol
ladopor
L
inus Torvaldsyac tualmentepuedense rencontradasen5- 6 %deloste lé
fonosa l
rededo rdel
mundo.Linuxesunabasepa raunase r
iedep la
tafo
rmasdesa rro
lladaspo rdi
ferentesvendedo res
como Mo torola,Trol
lTech.L
inuxtamb iénseusadoen Goog le(And roid
), NEC,Panasonic,Ph i
ll
ips
ent
re varios más . Las ventajas de un L
inux embebido por sob re o
tros sistemas opera
tivos
embebidosinc luyenquenohayade rechosdeautoryelpagode l
icencias[15 ]
.

Mac OSX
Unave rs
iónespec ial
izadade Mac OS Xese lsistemaope ra
tivoiOSu t
i
lizadoene liPhonede
Appleye liPodtouch .
Lain terfazde usua rio deiOS es tá basada en e l concepto de man ipulación directa
, usando
gestosmu l
ti
tácti
les.Los e lemen tosdecon t
rolcons is
tendedes lizadores,interrupto
resybo tones.
Larespues taalasó rdenesde lusua r
ioesinmed iatayp roveedeunain te r
fazfluida.Lain te
racc ión
con e lsistema ope rat
ivoinc luye ges tos como des lices
,toques , pell
izcos ,los cua lest ienen
def
in icionesd i
feren tesdepend iendode lcon textodelain ter
faz.Seu ti
l
izanace leróme t
rosinte rnos
para hace r que a lgunas ap l
icacionesrespondan asacud ireld isposi
tivo(po rejemp lo, para el
comandodeshace r
)oro tar
loent resdimensiones(unresu l
tadocomúnescamb iarde modove rt
ica
l
a
lapa isadouho rizon ta
l).
i
OScuen tacon cua trocapasdeabs t
racción:lacapade lnúcleode lsis
temaope rat
ivo,lacapade
"Se rviciosP rinc
ipa les "
,lacapade"Med ios"ylacapade"CocoaT ouch"
.Pro veetoda slas
herram ien tasyre cursospa racon st
ruirapli
cacionesnativasconunbuensopo r
tepa ra mult
imed iay
gráf
i co s
.
iOSnope rmiteAdobeF lashniJava .Encamb io,usaHTML5comounaa lternat
ivaaF lash.[16 ]

And roid
Androidejecutasup ropiosis
temaope ra
tivodecód igoab ier
to,quepuedese rpe rsonal
izadopo rlos
operadoresyfab ricantesded isposit
ivos
.
Androidcons ti
tuyeunap iladeso f
twarepen sadaespec ialmen tepa rad
ispos i
t
ivos móv ilesyque
incluyetan to un s istema ope rat
ivo, como m iddlewa re y diversas apl
icac
iones de usua r
io.
Representalap rime raincurs
iónse riade Googleene l me rcado móvilynaceconlap retens
iónde
extendersufiloso fíaad ichosector.
Todaslas ap licacionespa ra Androidse programan enlengua jeJavayson e jecutadasen una
máquina vi rtual espec ialmente diseñada para es ta plataforma, que ha sido bau t
izada con el
nomb redeDa lvik.
Lalicenciaded istr
ibuciónelegidapa ra Androidhas ido Apache2 .0 [17],loquelocon v
ier
teen
softwaredel ibred istr
ibución
.A losdesa rro
lladoresselesp roporc
ionadefo rmag ra
tui
taunSDKy

16
laopcióndeunp lug-inparaelentornodede sar
rol
loE c
lipsequeinc luyentodaslasAP Inecesa r
ias
parala c reación de apl
icac
iones, así como un emu lado rintegrado pa ra su e jecución .Ex
iste
ademásd isponib
le unaamp l
iadocumen taciónderespaldopa raesteSDK.[18 ] .
Con And roid se buscareun i
r en una m isma p la
tafo
rmatodoslos e lementos necesa r
ios que
permi
tana ldesarro
lladorcontro
laryaprovecha ral máx
imocua lqu
ierfuncionalidado frecidaporun
d
isposit
ivo móv il(l
lamadas , mensajes detex to
,cáma ra, agenda decon tactos,conex ión Wi-
Fi
,
B
luetooth,ap l
icac
ioneso f
imáticas,videojuegos,etc
.),asícomopode rcrearap licacionesquesean
verdaderamen tepo rtab
les
,reu t
i
lizab
lesyderáp idodesa rrol
lo. Eno traspa labras,And ro idqu
iere
me
joraryes tandar
izareldesarro
llodeaplicacionesparacua lquierd
ispos it
ivo móv i
l.

2
.2.6F
ramewo
rkdeap
licac
iones

Lap r
ime rcapaalaquepuedeaccede re ldesa rro
l
ladoreselframeworkdeap licac
ioneso API
l
iberadapo ralgunade lascompañ
ías menc
ionadas .
E
lframewo rkdeap licacionesa menudosee jecutasobreloss
istemasoperat
ivos,compa r
tenlos
se
rvic
ios básicos,tales comolas comunicaciones, mensa
jes
,g rá
ficos
,loca
lización
, segur
idad
,
au
tenticac
ión,entreotros.[2
]

Java

Lasapl
icacionesescr
itasene lframewo rkdeJava MEconfrecuenciapuedense rejecutadasenla
mayo
ría
delos disposi
t
ivos basados en Java , pe
ro dadala d
ivers
idad detamaño de pan tal
la de los
d
isposi
t
ivosye lpode rdelprocesador
,e ldesp
liegueat
ravésded iversosdispos
itivospuedese run
desa
fío
.
La mayoría delas apl
icac
ionesJavasecomp ranyse dist
ribuyenat ravés del operador
, pe
ro
tamb
iénpuedese rdesca rgadoe ins
taladoatravésdeuncableodefo rmainalámb r
ica.

S60

Laplata
formaS60,an te
riormenteconocidacomolase r
ie60,eslaplata
formadeaplicacionespara
d
isposit
ivosqueejecutaelsis
temaope rat
ivoS ymb
ian.S60seasoc iaa menudoconlos
d
isposit
ivosNok
ia - Nok
iaposeelapla ta
fo rma
-,perotambiénseejecu
taenva r
iasdisposit
ivos
quenosondeNok ia.S60esunf ramewo rkdecód
igoabier
to.Ap
licac
ionesdeS60puedense r
creadasenJava,F rameworkS ymbianC++,oinc lusoFlashLi
te.

BREW

Las ap
licac
iones escri
tas en elf ramework BREW pueden se
re jecutadas enla mayoría
delosd
isposit
ivosbasadosenBREW,conunpoco menosdeadap tac
iónad ispos
it
ivosqueot
ros
frameworks
.
S
inemba rgolasaplicac
iones BREWdebensegu i
runcostosoyla
rgop rocesodece r
ti
f
icac
ióny
puedesoloserdis
tr
ibuidoatravésdeunoperador.

F
lashL
ite

AdobeF lashLiteesunF rameworkdeaplicac


ionesqueusaF lashLiteye
lframeworkA c
tionS
c r
ipt
para crear aplicac
iones basadas en vec to
res. Las apl
icac
iones de F
lash Li
te pueden se r
e
jecutadasden trodelF lashLitePlaye
r,e
lcuales tád
isponib
leen muchod
isposi
t
ivosalrededo
rde l
mundo.F lashLiteesunap rometedoraypode rosapla
taforma
,pe rohahabidoalgunadif
icu
ltad
paraobtene r
laen losdisposi
tivos
.

W
indows Mob
ile

17
Ap
licacionesesc r
itasusandolaAP Ide Win32puedenserdesp
legadasat ravésdela mayor
íade
d
ispositivos basados en Windows
. Comojava,las ap
l
icac
iones de Windows Mobi
le puedeser
descargadas eins ta
ladas através de un cab
le conec
tado ala compu tado
ra o defo rma
inalámb r
ica.

CocoaTouch

CocoaTouches laAP Iusadaparacrearap


licacionesnat
ivaspara iPhoney iPodCouch.
Lasaplicacionesde CocoaTouchdebense rsubm i
teadasyce r
t
ificadaspor Appleantesdese r
inc
luidas en e l App Store
. Una vez que están en el App Store,las ap
licac
iones pueden se
r
compradas , descargas einsta
ladas med
iante uncab leconectado alacompu tador odeforma
inalámbrica.

And
roidSDK

E
lAnd ro
idSDKpe rmi
tealosdesa rro
l
ladorescrearapl
icac
ionesnat
ivasparacua
lquierdisposi
t
ivo
que ejecutela p
lata
forma Andro
id.Al usarel Andro
id SDKlos desar
rol
lado
res puedenesc r
ibi
r
ap
licacionesenC /C++ousa rla máqu
inavir
tua
ldeJavainc lu
idaenel OSqueperm i
telac reac
ión
deaplicac
ionesconJava.

WebRun
times(WRTs
)

Nok
ia, Ope
ra,andYahoo!Proveenvar
ios WebRuntimesor WRTs
.E s
tosson m
ini
framewo
rks
basadosenestánda
reswebpa racrea
rwidget móv
i
les.Tan
tolos WRTsde Ope
rayNokiacumplen
conlasespec
if
icac
ionesrecomendadasporla W3Cparawidge
t móv
i
les.

WebKi
t

Conlain t
roduccióndewebOSpo rpartedePalm,unap la
tafo
rma móvilbasadaen WebKi
t,ydada
sup redomin
iocomonavegador móv
ilinc
luidoenplata
formas móvi
lescomoiPhone,Andro
idyS60,
yque lavasta mayo
ríadeapl
icac
iones móvi
lessonescri
tasespecí
ficamen
tepara WebKi
t,se
puededecirqueaho ranospodemosrefer
ira Webki
tcomounaF ramework móv
ilensupropio
derecho.

2
.2.7Ap
licac
iones

Losframewo rkdeap l
icaciónseu t
il
izanpa racrearapl
icaciones,comojuegos ,unnavegado r web,
unacáma raounrep roducto
rde mu lt
imedia.Aunquelosf rameworkssonb ienes tanda
rizados,los
d
ispos i
tivos noloson .E l mayor desaf
ío delaimp lemen tac
ión de ap
licaciones esconoce rlos
at
ributosdeld ispos
it
ivoycapac idadesespec í
ficas
.Po rejemplo,s
isees tácreandounaap l
icación
queu t
il
izaelframewo rkdeap l
icaciónJava ME ,esnecesa r
iosaberconquéve rsióndeJava MEes
compa t
ibleeld ispos
it
ivo,lasdimensionesdelapan ta
lla
,lapo tenc
iadelp rocesador,lacapacidad
gráf
ica,elnúme rodebotonesquet ieneycómolosbo tonesestánorien
tados,e tc
.[2]

2
.2.8Se
rvic
ios

F
ina
lmente
,llegamosalaú l
t
imacapadelaa rqui
tec
tura:se
rvic
ios.Losserv
ic
iosinc
luyentarea
s
ta
lescomoe laccesoaInterne
t,elenvíodeun mensa jedetexto
,ose rcapazdeob tene
run a
ub
icac
ión
,básicamente
,todoloqueelusuar
ioestát
ratandodehacer.[2
]

2
.3Evo
luc
ióndelosd
ispos
it
ivos

18
Latecno
logía móv
i
l haido através de varias evoluc
iones pa
rallegar hasta donde esta
ac
tua
lmente
.Enlaindus
tr
iaseref
iereconfrecuenc
iaaes tasevo
luc
ionescomo“gene rac
iones
”o
s
implemen
te“G”,
locua
lsere
fie
rea la madu
rezycapac idadesdelaredce
lularactua
l.[2]

2
.3.1P
rime
ragene
rac
ión

Lap r
imeragene rac
ióno1Gesl lamadalae radellad r
il
lo(1973- 1988
).E s
tasfue ronno rmasde
redes móv i
les, analóg
icas, que sein trodu jeron enlos años 80 y con tinuó has ta quefue
reemp lazadopo rlosteléfonos móvilesd igi
tales2G . Unadelasno rmasfue NMT(No rd
ic Mobi
le
Telephone),usadaenlospa ísesnó rdicos, Eu ropade lE s
tey Rus ia.Otrafue AMPS(Advanced
Mobile Phone System)u t
i
lizadaenlos E stados Unidos.An teceden tesdelatecno logía1Gese l
teléfono móvi
lderad io.Losteléfonosce lularesseh icieronpopu laresyrecibie
ronlademandade l
públicoduranteelpe r
íodo1983a1989 .Losd isposi
tivose ranins ta
ladosgeneralmen teencoches,
pueslosp rimeros modelosdelosd ispositivosdep r
ime ragene raciónnofuerond iseñadospa raser
portát
iles
.

F
igu
ra2
.2: Mo
toro
laDynaTAC8000X

2
.3.2Segundagene
rac
ión

Duran tela década de 1990(1988-1998 )


,latecno logía sobrela queloste léfonos celulares
funcionaban,fuellamada2G .E s
tados Unidosy Eu ropau t
il
izaban enese momen top roveedo res
d
igitalesdete le
foníacelularyredes.T e
léfonoscelula res2Gten íanunared másráp idaquelaque
funcionaen lasseña lesderad io
.
2Gsus ti
tuyó alared delasf recuenc
ias analógicasyf inalmente,la adaptac
ión dela sredes
mode rnas h
icieron obsoletaslasfrecuencias ana
lóg icas . Losteléfonoscelu
lares 2G e ran más
pequeños ,conunpesoap rox
imadode100a200g ramos .E stosfueronde manoye ranpo r
táti
les.
Norma lmentenopod íantransfer
irdatos,comoco rreoe lect
rónicooso ftware
,queno seanda tos
d
igitalesdevoz ,yo trosda tosbásicosauxil
iares,comofechayho ra.Sinemba rgo,apa recee l
servicioSMScomounafo rmadet ransmis
ióndeda tospa raalgunasde lasnormas.

Por todoslos avances queinvo


lucraron alos d
isposi
tivos móv
i
les
, sus ba
ter
ías
, y su
procesamien
to,
lapopula
ridadde
lte
léfonoce
lu
larc
rec
iórápidamente
.

19
F
igu
ra2
.3:Nok
ia

2
.3.3Te
rce
ragene
rac
ión

Laterce
ra generac
ión(1998- 2008
) pe
rmi
tió queloste
léfonos no só
loseancapaces de hacer
l
lamadas, env
iar mensajes detextoyjuga
ra ljuego delavibor
itasino quetamb
ién pud
ieran
rep
roduci
r mús
ica,tomarfotosonavegarpor
interne
t.

Latecno logía 3G esla ú l


tima delas delas gene rac
iones en comun icac
iones móviles.E s

d
iseñadapa raqued isposi
tivos móvi
lesqueinc luyenunaexpe r
iencia mul
timed
iave rdadera,con
carac
te r
íst
icasde mayo rvelocidaddet ransferenciapasena da rcabidaaap l
icac
ionescomolas
basadasen Web .Losse rviciosasoc
iadoscon3Gp roporcionanlapos ib
il
idaddet ransfer
irtanto
voz como da tos, queincluyenla desca rga dein fo
rmación,intercambio de cor
reo ele c
trón
ico,
mensajer
íains tan
tánea y v ideo enl ínea. Lastecno logías de 3G son unarespue sta ala
espec
ificac
iónde laUn iónInternac
iona
ldeT elecomunicacionesene laño2000 .

Lasredes3Gt ienenunave loc


idaddet rans
ferenc
iapotenc
ia
ldehas ta3 Mbps.Encompa rac
ión,e
l
teléfonomásrápidode 2G pod ía a
lcanzarhasta 144kbps. Loste
léfonos 3G
,soncomo m in
i-
ordenadores portá
t
iles y puede adap ta
rse a ap l
icac
iones de banda ancha como la
v
ideocon fe
renc
ia,streamingdev ídeodesde Web ,yenv iaryrecibi
rdeinmed ia
to mensajesde
correoelec
trón
icocona rch
ivosadjuntos.

20
F
igu
ra2
.4: Mo
toro
laRAZR

2
.3.4Cua
rtagene
rac
ión

Lacuar
tagene
rac
ión oeradel Smar
tphoneocur
rióa
lm ismotiempoquelate
rce
raylaqu
inta
gene
rac
ión
.Seext
iendedesdepr
inc
ip
iosdel año2002hastae
lpresen
te.

Dent
rodelosdispos
i
tivos móv
iles
,unsma rtphone(cuyat raducc
ión en español sería“te
léfono
inte
l
ige
nte”
)esunaevo luc
ióndeltelé
fono móvi
ltrad
iciona
lquecuentaconciertascaracte
rís
ticasy
pres
tac
ionesqueloacercan másauno rdenadorpersonalqueauntelé
fonotradic
ional
.

Ent
re dichas ca
racterís
t
icas, se puede encontrar una me jora enla capacidad de proceso y
a
lmacenam ien
to de da tos
,conex ión aInternet mediante W i-F
i, pan
tal
la tác
ti
l, ace
lerómetro,
pos
icionadorgeográfico
,teclado QWERTYy d ive
rsasap licaciones deusua
riocomo navegado r
web,cl
ientedecorreo ,apl
icacionesof
imát
icas,reproduc toresdev ídeoyaudio
,etc.inc
lu yendola
pos
ibi
lidaddedesca rgareinstala
rotrasnuevas.

Apesar de es
tasimpo r
tantes mejoras conrespecto asus p redecesores móvi
les
,e lreducido
tamañodelos smartphonesconllevainexorab
lementelimitac
ionesd eha rdwarequelos mant
ienen
c
laramente di
ferenc
iados delos o rdenadores convencionales.E s
tasl imi
tac
iones serefle
jan
pr
inc
ipa
lmente en panta
llas más pequeñas , menor capacidad delp rocesador
,rest
ricc
iones de
memor
ia RAM y memo r
ia pers
istente, y neces
idad de adap tarel consumo de ene rg
ía ala
capac
idaddeunapequeñaba te
ría.

Es
taslimi
tac
iones ob
l
igan atene
r muy pre
sentelacapac
idadreal deld
ispos
i
tivo alaho
ra de
desa
rro
lla
r su so
ftwa
re,yaseanapl
icac
ionesdeusua
riooelprop
iosistemaopera
tivo
.

21
F
igu
ra2
.5:Losp
rime
rossma
rtphonep
roven
íandeemp resascomoNok
ia,Handsp
ring
,yResea
rch
in Mo
tion

2
.4Desa
rro
lloenap
licac
iones móv
iles

E
l desa r
rol
lo de apl
icac
iones móv
i
lesconlleva unavariedad deconside
rac
iones de acue
rdoal
propósi
toyescena r
ioparaelquevanase ru t
i
lizadas
.Hacea lgunosañosseteníalacreenc
iaque
desarro
lla
r apl
icaciones móvi
les eraigual a desar
rolla
r una aplicac
ióntradic
iona
l pero en
“pequeño ”
.

E
l desa r
rol
lo de ap
licac
iones móvi
les d
if
iere de
l desa
rro
llo desof
twaretrad
ic
iona
l en muchos
aspectos
,loquep rovocaquelas metodo
logíasusadasparaestosento
rnostamb
iénd
if
ierandelas
del sof
twa re c
lás
ico.E sto es po
rque el sof
tware móvi
ltiene que sat
is
face
r una se
rie de
requerimientosycondic
ionan
tesespecia
lesquelohace máscomp le
jo[19
]:

● Cana lradio
: considerac
ionesta
lescomolad isponib
i
lidad,lasdesconex
iones,lavariab
i
lidad
del ancho de banda
,la he te
rogene
idad deredes olosr iesgos de segu
ridad debentenerse
especia
lmenteencuen taenesteento
rnodecomun icac
iones móvi
les
.

● Movi
lidad: aqu
íinf
luyenconside
racionescomola m
igraciónded i
recc
iones
,altalatenc
iadebido
acambiodees tac
iónbaseolages tióndelainfo
rmacióndepend ien
tedelocal
ización.Sobreesta
ú
lt
ima,dehecho ,sepuedenimplementarunsinf
índeaplicaciones
,perolain
formacióndecontexto
asoc
iadaresu
lta muchasvecesincomple
tayvaríaf
recuentemen te
.

● Po rtabi
lidad
:laca rac
ter
íst
icapo
rtab
i
lidaddelosd
ispos
i
tivosimp
licaunase
riedel
imitac
ione
s
f
ísicasd i
rectamen
terelac
ionadasconelfacto
rdeformadelos mismos,comoeltamañodelas
panta
llas,odeltec
lado
.

● Fragmentación delaindus
tria: laex
istenc
iade unacons
ide
rableva
riedaddeestándares
,
p
rotoco
losytecnolog
íasderedd
iferen
tes,añadencomp
lej
idada
lescenar
iodeldesa
rro
l
lo móv
il
.

● Capacidadeslimi
tadasdeloste rm
inales: inc
luimosfactorescomolab a
japotenc
iadecá lculo
og rá
fica
,losr
iesgos enlaintegridad de da
tos,lasinte
rfaces de usuar
io pocofunc
ionales en
muchosaspec
tos,labajacapacidaddealmacenam iento
,ladu racióndelasbater
íasoladif
icultad
paraelusodepe r
ifé
ricosen movi
l
idad.Factorestodosque,po ro t
rolado
,estánevoluc
ionandoen
22
ladi
reccióndelaconve
rgenciadelosu
lt
raportá
ti
les(ne
tbooks
)conlosd
ispos
i
tivosin
tel
igen
tes
,
cons
ti
tuyendocadavez menosune
lemen
todi
ferenc
ial
.

● Usabil
idad: las neces
idades esp
ecí
f
icas de ampl
ios y va r
iados grupos de usuar
ios,
combinadosconlad
ive
rsidaddepla
tafo
rmastecno
lóg
icasydispos
i
tivos
,hacenquee ldiseñopara
todosseconvie
rtaenunrequ
is
itoquegeneraunacomple
j
idadcrec
ientedi
fíc
i
ldeaco ta
r.

● Time-to-market: en unsec
torcon un d
inamismo p
rop
io, den
tro de unaindus
tria en pleno
cambio,losrequisi
tosqueseimponenentérminosdet
iempodelanzam ientoson muyestr
ictosy
añadencomp le
jidadesenlages
t
ióndelosprocesosdedesa
rro
l
lo.

E
ld iseñodes is
temasdeso ftwa re móv i
les ,po rtanto,bas tante máscomp lejoquee ltrad
icional
[20],fo rzandoa los inves
tigado resarecons iderarelusode las metodo logíasactualesdedesa rro
llo
deso ftwa re .El usode me todo log ías ág ileses e l med io más ap ropiado pa ra el desar
rol
lo de
tecnolog íaen móv i
les,aunquelasca racteríst
icasespec ialesdeloste rminalesydelasredesde
tele
fon ía móv ildemandana lgunosa jus tessob relasac tuales me todologíaságiles. Hapasadoya
muchot iempodesdee lestrenodep latafo rmasab ie
rtaspa raeldesa rro
llodeap licaciones móv i
les
como Java o S ymbian. La d ispon ibil
idad de he rramien tas ylafac il
idad pa ra construiry
come rcializarsoftwareparae l móv ilhahechoquesunúme rosed ispare.Aesosehaañad ido,ta l
comose menc iona mása rriba ,laapa ricióndelas me todolog íaságilesadap tadaspa rae ldesarrol
lo
deap licac ionespa raelesc ritorio.Los móv ilessonun med iod i
ferenteyser igepo runcon junto
d
iferen tesdereg las.G randesp roduc tos móv ilessoncapacesdeadap tarseeinc lusoir másalláde
laes trateg iat
radic
ionalpa ra iden ti
f
ica rnueva ssoluc
ionesyunafo rmaún icapa rahace rfren
tealos
retosy losbene f
iciosquee l med io móv i
ltienepa raofrece r[21].

2
.5T
iposdeap
licac
iones móv
iles

Comohemos menc ionadoan te


riormente,elecosis
tema móvi
lesg randeycomp le
jo. Set
ieneun
númerodeopcionesenlosquee l med
ioseu t
il
izaparahacerfren
tealosob jet
ivos
,cadaunocon
susprosysuscon tras.Algunosdesa rro
llosseapresuranac rea
rap licac
ionesfunc
ionales
,pero
acces
iblea menosusua r
ios.O trossed ir
igenaun me rcado másg rande,peroson mucho más
comple
josycostosos.[2
]

Cuandoseen frentaeldesa rrollodeunnuevos istema móvi


l,set
ienequedec id
irenquétipode
contex
tolaap l
icaciónvaap resenta
rsucon tenidooinformación
. Eno t
raspalabras
,quét ipode
apl
icac
ión es el más adecuado a nues tro problema o neces
idad. Acont
inuaciónsetratanlos
d
iferen
testiposdeap licac
iones móv i
lesysede finencadaunadees tasopciones
:sm s
,Sit
ios web
para móv
i
les,Widge t Web móviles,Apl
icaciones Web móv
iles,apl
icacionesnat
ivasyjuegos.

2
.5.1SMS

Laap l
icac
ión móvil másbásicaquepodemosc rea
rsonlasdet ipo SMS.Apesardequepodría
parecerextrañoconside
rarlasap
licacionesde mensajesdetexto
,sonsinembargoundiseñocon
exper
iencia. Dadalaubicu
idaddelosd ispos
i
tivosquesoportan SMS,estasap
l
icac
ionespueden
serherramientasút
ilescuandoseintegracono t
rost
iposdeap l
icac
iones móv
i
les
.

No
rmalmen
te,elusua
rioenv
íaunapalab
rac
laveauncódigocor
todepocosd
ígi
tosquere
sul
taen
ladevo
luc
ióndein
formac
iónounenlaceacon
ten
idosdecal
idad
.

23
Losusos máscomunesdelasapl
icac
iones SMSsonladesca rgadeconten
ido móv
i
l,ta
lcomo
tonosdel
lamadaeimágenesoparain
teractua
rconb
ienesyse rv
ic
iosrea
les
.Los mensa
jesSMS
tambiénpuedenu
t
il
iza
rseparacompradetiempoenunestac
ionamien
toozonadepago.

Lasven
tajasde
lasap
l
icac
ionesSMSson
:

● Traba
janencua lqu
ierdispos
it
ivo móv
ilcas
iin s
tantáneamente
.
● Sonút
ilesparaelenvíodea ler
tasatiempoalusua r
io.
● Sepuedenincorporarencualquie
r Webodeap licac
ión móv
i
l.
● Puedenserfác
ilesdeconfigu raryadminis
tra
r.

Lasdesven
tajasdelasap
l
icac
ionesSMSson
:

● Es
tánlimi
tadosa160ca rac
teres
.
● O
frecenunaexpe r
ienc
ial
imi
tadabasadaentexto
.
● Lasimplementac
ionespuedenresu
lta
rcos
tosas.

2
.5.2S
it
ios webpa
ra móv
iles

Unsit
io web móvi
lesunsit
io webdiseñadoespec
íf
icamen
teparadispos
i
tivos móv
i
les,queno
debeconfund
irseconlav
isua
lizac
ióndeuns i
t
iohechoparalosnavegado
resdeesc r
ito
rioenun
navegado
r móvi
l.

S
it
ios web pa
ra móv
iles se ca
rac
ter
izan po
r su senc
i
lla a
rquitec
tura"dr
il
l-down
" ola simp
le
p
resen
tacióndeen
lacesdenavegac
iónquelolleva
ráaunapág inadeunn ive
l máspro
fundo
.

S
it
ios webpara móv
i
lessuelentenerundiseñosenc
i
lloysue
lenserdenatu
ralezain
forma
tiva
,
o
frecenpocose
lementosin
terac
t
ivosquesepuedenespera
rdeuns
i
tiodeesc
ri
tor
io.

A pesar de quelos s i
tios web pa ra móv i
les son bas tantefác i
les de crear, no se mues t
ran
consis
tentementeat ravésde mú lt
iplesnavegado res móviles
.La web móv i
lhaidoenaumen toen
e
lusoenlosú l
timosañosenla mayo r
íadelosp r
incipales mercados,pe rolaexpe riencialimitada
of
recepocosincen tivospa raelusua r
io. Muchoscompa ranla web móvilaunave rs
iónde10años
at
rásdela Web :len to,ca ropa raelusoynohay muchoqueve r
. Cuandosein trodu jeron mejores
navegadores móvi
lesalasp lata
formasded isposi
tivoscomoe liPhoney And roid
,laca l
idadde
s
it
ios webpa ra móv ilescomenzóa me jorarde mane raespec tacular
,ycone l
lo,la me joradesu
uso. Porejemplo, ensó lo un año,e l mercado de EE .UU . pasó de estar apenas enlosc inco
pr
inc
ipalesconsum ido resdela web móv ilal núme rouno ,eng ranpa rtedeb idoa limpac todel
iPhone.
Lasventajasdesit
ioswebpa ra móv
ilesson lossigu
ien tes
:
● Sonfác i
lesdec rea r
, man tenerypublicar
.
● Sepuedenu t
il
iza rlas mismashe rramientasytécn icasqueseu t
il
izanpa rasit
iosdeesc rito
rio.
● Casitodoslosd ispos i
tivos móvi
lespuedenac cede rasit
iosweb móv iles.

Lasdesven
tajasdelossi
tioswebpara móvi
lessonlossigu
ien
tes
:
● Puedenserdif
íc
ilesdesopor
tar mú
lt
iplesdispos
it
ivos
.
● Of
recenalosusua r
iosunaexper
ienc
ia l
imitada.

24
● La mayor
íades it
ios web móvi
lessonsimp
lemen
tecontenidodeescr
ito
riofo
rma
teadopa
ra
d
ispos
i
tivos móv
i
les.
● Sepuedenca rga
rlaspáginaslen
tamen
te,deb
idoala
latenc
iadelared

2
.5.3 W
idge
t Web móv
iles

Engranparteenrespuestaala ma laexper
ienc
iap roporc
ionadaporla Web móv
i
lat ravésdelos
años
,haex ist
idounc rec
iente movim
ientoparaestablece
rW idge
t. Un W
idge
tesuncomponen te
deinte
rfaz de usua
riocon un bloqueindepend
iente decódigo HTMLque es ejecu
tado porel
usua
riodeuna mane rapar
ticu
lar
.

Básicamente
,los Widgets Webpara móv
i
lessonpequeñasap l
icac
iones Webquenosepuede
e
jecu ta
r porsí m
ismos . Puede c
rea
ra t
rac
t
ivas expe
rienc
ias de usuar
io que ap
rovechanlas
funcionesdeld
isposi
tivoy
,en muchoscasos
,requ
ierenejecuta
rse mien
traseld
ispos
it
ivoestáen
línea.

Lasven ta
jasde W
idgets Webpara móv
ilesson:
● Sonfác i
lesdecrea
r,apart
irdeHTML ,CSSyJavaS c
ript
● Puedense rfác
i
lde imp
lementaratravésde múl
tip
lesdispos
it
ivos
.
● Ofrecenunaexpe r
ienc
iadeusua r
io mejo
radayund iseño másr
ico
, ya
lgunosnorequ
ieren
conexión.

Lasdesven
tajasde Widge
ts Webpa ra móvile
sson:
● Porlo gene ra
lrequ
ieren una plataforma de Widgets compat
ibles para se
rinsta
lado en e
l
d
ispos
it
ivo.
● Genera
lmen tenosepuedee jecutarencua lqu
iernavegador Webpa ra móv
i
les.
● Enalgunoscasos,serequ
ieree lap rendiza
jeadic
iona
ltécnicaspropiasde Widge
ts.

2
.5.4Ap
licac
iones Web móv
iles

Apl
icaciones webpa ra móvi
lessonlasap li
caciones móvi
lesquenoneces i
tanse rinsta
ladoso
compilados en eldispos
it
ivo dest
ino. E
l uso de XHTML , CSS y JavaScr
ipt
, son capaces de
proporciona
runaexpe r
ienciadeap l
icac
iónpa raelusua r
iofina
lmient
rassee jecutaencua lqu
ier
navegado r web pa
ra móviles
. Las ap
l
icaciones web permi
ten alos usua
riosinteractua
rcone l
contenidoent iemporea
l,dondeunso loc
licotoquerealizaunaaccióndent
rode lav is
taactua
l.

Pocodespuésdelaexplosióndela Web2.0,
lasap l
icac
ioneswebcomoFacebook ,Fl
ickry Google
Readergolpeóalosnavegadoresdeesc r
ito
rio
,yhubounad iscus
ióndecómol levarlas m
ismas
ap
licac
iones webparadispos
it
ivos móv
i
les.E l mov
imiento Web2.0t
rajolospr
inc
ipiosded iseño
cent
radosenelusuariodeescr
itor
ioalawebyfue ron muynecesar
iosenelespac
ioweb móv i
l.

E
lre to
,comos iempre
,fuelafragmentacióndeldispos
i
tivo
.Losnavegado
res móv
ilesfue
ronaños
detrásdelosnavegado resdeesc r
ito
rio,haciendocas
iimpos
ibleparaundispos
i
tivo móv
ilhacer
unaexperienciacompa rab
le.Sibiene lapoyode XHTMLsehab íaconver
tidobastan
tecomúna
travésded is
pos i
t
ivos
,lap res
tac
iónde CSS2fue muyinconsis
tenteyelsopor
tepa raJavaS
crip
t,
DHTMLyA jaxe racomple
tamenteinex
istente
.

Conlain
troducc
ióndeliPhone
,sehap roduc
idoungrancambioentodoslosámbitos
. Coneluso
de WebK
it,eliPhonepodíarende
riza
rapl
icac
iones webnoopt
imizadaspa
radisposi
t
ivos móv
i
les

25
comope r
fec
tamen
teusab
les,incluyendo DHTML
.Deesta mane
raráp
idamen
tec
rec
iólac
reac
ión
deap
licac
ioneswebpa
ra móv
ilesoptimizada
ssob
retodoparael
iPhone
.

Lasventajasdelasapl
icac
ionesweb móvilessonlossigu
ientes:
● Sonfác i
lesdecrear
,conbaseHTML ,CSSyJavaS cr
ipt
.
● Sonfác i
lesdeimplementaratravésde mú
lt
iplesd
isposit
ivos
.
● Ofrecenuna mejo
rexperienc
iadeusua r
ioyund iseñorico
,ap rovechando
lasca
rac
ter
íst
ica
sde
l
d
isposit
ivoye lusos
inconexión.
● Elcontenidoesaccesib
leacua lqu
iernavegadorwebpa ra móvi
les.

Lasdesventa
jasdelasapl
icac
ionesweb móvilessonlossigu
ientes:
● Laexperienc
iaópt
imapod r
íanoesta
rd isponib
leentodoslosteléfonos.
● Puedese runreto(aunquenoimpos
ible)soporta
r múl
t
iplesdisposit
ivos.
● Nosiemp recompatib
leconlasfunc
ionesna t
ivasdelaap licación,aligua
l queel modos
in
conex
ión,
labúsquedadeub icac
ión
,elaccesoa lsis
temadea rchivos,lacámara
,e tc
.

2
.5.5Ap
licac
ionesNa
tivas

Es
tasap
l
icacionesenreal
idaddeber
íal
lamarse"ap
l
icac
ionesde
lap
lata
forma
",yaquet
ienenque
se
rdesa
rro
lladoycompiladoparacadapla
tafo
rma móv
i
l.

Estasaplicac
ionesna t
ivasodelaplatafo
rmasecons truyenespec
íf
icamenteparalosdisposi
tivos
quee jecutan
lap la
taformaencuest
ión.El máscomúndetodaslasp lata
formasesJava ME
(J2ME ).Enteoría,undispos
it
ivoescr
itocomoun M IDletJava MEdeber
íafunciona
ren lagran
mayoríadelosteléfonosvend
idosentodoe l mundo.Lareal
idadesque inclusounaaplica
ción
escr
itaenun M IDletJava MEtodav
íarequierealgunosajus
tesypruebaspa racadadispos
it
ivoque
seimp lementa.

Lac reac
ióndeunaap licac
iónna t
ivasign
if
icadecid
irquédisposi
t
ivossevanasopo rta
r,tene
run
mediode pruebasyce rt
if
icac
ión,yun métodopa radis
tr
ibu
irlaaplicac
iónalosusua r
ios.Lagran
mayoríadeapl
icacionesde laplata
formaestáncert
if
icadas
,sevendeysed ist
ribuyeatravésde
unpo rta
lde
lope radorounatiendadeap l
icaciones
.E sposib
lecrea runaapl
icaciónJava ME
MID
le typub
lica
rdefo rmag ratu
itaenla Web,perosehacera ravez.

Dadoque lasap
licacionesde laplataformasepos ic
ionanen lapa r
tesupe r
iorde lacapadela
p
latafo
rmasepuedeap rovecharla mayoríadelasca racte
rís
t
icasde ldisposi
tivo,t
raba
jarenlínea
osinconexión
,accede ra laubicaciónya ls
istemadea rch
ivos,uti
lizarlacáma rade ld
ispo
sit
ivo,
etc
.Deah ílanecesidaddeunace r
ti
ficac
iónantesdeque laaplicaciónsed istr
ibuya,pa
ra
asegura
rsedequenad iedis t
ribuyeunaap l
icaciónquerobada tospe rsonalesdeunusua r
ioo
mal
ic
iosamenteuti
lizaeldisposit
ivopa rapropagarvi
rus.

Lasventajasdelasap l
icacionesna t
ivasson:
● Ofrecen una me jor exper
iencia de usuar
io,of
rec
iendo un diseñorico y ap
rovechando las
carac
terís
ticasdeldisposit
ivodando laposib
i
lidaddeu
ti
lizar
lasinconex
ión.
● Sonre lat
ivamentefácilesdedesa rro
l
larparaunaso
lap la
taforma
.
● Sepuedecob rarporlasap l
icaciones.

Lasdesven
tajasdelasapl
icac
ionesnat
ivasson
:
● Nopuedense rfáci
lmentepor
tadasao t
rasp
lata
formas móv
i
les.
● Eldesar
rol
lo,pruebaysopor
tede múl
tip
lesp
lata
formasdedispos
it
ivoses muycos
toso
.

26
● Serequ
iere
lacer
t
if
icaciónyladis
tr
ibuc
ióndeunte
rce
ro.
● Requ
ierequecompa
rtalosing
resosconunoovar
ios te
rce
ros
.

2
.5.6Juegos

Losjuegosson lost
iposdeap l
icacionesmáspopularesparadispos
i
tivos móv
iles
.
Técn
icamen te
,losjuegossonenrea l
idadapl
icac
ionesnativasqueu t
il
izanlaSDKdelap lata
forma
parac rea
rexpe r
ienciasdeinme rs
ión. Pe
rolost ratamosdefo rmad ife
ren
tedelasap licac
iones
nat
ivas por dosrazones : no pueden serfáci
lmente dupl
icada como aplicaciones Web, yla
m
igraciónao t
rasplatafo
rmas móvi
lesesunpoco másfác i
lque last
ípicasapl
icacionesnat
ivas.

Losjuegossonre
lat
ivamentefáci
lesdepo r
tar
,esquela mayo rpar
tedeunjuegoestáenlos
grá
f
icosydehechou t
il
iza muypocodelaAP Idispos
i
tivo
.La mecán
icade
ljuegoesloún
icoque
t
ienequeadapta
rsealasdiversasp
lata
formas
.

Lasventajasdeaplicac
ionesdejuegossonlossigu
ientes:
● Proporcionanuna manerasimp
leyfácildecrearunaexpe r
ienc
iade
inme
rsión
.
● Puedense rportadoa múl
tip
lesdispos
i
tivosconre
lativafac
i
lidad
.

Lasdesven
tajasdeapl
icac
ionesdejuegossonlass
igu
ientes
:
● Eldesar
rol
lopuedesercostosoparaunjuegoor
ig
ina
l.
● Nopuedese rpo
rtadoala Web móvi
l.

2
.5.7Compa
rac
ióndet
iposdeap
licac
iones

Enresumen,pa
raayuda
racompara
rycon t
rasta
rcuáldeestostiposdeaplicac
iones móv
i
leses
me
jorparaunde
term
inadop
roduc
to móv
i
l,sepresentanen
las iguien
tetab
la.

D
ispos
it
ivo Exper
ienc
iade Ca
racte
rís
ticas
Comp
lej
idad Lengua
je Sopo
rteo
ff
line
desopor
te usua
rio de
ldispos
itivo
SMS Todos S
imple L
imi
tada N
inguno No N
inguna
Si
tios Web Todos S
imple L
imi
tada HTML No N
inguna
W
idget Web A
lgunos Med
ia Buena HTML L
imitado L
imi
tada
HTML,
Ap
licaciones
A
lgunos Med
ia Buena CSS, L
imi
tado L
imi
tada
Web
Javasc
rip
t
Ap
licac
iones
T
odos A
lta E
xce
len
te V
arios S
í S
í
Nat
ivas
Juegos T
odos A
lta E
xce
len
te V
arios S
í S
í

T
abla2
.1:Compa
rac
ióndet
iposdeap
l
icac
iones

27
Cap
ítu
lo3
.Rea
lidadAumen
tada

En el capí
tulo an
terio
r hemos descr
ipto e
l concep
to de dispos
it
ivo móv
il
, su evo
luc
ión y
ca
racte
ríst
icas. En e
lp resen
te cap
itu
lo exp
l
ica
remos el concep
to dereal
idad aumen
tada
, su
implementac
iónye jemplosdesuusoen laac
tua
lidad
.

3
.1In
troducc
ión

Enelaño1992T omCaude llcreaeltérmino Real


idadAumen
tada(RA )pa radescrib
irunapantal
la
queusar
íanlostécnicoselect
ric
is
tasde Boe ingque mezc
labag ráf
icosv i
rtualesconlarealidad
fís
ica
.Estes
istemalespe rmi
t
iríaaumen ta
rlae f
ic
ienc
iadesutrabajoalfaci
li
tar
lesdealgunaforma
laopera
t
ivasobrelastareasarealiza
r.

La RA es una va r
iac
ión delarea lidad virtua
l(RV )
. Lastecnolog
ías dela RV sume rgen
completamenteaunusua riodentrodeunen tornosintét
ico.Mien
trasseestá
inme rso
,elusuariono
puedeve rel mundorealquelerodea.Porelcon t
rar
io,la RApermitea
lusuarioverel mundoreal
,
conobjetosvir
tualessupe
rpuestosocompues tocone l mundoreal
.Porlotanto
, RAsuplementala
rea
lidad,enluga rdereemplazar
laporcomp leto.Loidealseríaquealusuar
iolepa rezcaquelos
ob
jetosvir
tualesyrealescoex
istenenelm ismoespac io.

La Real
idadAumen tada mejoralapercepcióndelusuar
ioylainte
raccióncone l mundoreal
.Los
obje
tosvir
tuales mues
tranlainformaciónquee lusua
rionopuedede tecta
rdirec
tamen teconsus
prop
iossent
idos.La in
formacióntransmi
tidapor
losobjetosv
ir
tua
lesayudaa losusua r
iosareal
iza
r
tareasdel mundoreal
.[22]

S
iguiendola de f
in ic
ión del au
tor Rona
ld Azuma[22 ][23
] un s
is
tema de RAt
iene 3
requerimientos:
● Comb inalarealidadcon in
formac
iónsin
tét
ica
● Losob je
tosvirtualesestánreg
ist
radosenel mundorea
l
● E sinteract
ivoent iemporeal

Desdeunpunto devista másampl


io,la RAesunaap l
icac
ióninte
rac
tivaquecombinalarea
lidad
conin
formac
iónsinté
tica-talcomoimágenes3D ,sonidos
,videos
,texto
,sensac
ionestác
ti
les-en
t
iemporealydeacue rdoalpuntodevis
tadelusuar
io.

Lainformac iónv i
rtua
ltienequees tarvinculadaespac ialmenteal mundoreal
,esdec i
r,unob je
to
v
irtualsiemp redebeapa rece
renc iertaubicaciónrelat
ivaaunob je
toreal
.Lav isual
izacióndela
escenaaumen tada(mundoreal+s intét
ico)debehace rsedemane racoheren
tepa raelusua rio
.Se
denom inareg ist
rodeimágenes( regist
rat
ion)alp rocesodetene rdiferen
tesdatosenre laciónaun
únicosistemadecoo rdenadas.Pores te mot
ivo,seneces itasaberentodo momen tolapo sic
ióndel
usuario,tracking,conrespectoa l mundorea lydees ta manerala mezcladein fo
rmac iónrealy
s
in té
t
icapod ráregist
rarse
.

SedenominaT rack
ing[24
]alprocesodeseguimien
todelapos ic
iónyor
ien
tacióndeunobje
to.
Puederea
lizarset
rack
ingdelusuar
iooeltrack
ingdeob jetosrea
les
,pore
jemplo,ene
lcasode
unaapl
icaciónde medic
inadeentrenam
ientoparacirug
íaenlaquee lpar
t
icipan
tesos
t
ieneun
b
istu

.

Ad
ife
renc
iadelasapl
icac
ionesdeRV
,lasapl
icac
ionesdeRAgenera
lmenteneces
itanla mov
i
lidad
de
lusuar
io,inc
lusohac
iaambien
tesex
ternos-ening
léssedenominanapl
icac
ionesoutdoor
. En

28
d
ichasap
licac
ionesderealidadaumen
tadapuedesernecesa
ria conoce
rlapos
ic
ióng
loba
l de
l
pa
rt
ic
ipan
teu t
i
lizandod
ispos
it
ivoscomo GPSyb
rúju
lasd
ig
ita
les
.

Dependiendo deld ispos


it
ivo de v
isua
l
izac
ión usadolas ap
l
icac
iones derea
l
idad aumen
tada
puedenbasa rseen[22]:
● Gafasdev ideosee- through
● Gafasdeóp t
ica see-through
● Proyector
● Monitor
● Disposi
tivos móv
ilesoHandHe ld

F
igu
ra3
.1-Ga
fasdeóp
ti
casee-
through

F
igu
ra3
.2-Ga
fasdev
ideosee-
through

29
F
igu
ra3
.3-P
royec
tor

F
igu
ra3
.4-Mon
i
tor

F
igu
ra3
.5-D
ispos
i
tivosHandhe
ld

3
.2Ap
licac
iones

EnAzuma(1997)[22 ]puedenencon
trarseejemp
losdelospr
ime
rosdomin
iosdeap
l
icaciónt
ípicos
delarea
lidad aumen tadacomo medicina
, fab
ricac
iónyrepa
rac
ión
, ano
tac
iónyvisual
ización
,
P
lani
f
icac
ióndet rayecto
riasRobo
tyap l
icac
iones m
il
ita
res
.

3
.2.1 Med
icina

Los médicospod r
íanusarlareal
idadaumen tadaparalavisual
izaciónyen trenam
ientoparala
formac
iónenc irug
ías
. Puedeserposiblere coge
rencon juntosdeda tos3Ddeunpac ienteen
t
iemporea l, usando senso
res noinvasivos comolaresonanc ia magnética(MRI)
,tomog raf
ía
computar
izada(TC )oimágenesdeultrasonido.Es
tosconjuntosdeda tospodríanse
rtraduc
idosy
combinadosentiemporealparaverelpacienterea
l.Enefecto,estoledaríaaun médicola"visión
derayosX "dent
rodeunpac ien
te.

F
igu
ra3
.1:Fe
toV
ir
tua
lden
trode
lvien
tredeunapac
ien
teemba
razada
.
30
(Cou
rtesyUNCChape
lHi
l
lDep
t.o
fCompu
terS
cience
.)

3
.2.2Fab
ricac
iónyrepa
rac
ión

Lasinstrucc
ionesquetienenqueve rconpasospa rafabricarorepara
runob jetode
term
inado
podr
íanse r másfác
iles de en
tende
rsi estuv
ieran d
isponibles
, nocomo manua lescontex
to e
imágenes ,s
ino másbiencomod ibu
jos3Dsupe rpuestosene lobje
torea
l, mos
trandopasoapaso
lastareasquehayquehace rycómohace r
las.

F
igu
ra3
.2: Mecán
icos M
i
li
ta :h
res t
tp:
//www
.you
tube
.com
/wa
tch?
v=mn-
zvym
lSvk

3
.2.3Ano
tac
iónyv
isua
lizac
ión

La RApod ríase
ru t
il
izada para poner notas de ob
jetosy entornosconin formac
ión púb
lica o
pr
ivada.Porejemplo,siestuvieradispon
ibleunabasededa tosquecon t
ienein fo
rmac
iónsob rela
es
tructuradeuned i
fic
io,laap l
icac
ión RApod ríadaralosa rqu
itectosuna"visiónderayosX "del
inte
riordeunedif
icio, most
randodóndees tánlastuberías
,conexioneseléc
tr
icasylases t
ructura
s
desopo r
tequeseencuen tranden t
rode lasparedes.

F
igu
ra3
.3:L
íneasvi
rtua
lesayudanalav
isua
l
izac
ióndelageome
tr
ía,comoseveenó
rbi
ta.
(Cour
tesyDav
idDrasc
icandPaulM
ilg
ram,U.To
ronto
.)

3
.2.4P
lan
if
icac
ióndet
rayec
tor
iasRobo
t

Late leoperacióndeunrobo tesa menudounata read if


íci
l,especia
lmentecuandoe lrobotestá
lejos,conla rgosretrasos en e
l en
lace decomun icación. Ba
jo estaci
rcunstanc
ia, enlugar de
controlardirectamente elrobot
, puedese rprefe
rib
lecon t
rola
r unavers
iónv ir
tua
l delrobot.El
usuariop laneayespec if
icalasaccionesdelrobot mediantela manipu
lac
ióndelave rsiónvi
rtua
l,
entiemporea l.Losresu l
tadosse muestrandirec
tamen teene l mundoreal
. Unavezquee lplan
está p robado y determinado, en
tonces el usua
riole d ice a
lrobo treal que e
jecute e
lp lan
espec i
ficado.
31
F
igu
ra3
.4:L
íneasv
ir
tua
les muest
ranun mov
imien
toprev
is
todeunbrazoderobo
t
(Cour
tesyDav
idD rasc
icandPaulMi
lgram,U.T
oron
to.
)

3
.2.5Ap
licac
iones M
il
ita
res

Aumenta
re l campo de v
is
ión delos p
i
lotos de comba
te conin
formac
ión de navegac
ión
,
ins
trucc
iones
, mapasyubicac
ionesenem
igashas idounadelasapl
icac
iones másprác
ticade
rea
l
idadaumen tada
.

F
igu
ra3
.5:V
is
ióndep
i
lotodecomba
te

3
.2.6Ap
licac
ionesAc
tua
les

Laapa r
ic
ióndelal ib
rer
íadecód igoab ierto ARToo
lk
it[25]ene laño1999d iolugaraung ran
crec
im iento en e
l desa r
rol
lo de ap
licaciones dereal
idad aumen tada
. En A zuma(2001)[23]
presentaunaac tua
lizac
iónde lapubl
icaciónanter
iordondedis
tinguetresgrandesáreasdenuevas
apl
icaciones clas
if
icadas en: ap
licaciones móviles
, apl
icac
iones colabora
tivas y ap
l
icac
iones
come rcia
les,quedesde lafechahanidoenaugec rec
iente
.

M
ientrasquelasp r
imerasaplicac
ionesdereal
idadaumen
tadasedesa
rro
llabanenunentorno
conocidoycont
rolado,elin
terésenaplicac
iónderea
l
idadaumen
tadapa
raunamb ien
teexterno
(outdoor
)fuec
reciendo.

Dent
ro delas ap l
icac
iones móv
iles pueden encont
rarse apl
icac
iones para asis
tencia ala
navegac
ión
,larecuperac
ióndeinformac
ióngeog rá
fica
,ap l
icac
ionesdea rqu
itec
tura, muse
íst
ica
,
juegos,e
tc. Den
trodelasapl
icac
ionescolabo
rat
ivaspuedenencon tra
rseapl
icacionesdediseño
,

32
entre
tenimien
to y educac
ión. Enlos úl
t
imos diez años hubo una exp
losión de apl
icac
iones
come rc
iales -pub
lic
i
tar
ias-que hacen uso delarea l
idad aumentada. En pa
rticu
lar
, pueden
encontra
rse muchosejemplosdeaplicac
iones webdondee lusuar
iointe
ractúaconunaescena
v
irtua
lpo r med
iodeun marcadorimp
reso.

F
igu
ra3
.6:RAu
ti
l
izando ma
rcado
res

3
.3D
iag
ramadeunaap
licac
iónderea
lidadaumen
tada

Unaapl
icac
iónderea
lidadaumen
tadat
ienet
respa
rtesp
rinc
ipa
lesqueson
:
● Track
ing
● Recuperac
ióndeinfo
rmac
ión
● Sal
idadeinfo
rmación

Laf
igura 3
.7 mues
tra un d
iag
rama delas d
ife
ren
tes pa
rtesinvo
luc
radas en una ap
l
icac
ión de
rea
l
idadaumentadavisua
l:

F
igu
ra3
.7:D
iag
ramadelaspa
rtesdeunaap
l
icac
iónderea
l
idadaumen
tada

3
.3.1Cap
turadelaescenarea
l

Unadelastareas mássign
if
ica
tivasentodosis
temade RAesladeiden t
if
ica
rlaescenaquese
qu
iereaumentar
. Enelcasodeloss is
temasqueu t
i
licenreconocim
ientov
isual
,esind ispensable
d
isponerdealgún mecanismoquepe rmi
tatomarlaescenapa raluegoserprocesada.En tonces
genera
lmen
teseiniciaconelregis
trodelasseña
lesdel mundoreal(gene
ralmentevideo,aunque
33
b
ien pudie
raser aud
io). Los d
ispos
i
tivos decap
tura deimágenesson d
ispos
it
ivosfís
icos que
recogenlarea
l
idad paraluego ésta pode
rser aumentada
. Bás
icamen
te, es
tos d
ispos
it
ivosse
agrupanendosgrupos
:

● D ispositivossee- through :estosdispos


it
ivo sreal
izansimultáneamentelata readecap tu
ra rla
escena rea l comola de mos t
rarlain formación aumen tada al usuar
io.E stos disposi
tivo s
acostumb ranat rabajarent iemporeal,haciéndo losnosó lo máscostososenp resupue s
tos ino
tamb iénencomp le
j
idad. Dentrodeesteg rupoencon tramosaque l
losdispos
it
ivosconoc idoscomo
head- mounted. Sabemos que estos d isposi
tivossee -th
roughllevan añoss iendo ut
il
izados, po r
e
jemp lo,enlos Head Up D isplays(HUDs )uti
lizadospo rlosavionesdecomba tepa rav isua
lizar
informaciónsob re a
ltu
ra,ve loc
idad,ident
if
icación de objet
ivos
,y otros datoss in necesidad de
re
tirarlavistadelazonaf rontaldelacabina.

● Disposi
tivos v
ideo-through:dent
ro de este g
rupo encon
tramoslos d
isposi
t
ivos donde e
l
módu
loquerea l
izalacapturadevideoesindependien
teal módulodevisua
l
ización. Enes
tese
encon
tra
ríanlascámarasdevideooloste
rminales móv
i
les
.

3
.3.2T
rack
ing

Enaplicac
ionesde RVy RAsedeberea l
iza
re lseguimientootrack
ingdelpar
tic
ipan
te[26
],pa
ra
dete
rm ina
rsuposic
iónyor
ientac
iónenel mundovi
rtual(enapl
icacionesderea
l
idadvi
rtual
)oenel
mundoreal(enelcasodeap
licac
ionesderea
lidadaumen tada)
.

E
ltrack
ingesp
rocesodesegu
imien
todeunobjetoen mov
imien
to,esdec
ir
,laes
t
imac
ióndela
pos
ic
iónyor
ien
tac
iónde
lmismoencadains
tan
te.

Enunaap
licac
iónderea
lidadaumentadaseneces
itaelt
rackingdelpar
tic
ipan
tepa raconoce
rla
ma
tr
izdet
ransfo
rmac
ionesgeomét
ricasyas
írea
l
izarelreg
ist
rode imágenessin
tét
icasyrea
les.

Enla mayor
íadeaplicac
ionesderea
l
idadaumentadasetra
tadereal
izarunt
rack
ingdelacáma
ra
quecapturalaescena.Aunquetamb
iénpuedet
ratarsede
ltrack
ingdelacabezade
lusuar
ioode
a
lgúnobjeto man
ipu
ladopo res
te.

E
ltrack
ingcompletoes
t
imalos6parámet
rosog radosdelibe
rtad(DOF)
.3paralat
ras
lac
iónen
cadaejeTx
,Ty
,Tz;y3para
losángu
losderotac
iónconrespec
toacadaejeƒÊ
x,ƒÊy,ƒÊz
.

Segúnlaap
licac
iónpuede in
teresa
rconoce
r:
● Laposic
iónyo r
ientaciónde lacáma
raenunsistemadecoordenadasg
lobal
● Laposic
iónyo r
ientaciónde lacáma
raenrela
ciónaunobje
todelaescenarea lencues
t
ión
● Laposiciónyorientacióndelacáma raenrelac
iónalaposiciónyor
ientac
ióndelcuadrode
v
ideoanter
ior

E
ltrack
ingenunaapl
icac
ióndereal
idadaumen tadapuedehacerse:
● Median
ted
ispos
i
tivosf
ís
icosespecí
f
icos.
● Median
teelanál
isisdela
imagencap turada
,denominadotrack
ingbasadoenv
is
ión
● Track
ingh
íbr
ido
,quecomb ina
lassalidasdedispos
i
tivosf
ís
icosconelanál
is
isdela
imagen

3
.3.2
.1T
rack
ing med
ian
ted
ispos
it
ivosf
ísicos

34
SegúnZhou(2008 )[27
],e
ltracking basadopuramenteensensoresfueuti
lizadoenlaspr
imeras
apl
icac
ionesderea l
idadaumentada,encontrándose muypocaspublicac
ionesrec
ientesqueno
ut
i
licencombinac
ionescont
rackingbasadoenv is
ión.

Segúnlatecnolog
ía e
ltrack
ing puederea
liza
rse u
til
izando sensores mecán
icos, magnét
icos
,
u
ltrasón
icos
,inerc
ia
les u óp
ticos
. Cada uno de es
tos d
isposi
tivos p
resenta sus ven
tajas y
desventa
jas
.

Ac
tualmente
, pueden encon t
rarse en e
l me
rcadote
léfonos móv
ilescon disposi
t
ivosin tegrados
cuyousoresulta muyapropiadoparaapl
icac
ionesdereal
idadaumen tada móv
i
l.Acon t
inuaciónse
deta
llanlos d
isposi
tivos máscomunes que pueden usa
rse pa
rat rack
ing en una ap
licación de
real
idadaumen tadaenamb ienteexte
rno:

● GPS(G lobal Pos


itional Sys tem)
: nosdalala t
itudylongitudene ls
istemadecoo rdenadas
g
lobal que puede usarse pa raconsultar un S
istema deIn formación Geográf
ica(SIG)
.E l GPS
br
indalos3 DOFdelat raslación.Para mejo
rarlaexac ti
tuddelva lo
rqueb rindapuedeu sarselo
quesedenom ina GPSd iferencial
,dondeunaes taciónbasedelacua lseconocesulocalizac
ión
conexacti
tudcompu tayt ransm itee
le r
rorint
roduc ido,pore
jemp loporlosefectosatmos
fér
icos,el
cualesuti
l
izadopo relrecep tor GPSpa racor
regi
rsupos ic
ión.Pa raobtene
rlos6DOFseneces ita
combinar
locono trodisposi
tivoqueb r
inde los3DOFde larotac
ióncomounab rúju
la.

● B rújuladig
ital:aligua
lqueunab rúju
laconvenc ionalb r
indalaorien
tac
iónenuns is
temag lobal
(3 DOF ).Lasb rúju
lasqueseencuen tranenloste léfonos móvi
lessondenominadasb rú
julasde
es
tado só l
ido, genera
lmente cons
tru
idas med iante sensores de campo magnét
ico que env ían
señalesaun m icrop
rocesador
.
Generalmentesecomb inaconel GPSpa raobtene rlos6 DOFde l mov
imien
todeldisposi
t
ivo.La
ventaja conrespec to a
l uso de sensoresine rc
iales es que b r
indan unresu
ltado con error
constante,e
lcua lpuedepreca
libra
rsedurantelainstalacióndelsis
tema.

● Senso resinerc iales:losace le


rómet
rosyg i
roscop iosperm
itenconoceracelerac
iónyveloc
idad
dero tac
ión,apa rti
rde lascua
lespuedecono cerselos6DOFdelapose .Lasven ta
jasdeestet
ipo
ded isposi
tivosrad icaensurap idezysubuenarespues taacamb iosbruscos.Sinembargo,su
pr
incipaldesven tajasue leserlaacumu lacióndee rroresdebidoa lru
ido
,ypo restocadacier
to
t
iempo debenreca l
ibrase.Algunos modelosdete léfonos móvi
les de ú
lt
ima generac
iónposee n
integradosace leróme trosygiroscop
iosconte cnología MEMS(M icroElec
tro Mechan
ica
lS y
stem s
).

3
.3.2
.2T
rack
ingbasadoenv
isión

Enlugardeu t
i
liza
rdispos
itivosf
ís
icosespe c
íf
icospa ratrack
ing,laposiciónyo rien
tacióndela
cámara enla escenarea l puede estimarse ana l
izando e lvideo capturado po r una cáma ra
ut
i
lizandotécnicas de v
is
ión por compu tador
. Enresumen set rata de busca r enlaimagen
e
lemen tos dela escenareal que permi
tan deduc i
rla pos ic
ióny o r
ientación delacáma ra en
relac
iónau nacier
tarefe
rencia,odefo rmaequ iva
len telaposic
iónyo rientacióndelosob jetosen
relac
iónalacáma ra
. Segúnlaaplicac
iónpuedet ratarsedeunacáma rain tegradaalpa r
tic
ipante
en movimien
to,opuedetratarsedeunacáma rafi
jaenunaescenaconob jetosen movimiento.

En d
ispos
itivos de visua
lizac
ión video see-th
rough(aquíinc
lu
imostambién al mon
ito
r ylo
s
d
ispos
it
ivoshand- held)
,elvideocapturadoporlacámaraseusas
imul
táneamente
:
● comoe lfondo(videobackg round)delaescenaqueveelusuar
ioenlapan
tal
la
● parareal
izareltrack
ing

35
Ex
istendi
feren
tesestra
tegiasusadaspa
ratrack
ingbasadoenv
is
ión
,quepuedenc
las
i
fica
rseen
dosgrandesramas:
● Track
ingde marcado
res
● Track
ingbasadoenca racte
rís
t
icasna
tura
les

E
lt rack
ingde ma rcadoresfuelap r
imeraestrateg
iau ti
l
izadayconsisteenint
roducirunoo más
marcadores conoc
idos enla escenarea l para supe rpone
r obje
tos v
ir
tua
les o ut
il
iza
rlos como
inter
faztangible.E s
ta estra
tegiatuvo mucho auge desdela pub l
icac
ión de KatoyB i
l
linghu
rst
(1999)[28],segúnZhou(2008 )[27
]unodelo sa r
tículos másrefe
renc
iadosenreal
idadaumen tada
ylad isponib
i
lidaddelcód igoabier
todesudesa r
rolloART oolk
i
t[25].Es muyusadaac tualmen
te,
hechofác i
lmente comp robab
le navegando enla web donde pueden encon t
rarseinf
inidad de
ap
licacionesdepub l
ic
idad.

Dado que puederesultar moles


to oindeseab le el agregar ma rcadores v
is
ibles ala escena,
rec
ientementelainvest
igac
iónsede r
ivóaen contrarotrosalgori
tmosdet rack
ingbasadoenv is
ión
que exp
lorenla presencia de caracte
ríst
icas na tu
rales enla m isma(pun tos,líneas, bo
rdes,
tex
turas
)evitandolaint
roducciónde marcado res.Zhou(2008 )[27]afi
rmaquehas talafechadesu
pub
licac
iónestahas idoelárea másac tivaenlainves t
igacióndet rackingbasadoenv is
ión,yse
podr
íaaf
irmarqueac tua
lmentelosigues iendo.

En
trelosalgo
ri
tmosqueexp lo
ranlascarac
ter
íst
icasna
tura
lesdelaescenaex
is
telas
igu
ien
teg
ran
d
iv
isión:
● Track
ingconconocimien
tode laescena
● Track
ingsinconoc
imientodelaescena

Enlass
igu
ien
tessecc
ionessede
tal
lacadaunode
losen
foquesdet
rack
ingbasadoenv
is
ión
.

T
rack
ingde ma
rcado
res

Un ma
rcador
,denominadoening
lés“
f
iduc
ia
l ma
rke
rs”
,esunaimagen2Dimp
resaconunfo
rma
to
espec
íf
icoconoc
idoporlaap
l
icac
ióndet
rack
ing
.

Enlafigura3
.8puedenve
rsed
ife
ren
test
iposde ma
rcado
resdelosqueex
is
tenlec
toresdecód
igo
ab
ierto.

(a
) (b) (c) (d)
F
igu
ra3
.8.D
i
feren
test
iposde ma
rcado
res
:temp
late(a
);ID-
Marke
r(b
);Da
taMa
tr
ix(c
), QRCode(d
)

Los marcado
restemp lateson muyconocidosdadoquesonlosuti
l
izadosporlalib
rer
íadereal
idad
aumentadaART oolk
it
[25]
,quefuelap rimeralib
rer
íaquepopular
izólasaplicac
ionesdereal
idad
aumentada.Elfo rmatoesuncuad radoneg roydentrouncuadradoblancoquetienedent
rouna
imagenas imét
ricaenneg ro
.
36
Los marcadoresID- ma
rkercod
if
icanunnúme rode9- bits(has
ta512d iferentes
)enunpa trónde6x
6,repi
tiendolos9b its4vecescomp letandolos36b i
ts. Unavar
ian
tedees tos marcadoressonlos
denominados BCH(Bose , Ray-Chaudhuri
, Hocquenghem )
,loscualesson másrobus tosquelos
anter
iormentedesc r
itos
,yaqueusauna lgor
itmoavanzadodechequeosderedundanc iac íc
l
ica
(CRC ) que pe rm
iterestaura
r ma rcadores dañados
. Seinc rementa e l número de ma rcadore
s
d
isponiblesaunto talde4096 .E s
tetipode ma rcado resounava riantedelos m ismossonlo s
ut
il
izadospo rlasl
ibrer
íasdereal
idadaumen tadaART ag[29]yARToolkitPlus[30]
.

Los ma rcadores Da
taMatr
ixy marcadores QRCode nofueron d
iseñados espec í
f
icamente para
rea
lidadaumen tada
,sinoquesup ropós
itoin
ic
ialescodi
fica
runase r
iedeca racteresASCI
I. Uno
delosusos máscomuneseslacod if
icacióndeuna URLdefo rmaqueunaap licacióna
llee
rlosy
decod
ificar
los,puedade r
ivara
lsit
io webcod i
ficado
. Po
resto,suusop r
incipalseasociaalos
h
ipervínculosynoarea l
idadaumentada.

M
ientrasquelos Da taMa t
rixpuedena lmacena rhasta2335caracteres
,los QR Codea lmacenan
4296 ca rac
teres. Una d i
ferencia ent
re ello
sradica que e
l QRCodeinc luye además s ímbo los
japoneses . Ambos cód igos son abiertosy pueden desca
rgarse defo rma gratu
ita apl
icac ione
s
lectorasparalosd iversosteléfonoscelula
resdel me
rcado.Desdeunpun todevis
taamp lioa lgunos
autoresloscons ideranunafo rmaderea l
idadaumentada.Además ,existenalgunasap l
i caciones
derea l
idadaumen tadaqueu t
i
lizandichoscódigosnosolocone lpropósi
to mencionados inocomo
marcadorespa ratrack
ing.

Segúnlaap l
icac
ión pod
rátrata
rsedeunacámarafi
jaconun marcado
ren mov
imien
to,odeun
marcadorf
i
joyunacáma raen mov
imien
to.Encua
lqu
ieradeloscasose
lcá
lculonovar
íayaque
setratadeunaposic
iónrela
t
ivaent
relacámaraye
l marcado
r.

Bás
icamenteela
lgoritmodet rack
ingbasadoen marcadorescons
tadedospasospr
inc
ipa
les
:
● Detecc
ióneiden
ti
ficaciónde marcado
res
● Est
imacióndela mat
rizdetrans
formacionesgeomét
ricasdecada ma
rcado
rdetec
tado

T
rack
ingbasadoenca
rac
ter
íst
icasna
tura
lesconconoc
imientodelaescena

Cone lobjet
ivodeev ita
rinvad
irunaescenacon marcado
ressu
rgie
ronlastécn
icasdet rack
ing
basadoenca rac
terís
t
icasnatura
les
,esdeci
rbasadasenlaloca
l
izacióndecarac
ter
íst
icascomo
puntos
,líneas,bordesotex
turas.

Den
trodelosd i
feren
tesenfoquesbasadosenca
rac
ter
íst
icasna
tura
lessepuedend
ist
ingu
ir
:
● Métodosbasadosenbordes
● Métodosbasadosentex
turas

Losdosen foquesan te
rio
resre
lac
ionanpuntosdecadacuad rodevideoconelcuadroante
rior
,y
dadoquee lpuntodevis tadelacámaravaríal
igeramentedeuncuad roao t
ro,sedicequeson
técn
icas de correspondenc
ia de desp
lazam
iento de cámara co
rto o ening
lés“shor
t-
basel
ine-
ma
tch
ing”
.

Unen
foqued
iferen
tetamb
iénbasadoenca
rac
ter
íst
icasna
tura
lesson
losdenom
inados
:
● Mé
todosbasadosende
tecc
ión

37
Adi
ferenciadelosenfoquesanter
io resqueexp
loran
lasrelacionesen t
recuadrosvecinos
,estet
ipo
detécnicasrelac
ionalascaracteríst
icasdeunc ie
rtocuad roconcuad rosa lmacenadosenuna
basededa tosquecorrespondenapun tosdev
istad
iferen
tes.E stassontécn
icassedenom inande
cor
respondenciadedesplazamientodecáma raancho,oen inglés“wide-
base
line-ma
tching
”.

Gene
ralmentetodosestos mé
todostienenencomúnquesedebetene ra
lgúntipodecono
cimiento
de
l ob
jeto o escenareal
. Por es
tosedenom inan mé
todos basadosen e
l modelo
, oening
lés
“model
-based”
.

T
rack
ings
inconoc
imien
todelaescena

Los enfoques descr


itos enla secc
ión an
ter
ior son enfoques basados en e
l conoc
imien
to de
l
modelo.Unp rob
lemadeg raninte
résrec
ien
teenap licac
ionesderea l
idadaumentadaesreal
iza
rel
track
ingenescenasdesconoc idastota
lopa r
cia
lmen te
.E steesunp roblema máscomple
joyaque
noso lodebees t
imarselapos ic
ióndelacáma rasinoquetamb iéndeberea l
izarseun mapadel
ambientedesconocido.

Los a
lgori
tmos u
ti
l
izados paratrack
ing en escenas desconoc
idas se basan en un algori
tmo
denominado SLAM(Simul
taneous Local
isat
ion and Mapping) quefue desarrol
lado por Thrun
(2004)[31
]enlacomunidadderobó t
ica
.Estealgor
itmonosó lodeducelaestructu
radelamb iente
s
inoquea lmismot
iempoes tab
leceunacorre
lacióndela mismaconlaposic
iónyo r
ien
tacióndela
cámara.

3
.3.2
.3T
rack
ingh
íbr
ido

Enalgunasaplicacionesderea lidadaumentadalastécnicasdevis iónpo rcompu tadornop roveen


unasolucióndet rackingrobus ta
,pores tosehandesa rro
l
lado mé todosdet rackinghíbr
idoque
cons
istenencomb inarlassalidasdedispos
it
ivosfís
icosye lanál
isisdev ideo
.E stetipodetrack
ing
resu
ltaefect
ivopa raaplicac
ionesquerequ ierenest
ima rlaposic
ióndelacáma raconrespec toa
una escena está
tica, pero nose aplica a
ltrack
ing de objetos en movimien
tocon unacáma ra
es
tát
ica.

Porunlado ,lastécnicasdet rackingbasadoenv isiónsones tablesala rgoplazo.S inemba rgo


,
puedenresulta
rlentasyademáslos mov im
ien
tosb ruscossuelencausarfallasene lt
rackingconel
consecuente consumo det iempo enlare cuperación. Porotra par
te,e lt
racking basado en
sensores
, en part
icularelt rackinginerc
ia
lo f
receca rac
ter
íst
icascomp lemen ta
rias
: esrápidoy
robustoypuedeusa rsepa rap redeci
rel mov
imientocuandoocu r
rencamb iosbruscos.Apart
irde
laace le
raciónylave locidaddero tac
iónpuedees t
ima rselapose ,perosudesven tajarad
icaen
quet
iendena i
ra lade r
ivadeb idoaacumu lac
iónderu ido.

3
.3.3 Gene
rado
rdelaescenav
ir
tua
l

Ene
lprocesodeformac
iónde imágenes
,realesosinté
t
icas,ex
iste
:
● unaescenacompuestapordive
rsosobje
tos(endife
rentespos
ic
ionesyo
rien
tac
iones
)
● unacámara,conunacie
rtaposic
iónyo r
ienta
ciónenlaescena
● unaimagenresu
ltan
tedeproyecta
rlaescenadeacue rdoalacámara

Cuandosehab
ladepos ic
iónyorien
tacióndeunobje
toodeunacáma radebeexis
t
irunsis
tema
derefe
renc
ia en base a
l cua
l se expresan
. Enreal
idad aumen
tada
,al hab
lar deimágenes

38
reg
ist
radassign
if
icaquetantolasimágeness
inté
t
icascomoe
l mundorea
les
ténenre
ferenc
iaa
l
m
ismosistemadecoordenadas.

En ade
lante nosre
fer
iremos a una se
rie de s
istemas de coo
rdenadas que se de
tal
lan a
cont
inuac
ión.

● Sistemadecoo rdenadaslocal
:E sunsistemadecoo rdenadas3Duti
lizadopararefe
rencia
r
los pun
tos de un obje
to. Pa
ra en
tender
lo mejor puede pensa
rse que a
l modela
r un objetose
u
til
iza
ráunsistemadecoo rdenadasloca
lalobje
to,situadoenalgúnpuntode lmismo.Pore jemp
lo
s
ise modelauná rbolseguramen
teloharemossituandouns is
temadecoordenadascentradoene l
árbo
loen labasede lmismo,conunejeal
ineadocone ltronco
.

● S is
tema decoo rdenadas mundo: Laposic
iónyo rien
tac
ióndelos ob jetos deunaes cena
sueleexp
resarseenrelaciónaunsis
temadecoo rdenadas3Ds ituadoenalgúnlugardel mundo.
A
l modela
runaescenacomp le
taseut
i
lizaunsis
temadecoo rdenadasúnicosituadoenalgúnlugar
delaescena,denom inadosis
temadecoo rdenadas mundo
.T odoslosobjetosqueintegranuna
escenaseposic
ionan,or
ientanyesca
lanenrelac
iónalmismosistemadecoo rdenadas mundo.

● S istemadecoo rdenadascáma ra:Elsistemadecoo rdenadascáma ra3Dtienee lor


igenene l
centroóp t
icodelacáma ra
.Ele je dep royecc
ióndelacáma ra pasapo relcentroópticoy es
perpendicula
ralplanodefo rmac
ióndelaimagen .E lejeZde lsistemadecoo rdenadascáma ra
es
táa l
ineadocone lejedep royección,con Z+hac iadondeseub icalaescena .Eleje Ytiene
direcciónvert
ica
lyelejeXd i
recc
iónho rizonta
l.
E
ls istemadecoo rdenadas mundo3Dpuedeexp resarseenrelaciónals is
temadecoo rdenadas
cáma ra 3D med ian
te trans
formaciones geomé t
ricas. Defo rma equ iva
lente
,e lsistema de
coordenadascáma rapuedeexpresa rseenrelac
iónalsistemadecoo rdenadas mundo.

● Sis
temadecoordenadasdelaimagen:Lospuntosdelaimagenseexpresanenre
lac
iónaun
s
istemadecoo
rdenadas2Dconlose
jesa
lineadosconlosbo
rdesdelaimagen.

Dado un punto Pm expresado en coordenadas mundo


, se exp
resa en coordenadas cáma
ra
mediantet
rans
formacionesgeométr
icas
,yacon tinuac
iónseproyec
taparaobtenerelpunto2Dde
laimagen .E stas suces
ivastransfo
rmaciones pueden exp
resarse como mult
ipl
icac
iones de
mat
ricessuces
ivas.

Enunaap licaciónderea lidadaumen tadaset ieneunaescenas intét


ica modeladaenunc ie
rto
s
istemadecoo rdenadas mundo .E xisteunpa r
t
icipan
tequev isualizalaescenadesdeunpun tode
v
ista,eldelacáma raconlaquecap turalae scenareal
.A med idaquee lpart
icipantese mueveen
e
l mundorea lsedebep roduci
runcamb ioene lpuntodev istade l mundovirtualdeacue rdoal
cambio de pos ición y or
ientación de l pa r
t
icipante
. Po r esto, para poder comb inarlos obje
tos
v
irtua
lesconlarea l
idad deformacoheren te( imágenesreg ist
radas )se debeconoce rencada
momen tolarelac iónen t
ree ls
istemadecoo rdenadas mundoye lsistemadecoo rdenadascáma ra.
Es
tos igni
ficaconoce rla ma t
rizdet rans formacionesgeomé tr
icasde lsis
temadecoo rdenadasdel
mundoconrespec to alacáma ra, o defo rma equiva
len tela ma triz detransformaciones dela
cáma raenre lacióna lsis
temadecoo rdenada s mundo.
Para pode r obtene rlaimagen s intética debe conoce rse ademásla ma tr
iz de p royecc
ión.A
d
iferencia dela ma tr
iz det ransformac iones geomé t
ricasla ma triz de proyección no cambia
m
ientraslacáma rase muevedadoquees tábasadaenca rac te
ríst
icasintr
ínsecasdela m isma.
Porestoseca lculaunaso lavezconunp rocedimien
toap r
ior
idenom inadocal
ibración.

39
Conocidasla ma
tr
izdetransfo
rmac
ionesgeomé
tr
icasyla ma
tr
izdeproyecc
iónpuedeobtenersela
proyecc
ióndelaescenavir
tualap
l
icandoope
rac
ionesdetrans
formac
ióncomorotac
ión
,traslac
ión
yescalado.

3
.3.4Comb
inac
iónde
l mundov
ir
tua
lylaescenarea
l

Enlos casos en los que ex


iste una vis
ión d
irec
ta de
l mundorea
lla combinac
ión serea
liza
d
irectamenteenelo jodelpar
tic
ipante. Enot
rocaso,sereal
izaunvideoresu
ltadodelaescena
capturadaylaescenasin
tét
icaproyectada.

3
.4Rea
lidadaumen
tadaend
ispos
it
ivosmóv
iles

Las pr
imeras apl
icac
iones derealidad aumen tada móvil
,y pa ra ambientes exte
rnos(outdoor)
,
ut
i
lizaban una mochi
laparaca rgarelcon junto deha rdwa reincluyendola PCylasfuen tes de
a
limentac
ión,yunv isorenlacabezao HMD(head moun tedd isplay
).Lasap l
icac
ionesderealidad
aumentada móvi
lsiguenel modeloded isposi
tivosostenidoconla mano(hand- held
)uti
l
izandouna
table
t PC,una PDAounsma r
tphoneote lé
fonoce lulardeú l
timagene rac
ión.E s
tosdisposi
tivos
cuentanconcáma rainteg
radayopc ionalmen tedisposi
tivospa ratrack
ingintegradoscomo GPS ,
acele
rómetro,g
iroscop
io,brú
jula
.

Engene ral
,losdispos
it
ivos móv
i
lescomo PDA syte lé
fonos móv ilestienenunasca rac
ter
íst
icas
d
iferentes alos PC enrelac
ión a
l ha
rdware y so
ftware.D ichas ca rac
ter
íst
icasinf
luyen en e
l
desarrol
lo de cua
lqu
ieralgor
itmo pa
ra es
tetipo de d isposi
tivos, part
icu
larmente dereal
idad
aumen tada
.

Latecno
logíacambia muyrápidoyrecien
temen
tehuboung ransaltoenloste
léfonosce
lula
res
.
En
trelos avances más no
tor
iosre
lacionado
scon elcampo derealidadaumen
tadase pueden
enumera
re laumentodeveloc
idaddelaCPUyla inc
lus
ióndeprocesadorgrá
f
ico
.

Ent
reloss istemasope ra
tivos másimpo r
tantesseenume ran Symbian
,W indow s Mobi
le,Andro
id,
iOS(pa raIpho ne
). Pese a quelas p la
taformas ante
rioresson programab lesson mu tuamente
incompatibles
,loquehacee ldiseñodeso ftwareparava r
iaspla
tafo
rmas másd i
ficul
toso
.Aúnen tre
d
iferen
tes mode los de d ispos
it
ivos que sopo r
tan el m ismo sis
tema ope ra
tivo puede habe r
pequeñasincompa tibi
l
idades del hardware de bajo n
ivel querequie
rerecomp ilac
ión pa
racada
modelo
.A ctualmen
tepuedeencon trarseunaamp l
iavariedaddeap l
icaciones,inclusodereal
idad
aumentada,desa r
rolladastantopa ra Androidcomopa raiOS,los doss istemasope rat
ivos más
dominantes.

E
lt racking en dispos
it
ivos “hand-
held”fuerza c
ier
tas res
tr
icciones no presen
tes en ot
ras
conf
iguracionesbasadasen PC .Lossensoresexte
rnosgenera
lmen tenosonpos ib
lesyademás
desua ltocos te
,los dispos
i
tivos móv
ilessonpequeñosynot ienenlainte
rfaznecesar
iapara
conecta
rlos.A c
tualmen
teexis
ten móvi
lescon GPSysenso rescomoace lerómetrosygi
roscop
ios
incorporados.

E
lsoftwaredetrackingt
ienequediseñarseespec
íf
icamen
teparacor
rerbajoes tasp la
tafo
rmas
res
tr
ingidas
.Eltrack
ingbasadoencámarasesunabuenaopciónpa
raestosdisposi
tivosyaquees
unaal
ternat
ivaquedaresul
tadosbuenosconbajocos
te.

40
E
ltrack
ing de ma rcadores es una dela s es
trateg
ias más usadas ya que es robus
ta y
compu
taciona
lmenteefic
iente
.E x
istenl
ibre
ríasdetrack
ingde marcado
resdecódigoabiertopa
ra
d
ispos
i
tivos móv
i
les.

Porot
rapa r
teeltrack
ingbasadoenca racterí
sticasnatura
lesresu
lta mása
trac
t
ivodadoquenose
neces
italainvas iónde ma rcado
res. Ent
re losa lgor
itmosdet rack
ingbasadoenca racter
íst
icas
natu
rales, dondeset ieneconocimien
to dela escena ,se encuen t
ranlaimplemen
tación de un
a
lgori
tmodet rackingbasadoenS IFTp resentadapor Wagner[31],elcua
lpermi
teelsegu im
iento
deunob jetoplanotextu
radoconuna imagencua lqu
iera
.

3
.5Cód
igos QR

Uncód igodeba rras QR(Qu ick ResponseBa rcode )esuns is


temapa raalmacena rinformac iónen
una ma triz de pun tos o uncód igo de ba rras b idimens ionalc reado porlacompañ íajaponesa
Denso- Wa veen1994;seca rac ter
izanpo rlostrescuad radosqueseencuen tranenlasesqu inasy
quepe rm i
tendetec tarlapos iciónde lcódigoa llec tor
.Las igla"QR "sede rivódelaf raseing lesa
"QuickResponse "puese lcreado raspirabaaquee lcód igope rmit
ieraquesucon tenidose leyeraa
a
lta ve locidad
. Los cód igos QR son muy comunes en Japón y de hecho son e l cód igo
b
idimens iona
l máspopu larenesepa ís.Aunquein icialmen teseusópa raregist
ra rrepuestosene l
áreade lafabr
icacióndeveh ícu los,hoy ,loscód igos QRseusanpa raadm in
istraciónde inven tar
ios
enunag ranvar
iedadde indus trias.Rec ientemen te,lainc lusióndeso f
twareque leecód igos QRen
telé
fonos móv i
les, ha pe rmitido nuevos uso so r
ien tados a l consumidor
, quese man if
iestan en
comod idadescomoe ldejardetene rquein troduc irda tosdefo rma manua lenloste léfonos.La s
d
ireccionesylos URLsse es tánvo lviendocadavez máscomunes enrev is
tasy anun cios
.E l
agregado de cód igos QR enta r
jetas de p resen tacióntamb ién se es tá hac iendo común ,
s
imp l
if
icandoeng ran med idalata readein troduc irde tal
lesind iv
idualesdeunnuevoc l
ienteenla
agendadeunte léfono móvil
.

S
ibienloscód igosdeba rrasconvencionalessoncapacesdealmacena run máx
imode20d íg
itos
,
e
lcódigo QRescapazde mane jarcientosdeveces másinformación
. Uncódigo QRescapazde
mane
jartodot ipodeda tos,ta
lescomoca racteresnumér
icosya l
fabét
icos
, Kan
ji
, Kana H
iragana
[32]
,s ímbolos,bina
riosycód igosdecon t
rol. Has
ta7.089carac
teressepuedencod i
fica
renun
so
los ímbolo.

Un cód
igo QRl
levalainformac
ióntan
tohor
izonta
lescomove r
tica
les,escapazdecod i
fica
rla
m
ismacant
idaddeda tos en ap
rox
imadamen
te una déc
ima pa
rte del espac
iodeuncód igode
ba
rrast
rad
ic
iona
les.(Parauntamañodeimp
res
ión máspequeños,exis
te Micro QRCode
.)[33]

QRCodet
iene
lacapacidaddecor
reccióndee r
rores
.Losda
tospuedense
rrestau
rados
,inc
lusos
i
e
lsímbo
loesparc
ialmentesuc
ioodañado . Un máx
imode30%delasclavessepuederes
taura
r.
E
jemp
lodedosclavesquepuedenserrestau
radas:

41
F
igu
ra3
.9:E
jemp
lodecód
igosde
ter
iorados

E
l código QR es capaz de se rleído en 360 g rados(omn i-d
ireccional
), es delectura de a
lta
ve
locidad. Uncód igo QRllevaacaboes tata reaatravésdepa tronesdede tecc
ióndepos ición
s
ituadoenlast resesquinasdelsímbo lo.E s
tospa tronesdede teccióndepos icióndanga rant
íade
lectu
raes tab
ledea l
tavelocidad,eludiendolose fec
tosnega t
ivosdelasin terfe
renciasdefondo.
Es
tohacea lcódigo QRung rancandida topa ralaident
if
icac
ióndeob jetosde l mundorealdadosu
capacidaddelecturaysupe rv
ivenc
iaa ldeterioroquee lexte
riorlepuedap rovocar
.

F
igu
ra3
.10
:Es
truc
turadeuncód
igo QR

A
lse runes tándarab iertohay muchosgene radoresde QRCodeg ratu
itosyenso ftwa relibre
.Pe ro
aunquelac reacióndees toscód igosessenc i
llays incos tes,esene lsistemadelec turadondese
encuent
raunadelasp r
inc ipalesven tajas.Exis
tente rminalesespec íf
icospe ronosonne cesar
ios
para poder desc i
frar un cód igo QR pues bas ta con un móv il con cáma ra defo tos para
decodi
f
ica r
los.Nis iquieraesp recisoquee lterminalseadeú l
timagene raciónparaquefunc ioney
la mayorpa rtedelos móv ilesac tualesdelo sp r
incipa
lesfab r
icantespe rmi
tenyaes taop c
ión.En
Españalos móv i
lesaúnnosue lenllevarintegradodese r
ieloslec toresde QR ,comoyaocu r
reen
ot
rospa íses,pe robas taconañad i
runso f
twareg ratu
ito,quesepuededesca rgard irectamente
desdeInternet,parapode rlee res toscódigos.Lee runcód igo QRestansenc il
locomoen focar
lo
conlacáma rade l móv il
. Cong ranrap idezsedecod i
ficalain formaciónqueapa recees c
ri
taen
nuest
roterm ina
l.E lsistemaso rprendepo rlafacil
idadyve locidaddelec tura
,conv i
rt
iéndo loasíen
unaopciónve rsáti
lyfác ildeusa r.E l QRCodep resen taademásnume rosasven tajas
:

● Estecód
igotieneunpa t
rónde loca
l
izac
ión
,aunqueseencuent
ren“mal
”colocadoslossis
temas
delectu
ra de
tectanla o
rientac
ión,loqueperm
ite quepuedanserle
ídos encualquie
rposic
ión

42
(360
º)
.Alnoserlaub
icaciónde
lcódigoesenc
ialp
arasucor
rec
talectu
ra,comos
íocu
rreconlos
cód
igosdeba
rras
,sereduceel ma
rgendeerro
resysesimp
l
if
icaelt
rabajo
.

F
igu
ra3
.11
:Pa
tróndeloca
l
izac
ióndeuncód
igo QR

● Los QRcodeposeenunaa ltacapacidadparares taura


rinfo
rmac iónycuatronivelesdi
feren
tes
decorreccióndee rroresqueelusua r
iopuedee legi
rene l momen todegene ra
rlo. Has
taun30%
delosdatospuedense rrecuperab
lessipartedelcód igosehaalteradoosehape rd
ido.
● Soportancua lqu
iertipodelenguajeydiversostiposdeca rac
teres.
● Sólop recisanunadéc imapa r
tedelespac ioqueuncód igodeba r
rasrequer
ir
ía.E lcód
igo QR
se encuen tra además es tandar
izado, y fue ap robado como es tánda
r ISO in te
rnaciona
l
(ISO/
IEC18004 )enelaño2000 .

3
.6Cód
igos QRyRea
lidadAumen
tada

E
lusodecód igos QRpa raap l
icac
ionesderea l
idadaumen tadahas ido mo t
ivoded isensosene l
pasado,pe rodesdehaceunt iempoe lconcep tosehaamp l
iadoyaho rapodemosdec irquela
real
idad aumen tadasignif
ica aumen ta rlarea l
idady esos ign
ifica darle unva lorag regado ala
real
idad que a s imple v is
ta no podemos pe rc
ibi
r. Además ,larea l
idad aumen tada pe rmite
personal
izaciónyla med iciónderesu l
tados ;ylepe rmi
tealrecep tordeesain formaciónin terac
tua r
con el contenido que se es tá ofrec
iendo .E s una herramientain te
rac t
iva que po r med io del
reconocimientodepa t
ronesnospe rmiteag regarinformaciónd igi
talenunen tornorea l.Asícomo
sehanv istoejemp losdetab lasperiód
icasd igi
talesdondecadae lemen toes tárepresen tadopo run
código QRuo troejemplodondeenunl ibrosepegancód igos QRquerep resentanen lacesa
comen ta
rioshechospo rlagen tesob rees telibro,estossone jemp losc larosdees tain te
racción
con elrecep tor o usuario. Porlotan to podemosjus t
if
icar de mane rafehac iente, como es ta
interacc
ión p roduce unare troa
limen tación o unin te
rcambio dein formación que con l
leva a
aumen ta
raún másrea l
idad .

3
.7Rea
lidadaumen
tadaenlos museos

Lasposibil
idadesylasaplicac
ionesqueselepuededa raloscódigos QRenlos museosson
var
iadas.Lafacil
idaddesuuso ,losavance
stecnológ
icosyladi
fus
ióndelatele
fon
ía móv
ilyel
ba
jocos te quesuponesu u ti
l
ización
, hace de es
tesis
tema una he
rram
ien
ta de u
t
il
idad pa
ra
apor
tarinformac
iónein
teractuarconlosusuar
iosdeun museo
.

Sureduc idotamañofac
i
li
talainteg
rac
iónenla museogra
fíaoenlaspubl
icac
ionesde
l museos
in
d
istorsionarla
imagengene ra
lyapor
tandounelementodevalo
r.
Susap licac
ionessonvariadas
,tan
todeca raalvis
itan
tecomopa ralaorgan
izac
iónin
ternade
l
trabajo.
43
3
.7.1Cód
igo QRená
reasdeexpos
ición

Alahoradep rogramarunáreaexpos i
tivanosiempreresultasenci
l
loencontrarunequil
ibr
ioen t
re
of
recer demas
iadainformación
, que puede abruma raa lgunosvisi
tantes
, o apor
tar poca
, que
puederesul
tarescasaaunpúb lico másespecia
lizadoointeresado
.An teel
lo,numerosos museos
hanoptadopo ropcionesinte
rmedias, mos
trandounain formaciónbásicaat ravésdeca r
telasy
ampl
iandola misma median
tesistemasdive
rsos.

E
l cód igo QR puede ac tuarcomo uno de es tos elementos para quelos usuariosinteresados
obtengan másda tossob reaque l
lasp iezasqueseandesuin terés.A s
í,uncód igodees tetipo
puedeapo r
tarinformaciónenfo rma totex tode mane radirec
ta,perotamb iénenlazaraunapág ina
web o a un a rch
ivo de aud io o vídeo . Hay quetene r en cuenta quecadavezson máslos
terminales móvilesconconex iónain te rnetbienat ravésde3Goat ravésde Wi-F
i,quepuedese r
proporcionado pore lp ropio museo . Loscód igos QR pueden a lbergar una URLquered iri
ja a
l
usuario ala web de l museo , ala pág inaconin formación de
l objeto o una ga
leríavir
tualcon
información ex t
ra.E s unafo rma defac i
li
tare l acceso alvis
itante a una mayo r can
tidad de
informaciónydeda rleaconoce rel espacioenIn ternetdondep odráob tene
r másda tosdela
colección.Seincen t
ivaas ílainteracc
iónen t
ree lusua r
ioylosobjetosdelaexpos ición
, mo t
ivando
alos v isi
tantes ala pa r
tic
ipación activa para descub r
ir unainformación que además puede
a
lmacena rensup rop
iote rmina
lygua rda rcomore ferenc
ia.

O
trasu
t
il
idadesenzonasexpos
it
ivas
:

● Desca rgad i
rec
taa ltelé
fonodeap licac
ionesquepuedanse rdeu t
i
lidadalosusua riosensu
v
isi
ta a l museo : mapas de o rientac
ión
, realidad aumen tada
,i tinerar
ios, información
complemen tar
ia,etc
.
● Juegosdep is
tasene l museoat ravésdecódigos QR ,unainic
iat
ivaú t
i
lpa ra motivaralo s
nat
ivosd ig
ita
les.
● Geo loca
lizac
iónde lluga
rdonde lap iezafueha
llada,creada
,etc.
● A yudaalaspe rsonasconv is
ibi
lidadreducida
:loscód igos QRpueden conduc i
raa rch
ivosen
mp3conlain formaciónenfo rmatoaud io
.Lacomb inacióndecódigos QRconb ra
i
leocon móv i
les
equipadoscons is
temadevozes tádandobuenosresu ltadosenelcampodelaacces ibi
lidad.

3
.7.2Cód
igos QRená
reasderese
rva

Loscódigos QRseconv ier


tenenuna l
iadodelpe rsonaltécn
icode l museoalahoradege st
iona rel
a
lmacena jedelasp iezas. Dehecho ,unadelasp r
ime rasy másex tendidasu
ti
l
idadesdees tos
códigoshas idosuusoenp rocesosdeinven tario. Has
taaho raven íasiendohabi
tuallau t
i
lización
decód igosdeba r
raspa ralao rganizac
ióndelasá reasderese rvadelos museos,pe roelcódigo
QR apo r
ta nuevos e lemen tos deva lor que hacen másrecomendab lesu uso. En primerluga r
permitenincluir mayorcan t
idad dein formac
ión ,conlo que más a l
lá de unasimp lereferencia
topog rá
ficaloscód igos QRpuedencon tenerademáslosp rincipa
lesda tosycaracterís
t
icasde l
ob
jeto.Losreque rimien tosespecialesquepuedetene runapiezaalaho radesualmacenam iento
otranspo rtetambiénpuedenes ta
rtamb iénincluidosensu QR Code ,conloqueene lm ismo
a
lmacényso lamenteconunte léfono móv i
lsepuedenconoce rlasp recaucionesatenerencuen ta
antesde mov il
iza
runb ien.

44
E
lcód igo QR delas p iezas puede ademásv incu
larcon una URL conin formación del objeto
,
faci
li
tandoeltrabajoene láreaderese rvaye laccesoinmediatoatodoslosda tosdelaco lección
.
E
l meno ríndicedee rroresess indudao troelementodepesoalaho radedecan tarsepo rla
ut
i
lización de este s
istema , así como po rlafac i
l
idad de sulec tura, ya que pueden se r
decodif
icadosporelpersonaldel museoconsusp rop
ioste
rm inalestelefónicos
.
En almacenesv is
itab
les, donde no existenca rte
lesconinformac iónpa rael púb
lico
,e l uso de
códigos QRpuedeapo r
tarreferenciasinformat
ivasalosvisi
tantesde mane rapocointrusivays in
necesidaddec rea
runa museog rafíaexpositivaenunespaciodet raba jo
.

3
.7.3Cód
igos QRend
ifus
ión

La uti
l
ización de cód
igos QR en ca
rte
ler
ía,tríp
ticos
,folletos public
ita
rios, pub
licaciones dela
inst
ituc
ión,anunciosdeprensaodetelev
isión
,etc
.,añadeune lemen to mul
timediaalosp roductos
creadospo rel museoype rm
iteampl
iardefo rmasenc i
l
lalain fo
rmac iónquees tosaportan. Por
e
jemp lo,lavincu
lac
iónasi
tioswebespecí
ficosalosquesó loseen treat ravésdeunaURL insc
rita
ene lcódigodava lora
lanuncio
,fo
lle
toopub licacióneincen t
ivaelin terésdelusua r
iopo restos
medios.

3
.7.4Cód
igos QRenlapág
ina webde
l museo

Lauti
lizac
ióndecód igos QRen lawebde lmuseofacil
itadescargardi
rectamenteene l móvil
,datos
út
i
lespa raelpúblicodu rantelavis
ita
. Hora
riosose rvic
iosquep restaelcentro
,it
inerariosporla
exposic
ión,obrasdes tacadas,apl
icac
iones,etc
. Sonnume rosaslasposibi
l
idadesex is
ten tesyel
hecho de que el usuariosólo deba escanearel código paratenertodalain formación ensu
terminal
, hace mássenc il
lo elproceso dedescargay de pos ter
ioruti
l
ización ensuv is
ita ala
inst
ituc
ión.

3
.7.5Cód
igos QRenlaB
ibl
iotecade
l Museo

A
ligualqueene lalmacén
,lau
t
il
izacióndeloscód
igos QRenlabib
l
iotecadel museoaumentalas
posib
il
idadesf
ren
tealusodecódigosdeba r
raspo
rsucapacidadpa
raa lbe
rga
r mayorcan
tidadde
informac
ióny másvar
iada
.Sepuedenu t
i
lizar
:

● Localizac
ióntopográ
ficade
libros.
● Referenciab
ibl
iográf
icacompletadelaob
ra.
● Rapidezenlasbúsquedasdel ib
ros,a
lnotene
rqueanota
rre
ferenc
iasquepuedengua
rda
rse
ene
l móv i
l.
● En
lacesawebcon másin formaciónsob
relaob
ra,e
tc.

3
.7.6Cód
igos QReneven
tos

Conferenc
ias,sem inar
ios,presen tacionesqueserea l
icenene l museoytodot ipodeeven tosen
losque losasis
ten tesvayan identi
ficados
,sono trasposib
il
idadespa raelusode loscódigos QR.
Ademásdelosda toshabitualesquesue lenaparecerenlastar
jetasiden ti
fica
tivasde los
as
istentes
,sepuedeusa runcód igo QRcomocomp lemento.Silodesean ,losasistentespod
rían
ademáscompa r
ti
rsusda tosdecon tactoatravésdelcódigo QRdesu ident
if
icacióny
a
lmacena rlosenlaagendade l móv i
l.El museotambiénpuedeusa relcódigo QRpa raelcon
trolde
accesos.

3
.8Recomendac
ionesdeusodecód
igos QR
45
Alahoradeut
il
izarloscód
igos QRhayquetene
rencuen
taunase
riedep
recauc
iones pa
ra
fac
i
li
tarsu
lec
tura
:

● Los QRp recisandeun m ínimodeca lidadpa rapode rse rleídosadecuadamen te.Loscód igo s
ex
t remadamen tepequeños(meno resde1x1cm .delado )oconunaca l
idaddeimp resión muy
bajanoda ránbuenosresu ltados,sobretodos icon t
ieneng rancan t
idadde información.
● T odosloscód igosp recisande unapequeña á reac ircundan te, en blanco os inru ido,de a l
menos0 ,5cm .,de tal
lequetend ráquese rten idoencuen tasiene ld iseñoapa recejun toao tros
e
lemen tos .
● E ltamañode l QRes táenfunc ióndelacan t
idaddeda tosqueloin teg ren ,a mayo rin fo
rmac ión
con tenida meno rpos ibi
lidaddereducc iónene ltamaño .S i,porneces idadesded iseño,serequ iere
quetodoslos QRtenganunasd imensionesun ifo
rmesesrecomendab lequeladens idaddeda tos
quecon tenga nosea muy desp ropo
rc ionada de unosrespec to a o tros. Usa rgene rado res que
perm itan cod i
fica r en tamaños es tab lecidos y tenganl imitación de ca racteres fa c
il
itala
estanda rizaciónen las med idasde loscód igo s.
● Lacapac idadde l QRpa rarepa ra
re rrorescond ic
ionae ltamaño de lm ismo,un QRconuna
capac idaddeco rrecc iónde l7%sepod ráu sa ra meno rtamañoqueo troconunacapa cidadde
repa rac ióndee rro resde l30% .Lainstitucióntend ráquep rima runauo trapos ibi
lidadenfunc iónde
susneces idadesyde lau t
il
idadque levayaada r
.
● Losb ril
losd i
ficu l
tanlalec tu
ra,conloquehayquetene rlap recauc ióndenoimp rimi r
losen
forma tosex cesivamen tesa t
inados.Siseco lo canba jovid r
iouo trasupe r
ficieref
lectan tehab ráque
verif
ica rque lare flexiónespecu lardela iluminac iónno imp idaladecod if
icac ión.
● Laub icaciónens it
iosconsomb ras muydu raspueded ificul
tar igualmen te lalectura.
● Enzonasdei lum inacióntenueloslec tores móv ilesp resentan mayo resd i
ficu
ltadespa ra leerlos
códigosdepequeñotamaño(meno resde2 x2cm .delado ,ap roximadamen te)
. Enespa cioscon
muyba jai luminac iónserecom iendausa rcód igosdetamaño med io.

Ademásdetodoesto,s
ielcon
ten
idode
lcód
igoesunaURLesrecomendab
lequelawebalaque
enlazaseaacces
ib
leyestéadap
tadapa
rapoderse
rvisua
l
izadaco
rrec
tamen
teconnavegado
res
móvi
les.

3
.9Conc
lus
ión

Loscódigos QRsonhoyporhoyuncam inoparalaexper


imen taciónporpa r
tedelos museos
.La
fac
il
idad desu usoy e
l ba
jocoste quesuponesuimp lantación hacen quesearecomendab le
exp
lora
rtodaslaspos
ibi
l
idadesqueofrecenyevalua
rsuu ti
l
idad ,tantoenlagestiónin
ternadela
ins
ti
tuc
ióncomoenlarespuestade
lpúblicoa
laho radeinte
ractua rconel museoatravésdeestos
med
ios.

Lapopula
rizac
iónquees táadqu
ir
iendoestetipodetecno
logíayelhechodequela mayo
rpar
tede
losvis
i
tantesdel museol
levenunte
léfono móvi
lensubolsi
l
lo,hacendelcód
igo QRunaapues
taa
l
futu
ro.

A
lse runahe r
ramientano muypopularizadaennues t
ropa
ísycuyousoselimitaalossecto
res
másrelac
ionadosconlasnuevastecnologías
,el museohadeasumirunpape
ldidác
t
icoalahora
depresenta
rasusv isi
tan
tesestaposibil
idad
,fac
il
itandoe
lconoc
imien
todels
istemaylos med
ios
necesar
iosparaquepuedausarlo
.

46
47
Cap
ítu
lo4
.And
roid

En e
l cap
ítu
lo anter
ior hemos desc
ripto el concepto derealidad aumen
tada
. En e
lp resen
te
cap
itu
lodetal
laremoslap la
tafo
rma And ro
id. Seha ráunareseñadesuh is
tor
iayorígenespara
luegoexp
lica
rsusp r
inc
ipalescarac
terís
ticasyd i
ferentesve
rsiones.

4
.1In
troducc
ión

Android es una p
latafo
rmacomp le
ta decód
igo abie
rto d
iseñado pa
ra d
ispos
it
ivos móv
iles
.E s
promovidopo r Googleyprop
iedaddela Open HandsetAl
l
iance[34].Elob
jet
ivodelaa l
ianzae s
"acelera
rlainnovaciónenlosconsumido
res móv
i
lesyo f
recerunaexper
ienc
ia móv
il másr
ica, más
baratay mejor
."Androidese
lvehícu
loparahacer
lo.

Comota l
, Andro
id estárevoluc
ionando el espac
io móv i
l. Porprimera vez
, es una ve
rdade
ra
p
lata
forma abier
taquesepa rae l ha
rdwa redelso f
twa re quese ejecu
ta en él
.E s
to perm
ite un
número mucho más g rande de d
isposi
tivos pa
ra ejecutarlas mismas apl
icac
iones ycrea un
ecos
istema mucho másricoparadesarro
l
ladoresyconsum ido
res.[35
]

Android es una p
ila de software para d
isposit
ivos móv iles queincluye un sistema operativo,
m
iddlewa reyap l
icaciones.E l SDKde And roidp roporcionalashe rramientasy AP Isne cesarias
para empeza r a desa rro
l
lar aplicac
iones enla p lataforma And ro
id usando e llengua je de
programaciónJava.E s
tasaplicac
ionessone jecutadasenuna máqu inavi
rtualdiseñadapa raes ta
p
lataforma,quehas idobau tizadacone lnomb rede Da lv
ik
.E s
taes táoptimizadapa rareque r
ir
poca memo r
ia y d iseñada pa ra permi
ti
re jecuta
r va riasinstancias dela máqu ina vi
rtual
s
imu ltáneamente, delegando en elsistema ope rat
ivosubyacen te e
lsopo rte de ais
lamiento de
procesos,gest
iónde memo r
iaeh ilos
.

Androidsedis
tr
ibuyebajounaL icenciaApa che[17]
,versión2 ,esunal icenciadesoftwarelibre
creadaporlaApacheSo ftwareFounda tion
.LaL icenc
iaApachepe rmi
tea lusua r
iodelsoftwarela
l
ibertaddeusarloparacualqu
ierp ropósi
to,dis
tr
ibu
ir
lo, modificar
loydist
ribui
rve rs
iones modificadas
de ese sof
tware. La L
icencia Apacherequ ie
rela conse rvac
ión del aviso de copyr
igh tye l
d
iscla
imer,peronoesunal icenciacopy le
ft
,yaquenorequ ierelared
istr
ibucióndelcódigofuen te
cuandosedist
ribuyenvers
iones mod i
ficadas.

4
.2H
isto
ria

Andro
idfuedesarro
l
lado in
ic
ialmen teporAndroidInc.
,unafirmacomp radapo r Googleen2005 .
E
l5denov iembrede2007sefundóla Open Handse tA l
l
iance(OHA )cone lfindede sar
rol
lar
es
tándaresabie
rtospa radisposit
ivos móvi
les. Fuelide
radapo r Googlecono tros34 m iemb ros
ent
relos queseinc luyenfabricantes de d
isposi
tivos móv
iles
, desarro
lladores de ap
licaciones,
a
lgunosoperadoresdecomun icacionesyfab r
icantesdechips.Elmismod íala OHAd ioaconoce r
Andro
id,unap
latafo
rmadecód igoab ie
rtopara móvi
lesbasadaene lsistemaope rat
ivoLinux .

Unavers
iónbe tadelSDKfuelanzadaparadesa
rro
l
ladorese
l12denov iemb
rede2007
.
E
lp r
imerteléfonocome
rcia
lmentedispon
ib
leconAndro
idfueel HTC D
ream(T-Mob
i
le G1
),e
lcua
l
ut
i
lizóAndroid1.0
.

Enelaño2009sep roduceunaprol
iferac
ióndedispos
i
tivosbasados enAndro
id.Sel
ibera
ronla
s
nuevasvers
ionesde
lsistemaopera
tivo: Cup
cake(1
,5)
, Donu
t(1,6)
,yE cla
ir(2
,0y2,1)
.Son más
de20dispos
it
ivosqueejecu
tanAndroid
.

48
En2010,Androideslasegundap la
tafo
rmadeteléfonosin
tel
igentes
,despuesdeB lackbe
rry
, más
vend
ida.Froyo(Andro
id2.2)sel
iberayson másde60d ispos
it
ivosque loejecu
tan.[35
]
Enelaño201 1fueanunc
iadoyliberadoAnd
roid4.0(IceCreamSandw ich)yfina
lmenteenoctubre
deesteañose l
iberóAnd
roid4.1(Jel
lyBean
).

4
.3Ve
rsionesdeAnd
roid

E
lsigu
ien
tecuad
rop
resen
talasd
i
feren
tesve
rsione
sdeAnd
roidha
stalafecha
.

Ve
rsión N
ive
ldeAP
I Ca
rac
ter
íst
icas
1
.0 1 Lapr
ime rave rsiónu t
i
lizadaporelT- Mob
ilelanzadoenE stados
Un
idos en oc tub
re de 2008 con tenía las s iguientes
ca
racter
ísticas:
●Ventanade no t
if
icacióndesplegable
.Fuee lprimersistema
operat
ivoqueimp lementóunap lata
formadeno ti
f
icaciones
por med iode mensa jesyaler
tas.
●Menúespec ial paraagruparlasap l
icacionesyp rogramas
delte
lé fono.
●Integraciónde Gma i
l,aunqueconfunc iones muyl
imitadas.
●SeintrodujolatiendaAnd ro
id Market
.

1
.1 2 Es
tap r
ime raactua
lizaciónl
legóenfebrerode2009ys ib ienno
fueuncamb iorevoluciona
rio
,sesoluc
ionaronvar
ioserrores
.Lo
másnotablefuela me jor
íaysenci
l
lezpa raencontra
rye jecu
tar
cualquier ac
tual
ización que els
istema opera
tivo de
lte lé
fono
neces
itara.

1
.5Cupcake 3 Fueliberadaen Ab r
i
lde2009ysein t
roduje
ronlassigu
ien
tes
carac
teríst
icas:
G rabacióndevideo
Sopo r
teparaBluetooth
T ecladovir
tua
ltipo QWERTY
Sopo r
teparaWidgets
Me jorasene l por
tapapelesparareal
izaracc
ionescomo
“copiarypegar”texto
G rabacióndevídeoyrep roducc
ión

49
1
.6Donu
t 4 Fuel iberada ensep tiemb re de 2009y noseca racte
rizó por
mostrarg randescamb iosv isuales, peros í porsus nuevasy
út
iles me joras:
● Sopo rtepa ra mú lt
ip lespan ta
llas
● Qu ickSea rchBox ,unaca jadebúsquedaenlapan tallade
inic
ioquepe rm itebusca ren t
red ist
intasfuen tes(loscontactos
,
e
lh istorialde lnavegado r
, Google,etc.). Conau tocompletadoy
capac idaddeap rendiza je.
● Me jorada lave locidadde lacáma ra.
● Pos ibilidaddeconec tarsearedesVPN ,802 .1x
.
● Nueva pan tal
la pa ra con t
rolarla ba tería, que pe rmite
comp roba r qué ap l
icac iones y se rv
icios sonlos que más
consumen . Desde es ta pan tal
la se puedetamb ién parar o
desinstala restasap licac iones
● Las ap licac iones de And ro
id Ma rket apa recen aho ra
ordenadaspo rca tego rías(Aplicaciones,JuegosyDesca rgas)
.
● Nuevo mo to rdetex toavoz .

2
.0,2
.0.1
,2.1E
cla
ir 5
,6,7 Enoctub rede2009sel iberalave rsión2.0 ,endic
iemb redeese
m
ismoañolave rsión2 .0.1yenene rode2010lave rs
ión2 .1.
●Rediseñodelain terfazde l navegado r,contandoaho racon
sopo r
teparad is
tintasca racte
ríst
icasdeHTML5 .
●Sopo r
tenativodef lashpa ralacáma ra,zoomd igi
tal
, modo
escena ,ba
lancedeb lanco ,efectosdeco lo
ry modo mac ro
.
●Mejorasene ltecladov irtual
.
●Sopo r
teparanuevostamañosyreso lucionesdepantal
la .
●Contactosrápidos .
●B
lue tooth2.1
●Mejoras en Goog le Maps , que pasaba a se r multi
tácti
ly
sopo r
tarcapas .
●Sopo r
tede M icroso f
tE x change.
●Mejorasene lca lenda r
io.
●Reconoc im
ien todevoz
●Mejorasenladu raciónde labatería.

2
.2F
royo 8 D
isponibledesdef ina
lesdeJun iode l2010
,F royointrodu
jolas
s
iguientesnovedades :
●A ctual
izacionesau tomá t
icaspa raapl
icac
iones.
●Sopo rte W iFiIEEE802 .11n
●Sopo rtepa raRad ioFM .
●Sopo rteF lash10 .1yAdobeA IR2 .5
●Sopo rtede laAP Igráf
ica OpenGL2 .0
●Pos ib
ilidaddeas ignarunco lordeLEDene lT rackBal
lpara
d
iferen teseventosde lterm
inal.
●C reacióndeuncomp i
ladorJITque me jo
ra entre2y5veces
enRend imientofrenteaE cla
ir
.
●T ether
ingpo rUSByho tspotW iFi
●Inco rpo racióndelm ismo motordeJavascriptV8deCh rome.

50
2
.3,2
.3.3 G
inge
rbread 9
,10 Lave rsión2.3fueliberadaend ic
iembre2010ylaversión2
.3.3
enfeb rerode201 1.
●Mejorcontro
lencop ia
rypega r
●Teclado mult
i-táct
ilred
iseñado
●Sopo rtenat
ivopa ra mú
lt
iplescámaras
●Sopo rtenat
ivopa rasensorescomog i
roscop
iosybarómet
ros
●Sopo rtenat
ivopa rate
lefoníaVoIP

3
.0,3
.1,3
.2Honeycomb 1
1,12
,13 Fueliberadaenmayode201 1yfueop t
imizadaespecia
lmente
paratabletsydisposi
t
ivoscontamañosg randesdepan ta
lla
.
●Sered iseñolapantal
ladein
ic
ioyco locacióndewidgets
●Mult
itarea me
jorada
●Unnuevopa radigmaparaeldiseñodeap l
icac
ión
●No hay necesidad de botones dedicados yfís
icos pa
ra e
l
regreso ,home, menúybusca r
.

4.0
.3,4.0
.4IceC
ream 15 Fueliberadaaf inalesde201 1yfued iseñadopa
ratodaslas
Sandwich p
lataformas(sma r
tphones ,table
ts )
.
●Nuevotipode let
ra l
lamadaRobo to
●Pantal
lap r
incipalcon imágenes3D
●Barrasdees tado
●Widgetsredimens ionables
●Desbloqueoconreconoc imientofac
ial
●Mejoradereconoc imientodevoz
●Se busca po tenciar el uso de NFC con una nueva
caracter
íst
icapa rat ransfe
renc iadedatosent
redoste
léfonos
conso lotocarlos.
●Nuevoca lenda r
ioyap licac
ionesdeco r
reo

4
.1Je
l
lyBean 16 Fueliberadaenoctubredel2012 .
●Seañadeunnuevos istemadeno ti
ficac
ionesexpandibles.
●Seinco rpo
raunnuevos istemadeges t
ióndeda tosen t
rela
CPU y la GPU l lamado P roject Bu t
ter haciendo las
transic
ionesentreaplicac
ionesoen t
reventanas mucho más
rápidas,suavesyop t
imizadas.
●Losiconosdelosesc ri
tor
iossedesp lazanau tomát
icamen te
parade ja
rsit
ioanuevas incorporac
iones .
●Mejorgestordelaapl
icaciónde lacáma radefotos
●Teclado másrápidoycon mejorp redicc
ión
●GoogleNow ,elasis
tentedevozna t
ivodeAnd ro
id

T
abla4
.1:Ve
rsionesdeAnd
roid
4
.4D
ist
ribuc
ióndelasve
rsiones

51
Comodesar
rol
lado
resdeap l
icac
ionestendremosqueasegu ra
rnosdequeelnive
ldeAPIeleg
ido
pa
ralaapl
icac
iónpermitaqueéstaseejecuteentan
tosdispos
it
ivoscomoseaposib
le.E
lnive
lde
AP
Idete
rminaráquédispos
it
ivospuedeynopuedee jecu
tarlaapl
icac
ión
.

Po
rlotan
to,hayquet
rata
rdeeleg
irunn ive
ldeAPIquesealo másbajopos
ibleyademás
,tene
r
encuen
taladis
tr
ibuc
ióndelasve
rsionesdeAndro
idenlosdispos
it
ivosrea
lesquehayhastae
l
momen
to.

F
igu
ra4
.1:D
is
tr
ibuc
ionesdeve
rsiones2012[36
]

Ve
rsión Nomb
re D
is
tr
ibuc
ión
1
.5 Cupcake 0.1%
1
.6 Donut 0.4%
2
.1 Ecla
ir 3.4%
2
.2 Froyo 12.9%
2
.3-2.3
.2 G
ingerbread 0.3%
2
.3.3-2
.3.7 55.5%
3
.1 Honey
comb 0.4%
3
.2 1.5%
4
.0.3-4
.0.4 IceCreamSandw
ich 23.7%
4
.1 Jel
lyBean 1.8%
T
abla4
.2:Po
rcen
tajeded
is
tr
ibuc
ióndecadave
rsiónAnd
roid

Sepuedenota
rquenohayunag rancan
tidaddeusua r
iosdeAndro
id1.5y1.6.Tambiénsepuede
no
tarquenoesunag rancan
tidaddeusua r
iosquetienenlaú
lt
imaversióndeAndro
id4.1,pe
roel
númerodeusuar
iosconlave
rsión2.xsonla mayo
ría.

Ana
l
izandoestosporcen
tajessepodr
íaconc
lu
irquelasve
rsionesquesepod
ríane
leg
irpa
raque
laapl
icac
ión
llegueala mayorcan
t
idaddeusuar
ios
,ser
íade la1.6a2
.2.

4
.5Ca
rac
ter
íst
icas

52
Laspr
inc ipalesca racter
ís t
icasde lap lataformason :
● App licationf ramewo rkquepe rmitelareu t
il
izac iónysus t
ituc
ióndecomponen tes
● Dalvikv irtua l machineop timizadapa rad ispos i
t
ivos móv iles
● Navegado rInteg radobasadoene l moto rdecód igoab ier
to WebK it
● Gráficos op timizados b ibl
ioteca de g ráfico s 2Dy b ibl
ioteca de gráf
icos 3D basada enlas
espec
ificacionesde la OpenGLES1 .0
● SQL itepa rae lalmacenam ien todeda tos
● Sopo r
te mu lt
imed ia pa raaud io,videosyfo rma tos deimagen(MPEG4 ,H .264, MP3, AAC
,
AMR,JPG ,PNG ,G IF)
● Conec t
ividadGSM ,B luetooth,EDGE ,3Gy W iF
i
● Sopo r
te pa ra ha rdwa re ad iciona l cáma ra defo tos
, de v ídeo, pantal
lastácti
les, GPS
,
ace
leróme tros,g iroscopios,senso resdep ro x
im idadydep resión
,te rmóme t
ro,acelerac
ión2Dy
3D.
● Ento rnodedesa rrollo incluyeunemu ladorded isposit
ivos,herramientaspa radepurac
iónde
memoriay aná lis
is delrend imien to delso ftware.E l entorno de desarro
llointegrado es Ec
l
ipse
usandoe lplug indeHe rramientasdeDesa rrol
lodeAnd roid(ADTP lugin)
.

4
.6A
rqu
itec
tura

E
lsis
tema opera
t
ivo Andro
id es
tá compues
to porvar
iascapas
. Cada capatiene sus p
rop
ias
ca
rac
ter
íst
icasypropós
i
tos.En
lasiguien
tef
igurasepuedenve
rcadaunade lascapas[35]
:

F
igu
ra4
.2:A
rqu
i
tec
turade
lSi
stemadeAnd
roid

53
KerneldeL inux
Andro
id depende de Linux paralos serv
ic
ios base de
ls is
tema como segur
idad
, gest
ión de
memoria,gest
ióndep rocesos,pi
laderedy mode lodecon t
rolado
res.Elnúc
leotambiénactúa
como unacapa de abs t
racción en
tre e
l hardwa
rey elresto dela pi
la deso
ftware
.T odaslas
ap
licacionesdeAnd ro
idsee jecu
tancomop rocesosseparadosdeL inuxconperm
isosotorgado
s
porelsistemaLinux
.

Libre
rías
Andro
idinc luyeuncon juntodel ib
reríasde C/C++usadasporvar
ioscomponentesdelsis
tema.
Estas caracter
ísticas se exponen alos desa rro
l
lado
res através de
l marco detraba
jo de
apl
icacionesdeAnd ro
id.Algunasdee l
lasson:
● Webk i
t:Unráp ido moto
rderende r
izadowebusadopo rSafa
ri
,Chromeyo t
rosnavegadore
s
● SQL ite
:Funcionesdebasededa tosSQL
● ApacheHa rmony :Unaimp lementacióndecódigoab
ier
todeJava
● OpenGL :Bib
liotecasdeg rá
ficos3D
● OpenSSL :Lacapadesegu r
idad

AndroidRun t
ime
Androidincluyeuncon juntodelibrer
íasbasequep roporc
ionanla mayo rpa rtedelasfunc iones
d
ispon ib
lesen laslibre
ríasbasede llengua jeJava.
Da
lvikesuna máqu inav i
rtua
lespecialmen tediseñadapa raAnd roid
.Cadaap licaciónAndroidcorre
sup ropiop roceso,consup rop
iainstanciadela máqu inavir
tual Dalvik. Dalvikhas idoe sc
ritode
forma que un d isposi
tivo puede correr múlt
iples máquinas vir
tuales defo rma e f
icien
te. Dalv
ik
e
jecuta arch ivos en elfo rmato Da
lvik Execu tab
le(.dex),elcua l está op t
im izado para memo r
ia
m
ínima .La Máqu inaV i
rtualestábasadaenreg is
trosyco rreclasescomp iladaspo relcompilador
deJavaquehans idotransformadasa lformato.dexpo rlahe r
ram ientaincluida"dx "
.Acon t
inuación
se mues t
raunaf igu radondesecompa raelp rocesodecomp ilaciónen treJavaes tándaryAnd ro
id.

F
igu
ra4
.3:P
rocesodecomp
i
lac
ióndeJavayAnd
roid

54
Marcodeap l
icaciones
E
l ma rco de apl
icación es un amb ienterico que o f
rece nume rosos se rvic
ios que a yudan al
desarrolladordelaap l
icaciónahace rsut raba
jo.Laa rqui
tec turaestád iseñadapa ras imp li
fica
rla
reut
ilizacióndecomponen tes
;cualquierap
licac
iónpuedepub licarsuscapac idadesycua lquierot
ra
apl
icac iónpuedeluegohace rusodeesascapac idades(suje toareg lasdesegu ridad).E ste mismo
mecan ismo pe rmite quelos componen tes sean reemp lazados po re l usuario. En trelos
componen testenemos:
● P roveedo res de con ten
ido que pe rmiten alas ap l
icac iones accede r a da tos de o t
ras
apl
icac iones(comoloscon tactos
),opa racompa rt
irsusp ropiosda tos.
● Sis temadev istas
:p roporc
ionauncon junto deelemen tospa raconstruirinte
rfacesdeusua r
io
● Un adm in
ist
rador derecu rsos parafaci
li
tare l acceso alosrecu rsoscomos tring,g ráf
icos
,
layou t.
● Un Adm in
ist
rador de no t
if
icac
iones que pe rmite atodaslas ap licac
iones mos trara ler
tas
persona l
izadasen laba r
radees tado.
● Un ges torde act
ividad que gest
iona elc iclo dev idadelasap licacionesyp ropo rciona una
navegac ióncomún .

Apl
icaciones
Porúl
timo,estánlasapl
icac
ionesdondeseencuent
ranlaspre
ins
taladasta
lescomounc lien
tede
cor
reoe lec
trónico
,prog
ramadeSMS ,calenda
rio
, mapas
,navegador
,contactosylasapl
icac
iones
quelosdesa rrol
lado
resdis
tr
ibuyenyquesepuededesca rgardesdelosdistin
tos me
rcadosde
Andro
id.

4
.7Fundamen
tosdelaap
licac
ión

Lasap l
icacionesdeAnd ro
ides tánesc r
itasene llengua
jedep rogramaciónJava .Lashe r
ramientas
delSDKdeAnd roidcompilanelcód igo,jun
toconlosda tosya rchivosderecu rsosenunpaque te
de And roid
,una rchivoconsu fi
jo.apk.T odoe lcódigoenunún icoa rchivo.apkescon s
iderada
comounaap licaciónyese larchivoqueAnd roidu t
il
izaparainsta
larlaap l
icación. Unarchivo.apk
t
ienebás icamen tetrescomponen tesprinc
ipales:
● Da lvike jecutable:E selcód igofuentedeJavacomp i
ladoaune jecu tab
le Dalvik
.É steese l
códigoquee jecutalaapl
icación.
● Recu rsos: Losrecu rsossontodoslos queno escód igo. La ap
l
icac ión puedecon tener un
conjuntodeimágenesya rchivosdeaud io/v
ídeo ,as
ícomonume rososa rchivosXMLquedesc r
iben
e
ldiseño ,paque tesde id
iomas ,etc.
● L ibrerías na t
ivas: Opcionalmente,la aplicac
ión puedeinc lu
iralgún cód igo nat
ivo, como
l
ibreríasC /C++ .

E
ls is
temaope ra
tivoAndroidesuns is
tema mu
lt
i-usuar
iodeL inuxenelquecadaap l
icac
iónesun
usuar
iod i
ferente
.Po rdefecto
,elsis
temaasignaacadaap licac
iónunúnicoIDdeusua r
iodeLinux
(elID es util
izadosólo po relsis
temay desconocido porla ap
l
icac
ión).E
ls is
tema estab
lece
permisospa ratodoslosarchivosenunaapl
icac
iónpa raquesó loe
lIDdeusuarioasignadoaesa
apl
icaciónpuedeaccede rae l
los.

Cadaprocesotienesuprop
ia máqu
inavir
tua
l(VM
),po
rloque e
lcód
igodeunaap
l
ica
ciónse
e
jecu
taenfo rmaais
ladadeot
rasapl
icac
iones
.

Pordefec
to,cadaapl
icac
iónseejecutaensupropioprocesodeLinux
.And ro
idinic
iaelproceso
cuandoalgunodeloscomponen
tesdelaapli
cac
ióndebese rejecu
tado
,luegosec ie
rraelproceso
cuandoyanosenecesitaocuandoelsis
temadeberecupera
rla memor
iaparaotrasapl
icac
iones.

55
De esta manera,elsis
tema And
roid ap
lica e
lprinc
ipio de m
ínimo p
riv
i
legio. E
s dec
ir
, cada
ap
licación
,pordefec
to,só
lot
ieneaccesoaloscomponen tesqueneces
i
tapa rahace
rsutraba
joy
nada más.Estocreaunambien
te muyseguroenelqueunaap l
icac
iónnopuedeaccederapar
tes
de
lsistemapa rae
lcualnoseledapermiso.

S
inemba rgo,hay maneraspa
raqueunaap li
caciónpuedacompa rt
ir da
tosconotrasapl
icaciones:
Esposib
ledisponerdedosaplicac
ionesquecompa rtenelm ismoIDdeusua r
iodeL inux,encuyo
casosepod ráaccederalosdemása rch
ivos
.Pa raaho rra
rrecursosdelsis
tema,lasaplicaciones
conelmismoIDdeusua r
iotambiénpuedehace rarreglosparaejecu
tarenelmismop rocesoL inux
y compar
tirla misma máquina vi
rtual(Las apl
icaciones deben esta
rfirmadas con el mismo
cer
ti
f
icado)
.

Unaaplicac
iónpuedesol
ici
tarperm isoparaaccederalosda tosdeldispos
it
ivo,talescomo los
contac
tosdelusua
rio
,los mensa
jesSMS ,e
lalmacenam
iento(tar
jetaSD )
,cámara,Bluetoo
th,entre
ot
ros.Todoslospe
rmisosdelaaplicacióndebese
rconcedidapore lusuar
iodurantelains
talac
ión.
[37]

4
.8Componen
tesdeAp
licac
ión

Ve
remoslos d
istin
tostipos decomponen
tes deso
ftwa
reconlos que pod
remoscons
tru
ir una
ap
licac
iónAnd
roid[37
]:

Act
ividad(Act
ivi
ty)
Las act
iv
idadesrepresen
tan el componen
te pr
inc
ipal delainter
faz g
ráf
ica de una ap
l
icación
Andro
id.Sepuedepensa renunaac t
iv
idadcomoe lelemen toaná
logoaunaven tanaencualqu
ier
ot
rolenguajev
isua
l.
Unaactiv
idadesimp
lemen tadacomounasubclasedeA c
tiv
ity.

Serv
icio(Se rvice
)
Los servic
ios son componen tes sininter
fa zg ráf
ica que se e
jecutan en segundo p lano. En
concepto,sonexac tamenteigualesalosse rvic
iospresentesencualquie
ro trosistemaope ra
tivo
.
Losse rvic
ios puedenrealizarcualqu
iertipode acc iones,porejemplo actual
izar da
tos, mostra
r
not
if
icaciones,oincluso most
rarelementosv isuales(Ac
tiv
it
ies)s
iseneces i
taena lgún momentola
inte
racciónconde lusuar
io .
Unservicioesimplementadocomounasubc lasedeSe rvice.

ProveedordeContenido(Con ten
tP rovider
)
Unproveedordeconten
idosese l mecan
ismoquesehade f
in
idoenAnd roidpa racompa r
ti
rda tos
ent
re apl
icac
iones
. Mediante es
tos componentes es pos
ib
le compart
ir determinados datos de
nuest
ra apl
icac
ión s
in mostra
r deta
lles sob
re su a
lmacenamientointe
rno, su estructu
ra, o su
implementac
ión.Dela mismaforma,nuestraap
licac
iónpodráaccederalosda tosdeo t
ra,através
delosproveedo
resdecon ten
idoquesehayande f
in
ido.
Unproveedordeconten
idoses imp
lementadocomounasubc lasedeCon tentProvide
r

Receptordeeven tos(BroadcastRece iver)


Unrecep tordeeven tosesuncomponen tedestinadoade tec
tar yreacc
ionaran tede
terminados
mensajes o eventos globa
les generados pore ls istema (po rejemplo
:“Ba ter
ía ba
ja”
,“SMS
rec
ibido”,“Tar
jetaSDinse r
tada
”,etc)opo rotrasaplicac
iones(cualqu
ierapl
icaciónpuedegene ra
r
mensajes(Inten
ts, ente rm
ino
logía And roid
)b roadcast, es dec
ir
, no d
ir
ig
idos a una apl
icación
concretasinoacua lqu
ieraquequieraescucha r
lo).

56
Unrecep
tordeeven
toses
imp
lemen
tadocomounasubc
lasedeB
roadcas
tRece
ive
r

4
.8.1Ac
tivac
ióndecomponen
tes

Intents
Tresdeloscuatrot
iposdecomponen
tes
:act
iv
idades
,se
rvic
iosyrecep
toresdeeven
tosseac
t
ivan
medianteun mensa
jeas
inc
rón
icol
lamadoIn
tent
.

Unintent es e
lelemen
to básico decomun icac
iónen trelos d
ist
intoscomponentes Andro
id. Se
pueden en tende
r comolos mensa jes o peticiones que son env iados en
trelos d is
tintos
componentesdeunaap l
icaciónoen tredis
tin
tasap licac
iones
. Medianteunin
tentsepuedeac tivar
unaactiv
idaddesdecualquierotra,inic
iarunse rvicio
,enviarun mensajebroadcast
,iniciaro t
ra
ap
licac
ión,e tc
.[37]

Un ob jetoin tent es un paque te dein formación. Contieneinformación dein terés para el


componen tequerec ibelain tención(ta
lcomolaacc iónarea l
izarylosda tosnecesa r
ios) más
informacióndein terésparae lsistemaAnd r
oid(ta
lescomolaca tegoríadelcomponen tequedebe
manejarlain tenc
iónylasins truccionesdecómopone ren marchaunaac tiv
idaddes t
ino)
.E lobjeto
intentsecomponedet reselemen tospr
inc
ipales:acción,categor
íayda tos.
● Acc ión: es una cadena de texto que ind ica la acción a rea liza
r. Po r ejemplo
,
android.
inten t
.act
ion.VIEW.
● Ca tego ría:Son me tadatosre fer
idosalInten
t,po rejemplo,andro
id.
intent
.category
.LAUNCHER
indicaquee lIntentpuedeiniciarunaap l
icaciónsiasíesreque r
ido.
● Da tos:loscua lesestánde f
inidosenformadeob jetoUR Iotextoplano.[38]

LosIntentssepuedendiv
id
irendosgrupos
:
● In tentsexp
líc
itos
:sepuede l
lamarauncomponentedi
rec
tamen
teatravésdesunombre
.
● In tentsimpl
íci
tos:se p
ide als
istema eva
lua
rloscomponen
tesregis
tradospa
raunacier
ta
intención
. Losinten
tsimplíc
itos a menudo se u
ti
l
izan pa
ra ac
tiva
r componen
tes en o
tras
ap
licaciones
.

Hay una claserelacionada alosIntentsllamadaln tentF


il
ter. Pa rainfo
rmara ls is
tema que
intenc
ionesimplíc
itassoncapacesde maneja rlasact
ividades,serv
iciosyreceptoresdeeven
tos,
pueden declara
r uno o másIn tents F
i
lter
s(F i
lt
ros
). Cadaf il
tro descr
ibe una capac
idad de
l
componente,uncon jun
todeintenc
ionesquee lcomponen teestádispuestoarec
ibir
.

Con
ten
tReso
lve
r

E
lp roveedo
r deconten
idos nose act
iva med
ian
te unIntent
,sino que debemos obtene
r una
re
ferenciaaunCon
tentResolve
r,atravésde
lcualserea
l
izantodaslasaccionesnecesar
iassobre
e
lproveedordecon
tenidosta
lescomoconsul
tar
,actua
l
iza
r,inse
rta
roeliminar
.

4
.8.2P
rocesos

Unaap l
icac
iónAnd ro
idsee jecu
taensup rop
ioprocesodeLinux
.Estep rocesoescreadopa
rala
ap
licaciónseejecutaypermaneceráshas
taquelaaplicac
iónde
jedetrabajar oe
lsis
temarec
lame
recursosparaotrasapl
icac
iones.

57
Unaca racte
ríst
icafundamen
tal de And roid es que e
lcic
lo devida de una apl
icac
ión no es tá
controladopo rla m
ismaapl
icac
ións inoque lode term
inaels
istemaapa rt
irdeunacomb inaciónde
estados, como pueden ser qué ap l
icaciones estánfunc
ionando, qué p
rior
idadtienen para el
usuarioycuán ta memor
iaquedad isponibleene lsis
tema. Deesta manera,Andro
idco lo
cacada
procesoenunaje rarqu
íadeimpo r
tanciabasadaenloscomponen tesenejecuciónyene les tado
delos m ismos.

Procesosde menorimportanc
iaseel
iminanpr
ime
ro,luegoloss
iguientesenimpor
tancia
,yas
í
sucesivamen
te.Haycinconive
lesen
lajera
rqu
ía.E
lordendeimpo
rtanciaesels
igu
iente[39
]:

1 P rocesos Ac t
ivos(Fo reground P rocess): Aquellos procesos necesar
ios paralo que e l
usuarioestá hac
iendo .Por logene ralhab rá muypocosp rocesosdees tetipocorr
iendoa lavezen
e
ls istemayson aque l
losquesee l
imina ráncomo ú lt
ima opción. Un procesosecons idera en
pr
ime rplanosicump lealgunade lass iguientescondic
iones:
● Se encuen tra activa una ac t
ividad conla que e l usuario estáin
teractuando (e l mé todo
onResume ()hasido llamado )
.
● Seencuen traactivounse rvic
ioquees táde s
tinadoalaac tiv
idadconlaquee lusua r
ioes tá
interac
tuandooes táe jecutandoa lgunosde los métodosdesuc ic
lodevida(OnC reate()
, OnS tar
t(
),
o OnDes t
roy(
)).
● Seencuen traactivounB roadcas tReceiverquees táejecutandosu método OnRece ive(
).

2 ProcesosVisib
les: esaque lquecontieneunaA ct
iv
idadqueesv is
ib
lea lusua
rio med
ian
tela
pan
tal
laperonoenp rimerp lano(estapausada).Esteprocesosoloseel
imina
ráencasodeque
seanecesa
rio man
tenerejecutándoselosprocesosenprimerplano
.

3 P rocesos de se
rvicio
: es aque
l quecont
iene unserv
ic
io que ha s
idoin
ic
ial
izado
. Noson
d
irectamentevis
ib
lesa lusuar
io,perosirea
l
izantareasperc
ib
idaspo res
te.Elsis
temasigueen
funcionamien
to a menos que no hayasuf
ic
iente memor
ia pa
raretener
losjun
tocontodoslos
procesosdeprimerplanoyvis
ib
les.

4 P rocesosensegundop lano(BackgroundP rocess)


:Unp rocesoque mantieneunaact
ividad
quenoesac tua
lmen tev
is
ibleparaelusuario(e
l métododelaact
ividad OnStop
()hasidol
lamado )
.
Estosprocesosnotienenunimpac todirectoenlaexpe r
ienc
iade l usua
rio,ye lsis
temapuede
matarencualqu
ier momen
topa rarecupe
rar memoriaparalosprocesosdep r
imerplano
,vis
ibleso
procesosdeserv
ic
io.

5 P
rocesosVac
íos:Esunprocesoquenoalo
jan
ingúnt
ipodecomponen
te.Surazóndese
res
e
ldetene
runacachéd
ispon
ib
leparalap
róx
imaapl
icac
iónque
lancee
lusuar
io.

4
.8.3C
iclodev
idadeunaac
tiv
idad

Laactiv
idadesuncomponen tefundamen ta
ldelasap l
icac
iones.E lcic
lodev idadeunaac tiv
idad
comienzaconsuinstanciaciónyterm inaconsudestrucc
ióneincluye muchoses tadosduran
teese
t
iempo . Cuando un act
iv
idadcamb ia de es
tado,e
l mé todocorrespondiente a
lciclodevidase
l
lama ,not
if
icandoalaac t
ivida
dco r
respondientede
lcamb iodees tadoinm inenteype rm
it
iéndole
e
jecutarcódigoconelfindeadap ta
rseaesecamb io
.

Enlaimagenpuedeverseunesquemaconlosestadosenlosquepuedees
tarunaac
t
ividadyqué
trans
ic
ionessepuedendaren
treel
los
.Acont
inuaciónsedeta
l
lacadaunodeellos
:

58
F
igu
ra4
.4:E
stadosdeunaA
ct
iv
idad

● Activa(Runn
ing)
:Eslap
rime
raenlap
i
ladee
jecuc
ión
,elusua
riovelaac
t
ividadypuede
in
teractua
rcone
lla
.

● Pausada(Paused ):Cuandoeldisposi
tivovaaen t
rarenreposo ,ounaac tiv
idadaúnesv isib
le,
pero parc
ia
lmente ocu
lta po
r una nueva , que no es detamaño comp leto ot ranspa
ren te,la
ac
tiv
idadseconsiderapausada.Lasactiv
idadesenpausatodav íaestánv
ivas,esdec ir
, mantienen
todalainformac
ióndelestado
,ype rmanecenun idosaladm inist
radordeven tanas.Ene s
tecaso ,
laact
ividadpuedesercer
radapore ls
istemas ineces
ital
iberarrecursosparalanuevaac t
ividad .

● Parada(S
topped)
: Ha pasado asegundoplanoy es
tá comp
letamente ocul
ta porla nueva
ac
tiv
idad
,enesecasoels
is
tematamb iénpuedeopta
rporcer
rar
las
inecesi
tal
ibe rarrecu
rsos
.

● Dest
ruida(Des
troyed
): yanoes
tád
ispon
ib
le,sehanl
ibe
radotodossusrecu
rsosyenca
sode
se
rllamada
,neces
ita
ríacomenza
runnuevoc
ic
lodevida
.


todospa
ralages
tiónde
lcic
lodev
ida

Delafigura4.5sepuedede termina rlosiguiente:


● onC reate()
, onDes troy()
: aba rcantodo e lc ic
lo de v
ida . Cada uno de estos mé todos
representanelp r
incipioyelfinde laac t
ividad.
● onS tart(
), onS top()
: rep resentanla pa rte vis
ib
le de
lciclo de vida
. Desde onStar
t() has
ta
onStop()
,laac t
ividadse ráv
isiblepa raelusua rio
,aunqueespos ib
lequenotengae lfocodeacc ión
porexist
iro t
rasac tiv
idadessupe rpues tasconlasquee lusuarioes táinte
rac
tuando. Puedense r
l
lamados mú l
tip
lesveces .
● onResume ()
,onPause (): determ inanlapa r
teú t
i
ldelcic
lodev ida. DesdeonResume (
)has ta
onPause(),laac t
ividadnosó loesv isib
le,sinoqueademást ienee lfocodelaacciónye lusua r
io
puedein terac
tua rcone l
la.

59
F
igu
ra4
.5:C
ic
lodev
idadeunaac
ti
vidad

Acon
tinuac
iónsede
tal
lan
los mé
todos másre
levan
tesde
lcic
lodev
ida
:

● onC reate()
:Sel lamaa lc rea
rlaac t
ividad.Esdondesep repa ralainter
fazgrá f
icade lapantal
la.
Trasestafunc ión,elp rocesosob reelquesee jecutalaA c
tiv
idadnopuedese rdes t
ruidopo rel
s
istema.E lsiguiente métodoquese llamaesonS ta
rt
( )
.
● onRes tart(
):Sel lamacuandounaac t
iv
idadquesehab íapa radovue lveaes ta
rac tiva
,justo
antes de quecom ience de nuevo .T ras el
lasel lama a onS tart(
)ysu p roceso no puedese r
destru
idonidu ranteniluegodesue jecución.
● onS tart
():See jecutajus toantesdequelaap licaciónseavisiblealusua r
io.Elsiguiente método
deciclodevida llamadose ráonS top(
)uonResume ()
,depend iendode lasi
tuación.
● onResume ():See jecutaene l momen toenquelaac tiv
idadseencuen t
raenlapa rtesupe r
ior
dela pila
,justo an tes de que e l usuario puedainterac
tuarcon e l
la.Els iguiente métodose rá
onPause (
).
● onPause ():Sel lamacuandolaac t
ividadvaase rocultadapo rotra.Enes te métododebemos
aprovechar pa raliberartodo aque llo que consume recu rsos o gua rdar datos de mane ra

60
pers
istente
. Nopod rácon tenerta reaslen tasyaquehas taquenote rminees te métodonopod rá
e
jecutarseelonResume ()de lanuevaac tividad.El métodos iguien
teseráonResume ()uonS top()
.
● onS top(): Seejecutacuandolaac tividadsehaceinv isib
lea lusuario. Puedese rpo rqueo tra
ac
tiv
idadlaocu lteyen toncese ls igu
iente mé todose ráonRes tar
t(
)opo rquelaac tividadhayas ido
dest
ruida,l
lamadoacon tinuaciónaonDes troy(
).
● onDes t
roy()
:Sel lamaan tesdedes truirlaa c
tiv
idad. Du ranteladestrucc
ióndelaac t
ividadse
perderántodoslosda tosasoc iados ae llapo rloqueenes te método pod ráse ru t
il
izado pa ra
cont
rolarlapersis
tenciadeda tos .Sellama rácuandosee jecutael mé
tododef inalizaciónfinish()
sobrelaactiv
idadopo rquee ls istemaelim inalaac t
iv
idadpa raconseguir másrecu rsos.

4
.9En
tornodedesa
rro
llo

Androidt
iene un comple
to SDK (depu rado
r, AP
Is,bib
l
iotecas
, un emu
lador
, documentac
ión
,
cód
igodee jemploytutor
ia
les)parafac
il
ita
reldesarro
l
lodenuevasapl
icac
iones
.A c
tualmente
,la
p
lataformadedesarro
l
loes tád
isponib
leparaLinux
, Macy W
indows.

Con And ro
idse buscareun i
r en una m isma plataformatodoslos e lemen tos necesar
ios que
permi
tana ldesarrol
ladorcontro
laryap rovecharal máximocua lqu
ierfuncional
idado f
recidapo r
undispos i
t
ivo móvil(l
lamadas, mensa jesdetexto,cáma ra,agendadecon tactos
,conex ión Wi-F
i,
B
luetoo th,videojuegos ,etc
.)
, as í como pode rc rear apl
icaciones que sean ve rdaderamente
por
tables,reuti
lizables y deráp ido desarrol
lo. En otras palabras
, Android quie
re me jorary
es
tanda r
izareldesa rrol
lodeap l
icacionespa racualquie
rd ispos
it
ivo móvi
ly,po rende ,acabarcon
lafragmen tac
iónex isten
tehoyend ía.

Androido f
receunp luginpa raE c
lipsequeex t
iendelafunc ionalidaddeés teyfac i
l
itaeldesa rrol
lo
de aplicaciones pa ra And roid. Además,o frecelas he rramientas que u t
i
liza es
te plug
incomo
scr
iptsdeAn tpa raquepuedanse ruti
lizado stamb iéndesdeo trosen tornosdedesa rro
llo.En tre
lasfunc ional
idadesdees tep lug
inseencuen tra:
● Emu ladordeAnd roid.Pe rmi
tee leg
iren t
red ist
intosterminales móv i
lesylave rsióndelsistema
operativo.
● E l acceso a he r
ram ientas de desa rro
l
lo de And ro
idcomotoma r captu
ras de pantal
la ,la
redireccióndepue r
tos,lapos ibil
idaddedepu rarconpun tosdepa radaove relestadodelo s
procesosco r
riendoene lsistema).
● A sistentespa ra lacreaciónráp idadeap licacionesAnd roid
.
● Ed itores de cód igo pa ralos d is
t
in tos archivos de con f
igu ración(XML ) quefacil
itan su
comp rensiónydesa rrol
lo.
● In terfacesg ráficasquepe rmiteneldesa rrol
lodecomponen tesv isualmente.

4
.9.1Ins
talac
iónde
lSDK

Acont
inuac
iónse descr
iben los pasos necesar
ios para d
ispone
r enla PC de
l en
tornoylas
he
rram
ientasnecesa
riaspa
racomenza rap rogramarapl
icac
ionesAndro
id.[40
]

Paso1:Descargaeinstalac
ióndeEcl
ipse
Ut
il
izamosEcl
ipseInd
igolavers
iónE
cl
ipseIDEfo
rJava Deve
lope
rs.Se puedeu
t
il
iza
relE
cl
ipse
3.5(Ga
li
leo
)osupe r
ior
.

Paso2 :DescargarelSDKdeAnd roid


E
l SDK de la pla
tafo
rma And
roid se puede desca
rga
r desde
ht
tp:
//deve
lope
r.andro
id.com
/sdk/
index.h
tml.

61
Unavezdescargadohayquedescomprim
irelzipencualqu
ier ub
icac
ión. Comosuge
renc
ia,no
ins
tala
rloen“Arch
ivosde Prog
ramas”
,sinopo rejemp
loen C:\
Andro
id,yaquehayp rob
lemas
conlosespac
ioscuandohayquere
ferenc
iar
ladesdeec
lipse
.

Paso3:Desca rgare
lpluginAndroidpa raEc l
ipse
Google pone a dispos
ición delos desarro
lladores un plugin para E c
l
ipsellamado And roid
Deve
lopmen tTools (ADT) quefac
il
ita en gran medida el desarrol
lo de apl
icaciones pa
rala
p
latafo
rma ,porlocualesrecomendableins
talar
lo.Desca rgar
loacced iendoal menuHe lp>lnstal
l
newso f
twa re…eindicarlaurldedescargahttps:
//dl-
ssl
.google.com/android
/ec
lipse/yseguirlos
pasosde insta
lac
ión.

F
igu
ra4
.6:Ins
talac
iónde
lplug
inADT

Paso4:Con f
igu
rarelpluginADT
.
Enlaventanadeconf
igurac
ióndeEcl
ipse
,sedebeaccede
r alasecc
ióndeAnd
roideind
ica
rla
rutaen
laqueseha insta
ladoelSDK(Paso2
)

F
igu
ra4
.7:Loca
l
izac
iónde
lSDK

62
Paso5 :AgregarP lata
formasyo troscomponen tes
AdemásdelSDKdeAnd ro
idcomen tadoene lpaso2,tambiéndebemosdesca rgarlosl
lamados
SDKT a
rge
ts de And ro
id,quesonlasl ibre
ríasnecesar
iaspa radesa r
rol
larencadaunadelas
vers
iones concretas de Andro
id.A s
í,si queremos desar
rollar po
re jemplo para Android 1
.6
tendremosquedesca rgarsutarge
tcorrespondien
te.Paraello,desde Ecl
ipsedebemosaccede r
a
l menú“W indow/ And ro
id SDK and AVD Manage r“ , y enla secciónA vai
lable Packages
se
lecciona
re instala
rtodoslospaquetesdeseados.

F
igu
ra4
.8:And
roidSDK Manage
r

Paso6 .Conf
igurarunAVD.
Parap roba
rydepu rarap
l
icac
ionesAnd ro
idpodemoscon
figu
rarunemulado
rod ispos
i
tivovir
tual
(AndroidVi
rtua
lDevice,oAVD )
.Pa rael
lo,vo
lve
remosaaccede
ralAVD Manager,yen lasecc
ión
V
irtual Dev
icespodremosañadirtantosAVDcomosenecesi
ten(po
rejemplo,conf
igu
radospa ra
d
istintasvers
ionesdeAndro
id)
.

63
F
igu
ra4
.9:AVD Manage
r

Paraconf
igura
relAVDtansólotend
remosqueind ica
runnomb redescr
ipt
ivo,e
lta
rgetdeAnd
roid
que ut
i
liza
rá, ylas ca
racte
rís
t
icas de hardwa
re deld
ispos
it
ivo vir
tua
l, como po
rejemp
lo su
reso
lucióndepanta
l
la,eltamañodelatarje
taSD,oladispon
ib
ilidadde GPS.

F
igu
ra4
.10
:Con
figu
rac
iónde
lAVD

Ycones
tepasoset
ienee
lamb
ien
tep
repa
radospa
rac
rea
runp
royec
toAnd
roid
.

4
.9.2He
rram
ien
tasdedesa
rro
llo

And
roidV
ir
tua
lDev
ice(AVD
)

64
E
lSDKdeAnd ro
idinc
luyeunemu ladordeundispos
i
tivo móv
i
l,undispos
itivo móv
i
lvi
rtualquese
e
jecutaensucomputadora
.Elemu ladorpe
rm i
tedesarro
lla
ryp robar apl
icac
iones And
roids
in
neces
idaddeu
ti
l
izarundispos
i
tivof
ísico
.

E
l emu lado
r es unaimplemen
tac
ión dela máquinavir
tua
l Dalvik
,lo queloconv
ier
te en una
p
lataformavál
ida para e
lfunc
ionam
iento de ap
l
icaciones de And
roidcomocualqu
iertelé
fono
Android.

E
lemu ladordeAnd roidim
itatodaslascaracte
ríst
icasdeha rdwa
reyso f
twaredeund isposi
t
ivo
móv
iltípico
,exceptoquenopuedenhace rllamadasdete lé
fonorea
les.Seofreceunavariedad
deteclasdenavegac iónydecon t
rol
,quesepuede"pu lsar"cone
lratónoeltec
ladoparagene ra
r
eventosdelaaplicación.Tamb
iénp ropo
rcionaunapan tal
laenlaqueaparecelaapl
icac
ión,junto
contodas laso
trasap l
icac
ionesAndroidact
ivas.[41
]

F
igu
ra4
.11
:Emu
lado
rAnd
roid

E
l emu lado
rtamb
iéninc
luye unava r
iedaddecapac
idades de depurac
ión,como unaconso
la
desdelaquesepuedeaccede
ra llogdelnúc
leo
,simu
larin
ter
rupciones(ta
lescomolal
legadade
mensajes SMSol
lamadaste
lefónicas
),ysimu
lare
fec
tosdela tenc
iayabandonosenlaredde
datos.

Dalv
ikDebug Mon itorSe rver(DDMS )
Esta herram ien
ta es un mon ito
r de depu rac
ión dela máqu inavir
tua
l Da lv
ik.Esta ap
licación
proporcionase rv
ic
iosdered irecc
ionam ientodepue rtos,captu
radepan ta
llas,captu
ray l
istadode
informac iónene ld
ispos i
tiv
o,hacerlogcats,verlosp rocesosylainfo
rmaciónde les
tadoderad io
,
s
imu larllamadasen trantesoSMS ,einclusos imularunapos icióndeubicación[42
].Todases tas
característ
icasconvier
tena lDDMSenunahe r
ram ienta muyúti
lparacualquierdesa
rro
llador.

65
F
igu
ra4
.12
:Pe
rspec
ti
vaDDMSenE
cl
ipse

AndroidDebugB ridge(ADB )
Android Debug Bridge(ADB )esunahe rramien
tadel íneadecomandosve rsá
ti
lquelepe rmi
te
comun icarseconunains tanc
iadeunemu ladorod isposi
t
ivoconectadocontecnolog
íaAndroid.Se
tra
tadeunp rog
ramac l
iente-
serv
idorqueincluyet
rescomponen tes
:
● Cliente,quesee jecutaenla máquinadedesa rrol
lo.Puedeinvocaraunclientedeunaconso la
medianteelcomandoadb .
● Se rvidor
,quesee jecutacomounp rocesoensegundop lano enelequipodedesa r
rollo
.E l
servidor ges
t
ionalacomun icac
ión entre e
lclientey el daemon adb quese e jecu
ta en un
emu ladorodisposit
ivo.
● Daemon ,quesee jecutacomounp rocesoensegundop lanoencadainstanciadelemu ladoro
d
ispos i
tivo
.[43]

La he
rramien
ta adb se puede encon
tra
r en e
l d
irec
tor
io donde se ins
tala e
l sdk
:
<SDK>
/pla
tafo
rma-
too
ls/

4
.10Es
truc
turadeunp
royec
toAnd
roid

Cuandoc reamosunnuevoproyec
toAndroidenE c
lipsesegeneraautomá
ticamen
telaes
tructura
decarpetasnecesa
riapa
rapodergene
rarpo s
ter
iormentelaap
l
icac
ión
.
Enlasiguien
teimagenvemoslose
lementoscreadosin
icia
lmen
teparaunnuevoproyec
toAndroid:

66
F
igu
ra4
.13
:Es
truc
turadeunp
royec
toAnd
roid

Carpeta/src
/
Cont
ienetodoelcódigofuentedela ap
licac
ión
,códigodelain
ter
fazgrá
fica
,clasesauxi
liares,e
tc.
In
icia
lmen te
,E c
l
ipsec rea
rápo rnosot
roselcódigobás
icodelapan ta
l
la(Act
ivi
ty)p r
incipaldela
ap
licación
,siempreba
jolaes t
ruc
turadelpaque
tejavadef
in
ido,pore
jemploin
fo.unlp
.museum .

Carpeta/ res /
Cont
ien tetodoslosa rch
ivosderecu rsosnecesa riospa rae lp royecto
:imágenes ,vídeos,cadena s
detexto,e tc.Losd i
ferentestiposderecu rsossedebe ránd istr
ibuirentrelassiguientescarpetas:
●/ res/drawab le
/. Cont
ienenlasimágen es dela ap l
icación . Se pueded ividi
r en/d rawable-ldpi
,
/drawab le
-mdp
iy/d rawab le- hdpipa rau ti
liza
rd iferentesrecu rsosdepend iendodelareso luc
ión
deldispos it
ivo
.
●/ res/layout/
. Contienenlos a rchivos de de finición delas d i
ferentes pantal
las delain te
rfaz
gráf
ica .Sepueded iv
idiren/ layouty/ layou t-
landpa rade f
inirdist
intoslayoutsdepend iendodela
or
ien tacióndeldisposit
ivo.
●/ res/anim /
.Con t
ienelade f
iniciónde lasan imacionesu t
ilizadaspo rlaaplicación
.
●/ res/menu /
.Contienelade f
iniciónde los menúsde laap licación.
●/ res/values/. Cont
iene o trosrecu rsos dela ap licación como po re jemplo cadenas detex to
(st
rings .xml)
,esti
los(styles.xm l)
,colo res(colors.xm l
),etc .
●/ res/xml /
.Con t
ienelosa rchivosXMLu ti
l
izado spo rlaap licación.
●/ res/raw /
. Cont
ienerecu rsosad iciona les,norma lmen teenfo rmatod is
tintoa XML ,quenose
incluyenene lrestodeca rpetasderecu rsos
.

Como ejemp
lo, pa
ra un p
royec
to nuevo And
roid
, se c
reanlos s
igu
ien
tesrecu
rsos pa
rala
ap
licac
ión
:

67
F
igu
ra4
.14
:Recu
rsosdeunaap
l
icac
ión

Carpeta/gen
/
Cont
ieneunase r
iedee lementosdecódigogene radosau
tomáticamentealcompi
lare
lproyec
to.
Cada vez que gene
ramos nuestro p
royecto se gene
ra una se
rie de a
rch
ivosfuen
te enjava
d
ir
igidosalcont
roldelosrecu
rsosdelaaplicac
ión.

F
igu
ra4
.15
:Ca
rpe
tagen

E
l másimpo r
tantees R.java.Estac lase Rcontend
ráentodo momentounase riedeconstantes
conlosID detodoslosrecu rsos dela ap l
icac
ióninc
lu
idos enlacarpeta/res/
, deforma que
podamosaccede rfác
i
lmen teaes tosrecursosdesdenuest
rocódigoat
ravésdees tedato
.A s
í,por
e
jemplo,laconstante R.drawab
le.iconcon tend
ráelIDdelaimagen“ icon.png
”con ten
idaenla
carpe
ta/res
/drawable
/.

Carpeta/asse
ts/
Cont
ienetodoslosdemásarch
ivosaux
i
lia
resnecesar
iosparalaap
licac
ión(yqueseinc
lu
iránen
supropiopaquete
),comopo
rejemploa
rch
ivosdeconf
igu
rac
ión,dedatos
,etc
.

La di
ferenc
ia ent
relosrecu rsosinc
luidos enlaca rpeta/res/raw/ylosinclu
idos enlaca rpe
ta
/assets
/esquepa ralosprimerossegene raráunIDenlac lase Rysedebe ráaccederae l
loscon
losdiferen
tes mé
todosdeaccesoarecu rsos.Paralossegundoss inembargonosegene raránIDy
sepod ráaccederae l
losporsuru tacomoacua lqu
ierotroa rch
ivode
lsistema. Usaremosunou
ot
rosegún lasnecesidadesdenuestraaplicac
ión
.

A
rch
ivoAnd
roidMan
ifes
t.xm
l
68
E
l man
ifiestohaceunase r
iedecosas,ademásdedec lara
rloscomponen tesdelaapl
icac
ión
,tales
como:
● Identif
icarlospe rmisosdeusuariodelaap licaciónrequ ie
re,talescomoaccesoaInterneto
accesode lecturaa loscon
tac
tosdelusua rio
.
● DeclararelniveldeAP Imín
imoreque r
idopo rlaap l
icación
● Declararlasca racter
íst
icasdehardwareyso f
twa reu t
il
izadooreque r
idoporlaapl
icac
ión
,tales
comounacáma ra,losserv
ic
iosdeb luetooth
,ounapan ta
lla mul
ti
táct
i
l.
● APIdelaap licaciónquedebeesta rvinculada(apa rtedelaAP IdeAndroid
),ta
lescomolaAP I
de Goog le Maps .

69
Cap
ítu
lo5
.Usab
il
idad

Ene
lcapí
tuloan
ter
iorhemosdescr
iptolap
lata
formaAndro
id.Enelpresentecap
itu
loexp
l
ica
remos
e
lconcep
todeusabi
l
idadysuaplicab
il
idadespec
ialmen
tealosdispos
it
ivos móv
i
les.

5
.1In
troducc
ión

SegúnlaISO /IEC9241- 1
1,lausabil
idades“elnive
lconelqueunp roduc
toseadaptaalas
necesidades del usua
rio y puede se
ruti
l
izado porel m
ismo pa
ralogra
rcie
rtas me
tas con
efec
ti
vidad,ef
icienciaysat
isfacc
iónenuncontex
toespec
íf
icodeuso
”[44]

M
il
lonesdepe rsonasut
il
izanhoyendíarecursosinfo
rmá
ticosta
lescomocomputadoras
,redes
decompu tado
ras,smartphones
, pa
rasolventarprob
lemas decomunicac
ión
, detraba
jo o po
r
cues
tionescot
id
ianas.

A med
idaquee lnúme rodeusua riosseamp l
íacadadía,inco
rpo
randopersonasdeformac
iones
ycul
turasdispares
,aumen taalapa rlademandadelos m
ismosdeadqui
rirsistemasdeso
ftware
con mayo
rn ive
ldeasistenciayfaci
lidaddeuso.

S
istemasinterac
t
ivosquep roveanunes t
i
lodecomun icación mássimp
le,queseancadavez más
fáci
lesdeu t
i
liza
r,deins
talar
,deap render
,sinrequer
irningúntipodeent
renamien
toespecí
ficoen
Info
rmá t
ica
. Además, se p re
tende que el so
ftware brinde mecan
ismos deinte
racción más
inte
ligen
tesyqueseadap tealusuar
ioenformae f
ic
iente.

E
lusua rioneces i
tave ralsis
temain te
ract
ivoquees táuti
lizandocomounahe r
ramientacapaz de
ayuda r
loareso lversusp rob
lemas ,aconcretarsusintenciones
.Pe roes
tonos iempreesas í
.E s
muy común que sele sumaninnume rablesp rob
lemas más a lu t
il
iza
rel softwa
re, deb
iendo
solucionarfallosoe rroresproducidoscuyascausasnosonc la
ras,aprendercuest
ionestécnicas
imp revistas,incurr
ir ac ier
tas ar
timañas para sor
tear obstácu
losinnecesar
ios, ad
ivina
r cómo
real
iza rde terminadatarearecur
riendoalaté cn
icadep ruebaye rro
r.

Aunquelacomponentefunciona
l estécor
re c
taycompletamente desa
rro
llada
, ex
is
ten unsin
núme rodeprob
lemasdein
teracc
iónquepuedenempaña relaccesoyproduct
iv
idaddela m
isma,
provocandoenelpeo
rdeloscasos,la mod
if
icac
ióngene
ralde
lso f
twareohastasufinaldesuso
.

Es
tosprob
lemasdein teracc
iónresiden enunacomponen tedelso
ftwa
redenom inada“Inte
rfaz
de
l Usuar
io"
, que se encarga deinnumerables cues
t
iones comola en
trada y sa
lida dela
in
formac
ión,visua
l
izac
ióndelosda tos,sopo
rte, mane
joycont
roldeld

logocone lusuariofinal
,
en
treot
ros
.

Lain
ter
fazde lusuar
ioocomponentedediálogoesunapartede
lsof
twarecuyodiseñoafectael
n
ive
ldep roduct
iv
idadde
lsistemagene
ral
,in c
ideenelgradodesat
is
facc
iónquepuedape rc
ibi
r
e
lusua
rio
,po rlotan
toesdeterm
inan
teparalaelecc
ión
,ut
il
idadyeva
luac
iónf
inaldelsof
tware.

Comolain ter
faz de
l usuar
io se encuent
ra den
tro de
ls is
tema de sof
tware
, su d
iseño e
implemen
taciónestáen manosdelespecia
lis
tain
formát
ico
,nopuedede lega
rseaund iseñado
r
v
isualoacualquie
rot
roprofes
iona
l.

70
Es obl
igación del desarro
l
lador de sistemas atendertanto cuest
ionesfunciona
les como de
inte
racción, dando e l m ismo n ivel de impo rtanc
ia a cada una de es tas partes y
responsabil
izándosedesu integ
ración, manejoycon t
roldeambas .
Esnecesa r
ioen tender queeldesarrol
lodelain te
rfazdelusuarioformapartedelprocesodela
Ingenie
ríade lsoftwa
re. Cómoeslaún icapa r
tedels is
temaquein te
ractúadi
rectamenteconlos
usuar
ios,esfundamen talefec
tuarunes tudiocompletodelcompo r
tamientohumano.

Se debeinclui
rcomoreque r
imien
tosindispensab
lesenlagene racióndelsoftwa
reparáme tros
ta
lescomo e rgonome tr
ía,fac
il
idad de uso, am
igab
il
idad,simpleza(entérminos dereducirel
es
fue rzo men
tal del usuar
io dellevar acabo enla máquinalata rea en mente o pensada)
,
f
lexibil
idad
, natura
lidad(en el sen
tido que e
l usua
rio através dela pan
tal
laveare fle
jado o
modeladosurealidad).

Lainte
rfazdelusua
riodebese
rdiseñadateniendoencuen tapr
inc
ip
iosdediseñopropiosqueno
coinc
idenconlacomponentedeapl
icación.Debese rp
lanteadaba
jolacons
iderac
ióndefactores
especí
ficosqueinc
idenensugestación,ta
lescomofac toreshumanospr
inc
ipalmente,per
f
ilde
losusua r
ios
,elementosde
len
torno
,ha rdwaredispon
ib
le.

Sudiseñopartedesdeunp ro
fundoconocimien
todel olosusua
riosf
ina
lesdelsof
twa
reysu
con
texto
, másquedesdelosté
rminoscomputac
iona
lesyalgo
ri
tmosdeprogramac
ión
.

Debido a que e
lproceso de d
iseño es
tácentrado en e
l usuar
io,set
rabajacon un n
ive
l de
incert
idumbreyamb i
güedadelevados,porloquehacequee lcic
lodevidadelainte
rfazsea
especia
lydebase rt
ratadoenformaindepend
iente
.

Lacomponen
tedeinte
rfaz
,seconst
ruyeconlaprác
tica
,neces
itase
rdiseñada
,eva
luadava
ria
s
veceshas
taa
lcanza
rlosreque
rim
ien
tosdelosusuar
ios.

Segene
ranvers
ionespro
tot
ípicasdelain
ter
fazquesonpuestasapruebaaunquela m
ismaes

incomp
letayaunqueaúnnotengaacopladalacomponen
tefunc
iona
l.

5
.2 Fundamen
tosenHC
I

LaInteracción Homb re-


Computado
ra, comúnmente re fe
rida conla abrev
iatu
ra HC
I, es e
l
inte
rcambioobse rvab
ledeinformac
ión,dato syaccionesen t
reunhumanoylacompu tadora
,y
v
iceversa.E stáconst
i
tuidoporeldiá
logo,laconversación
,lacomun icac
iónquepuedaflu
iren
ambasd i
recciones,en
treun
usuar
ioye lsistemadesoftwa
requeestáu t
i
lizando
.[45]

La“Interfazdel Usuario”
,encamb ioese l mediopore lcual
,lainte
racciónhombre-máqu
inaes
estab
lecida, manejadaycon t
rolada. Conformalapa r
tede lso
ftwareyhardwarequepe rmi
te,que
eseintercambiode informaciónysusd is
t
in tassecuenciasohi
losded iá
logo,seproduzcan
.
Es
tosdosté rminos,interacc
iónhomb re- máqu
inaein ter
fazdelusuar
io,están muyentre
lazados
enelp rocesodedesa rro
lloyenes toscasosselosusacomos inónimos
.[45]

En muchos con tex


tos ambos conceptos se re
fie
ren alas entradas de
l usuar
iof inal
, su
procesamientoloca
lizado delas mismas yla p
resen
tación delas sa
l
idas orespues tas
. La
transfo
rmaciónfunc iona
loa lgo

tmica de esas en
tradas a esas sal
idas pe
rtenece ala
componen tecomputaciona
lodeap l
icac
ión
.

71
Desdeunaconcepción másampl
ia,sepuedede f
iniral HC
I,tamb
iéncomounadisc
ipl
ina
.Sela
cons
ideraunáreaden t
rodelas C
ienc
iasdeCompu tac
iónqueseenca
rgade
ldiseño,eva
luación
eimp lemen
tacióndes is
temasdecompu tac
ióninterac
t
ivos,pa
raelusohumano,inc
luyendoel
es
tudiodetodoslosfenómenosconce
rnien
tesaello.

Ana
lizando másenp ro
fundidadestaú l
t
imade fin
ición
,losa lcancesdees tanuevadisc
ip
linason
muydifusosy,puedeninflui
rene l
lafac to
res muyhe terogéneos,desdeaspectostecnológicos
v
inculados a
l hardware a aspec tos socia
les o ps icológicos de
l usuar
io.Inciden además ,
cuest
iones d
iversas comofacil
idad de uso ,p roductiv
idad,e f
icacia pa
ra exp
resard ist
intas
pos
ibi
lidades
,capacidaddeadap tacióndea cuerdoad ist
intosusuarios
,desdeniñosape rsona s
de mayoredad,pasandopordis
tintasculturasyca rac
teríst
icassocia
les.

Comoesuná reaquesecen trafundamen ta


lmen teenlainteracciónentrehumanosy máqu inas,
se puede plantear muchas si
tuaciones di
ferentes
. Cuando sere fiere a“humano ”, puede
cons
idera
rsedesdeunusua r
iopa r
ticula
r,ung rupodeusua r
ios,unao rgan
izaciónocorporac
ión,
ohastael mundoen te
ro,comoese lcasodelasap l
icac
ionespa raInterne
t. Cuandoserefie
rea
“máquina
”, puedeinclu
irse desde unasimp le PC, una Workstat
ion
, unaIn trane
t o has
ta una
supe
rcomputado racon máqu
inascompu tacionalesembebidas.

Además ,el HCI se convierte en un áreainterdisc


iplinaria
, que puede nu t
rirse de nociones
provenien
tesdela P s
icología,porlaap l
icacióndeteo ríasdep rocesoscogn i
t
ivosye lanál
isis
emp í
ricodelcomportamientode lusua r
io;dela Soc iologíayAn tropolog
ía,pore lestud
iodela
inter
relac
ión en
trelatecno logía,eltrabajoylas o rganizaciones; delDiseñoIndustr
ial
, porel
estud
ioyd iseñodeproduc tosdeinteracción
;de lDiseñoV isual
,po relusodelasfo rmas,colores
yo t
rosparadigmasv
isualesysusd i
ferentesaplicaciones;en t
reo t
ros.

O
tropuntoquenohayqueo lv
idar
,sonlos a
spectosrelac
ionadosconlaTecno
logíaeIngenier
ía,
v
incu
lados alacapac
idad grá
f
icadelas panta
l
lasyd ispos
it
ivos,pa
ra que e
l usuar
ioingrese
in
formación
,yaseaportec
lado,ra
tón
,panta
llad
igita
l,voz,te
léfono
,en
treot
ros medios
.

Entonces,m ient
ras ex
istaeldiá
logoentreuna máquinay unhumano,su
rgi
ráninnumerab
les
factoresrelac
ionadosconel HCI,queinc
lu
irántodoslosaspec
tospa
raeld
iseñoyconst
rucc
ión
deinterfacesde
lusua r
ioadecuadas
.

Acon
tinuac
ión,se mos
tra
ráunaf
igu
raquere
sumelasin
ter
relac
ionesen
trelosd
ife
ren
testóp
icos
queabordaeláreadeHCI:

72
F
igu
ra5
.1:In
ter
relac
ionesen
tred
i
feren
testóp
icosde
lHCI

Lossis
temasdecompu tac
iónex
istendent
rodeun mediosocia
l,organ
izaciona
lydetrabajo.
Den
trodeestecontex
to,seencuent
ranlasap
l
icac
iones
.Inco
rpora
rcompu tadorasene
ltrabajo
impl
icaunprocesode
integ
rac
ión.

Ademásdelusoycontextosoc
ialdelascompu
tadoras,de
lladohumanodebemoscons
idera
re l
procesam
ien
tohumanodelain fo
rmación
,lacomunicac
ión-ellengua
je-ylascarac
ter
íst
icas
fís
icasde
lusua
rio-
ergonomet
ría-.

Desdeelpuntodevistadelacompu
tado
ra,unavar
iedaddetecnolog
íashans
idodesa
rro
l
ladas
parasopo
rta
rlain
teracc
iónconhumanos
,comolosdispos
i
tivosdeent
radaysa
l
ida.

D
iálogoscomplejosointerfacesdel usua
rioconca rac
ter
íst
icasdeavanzada,puedenllevara
cons
iderac
ionesdea rqu
itecturasdes
istemas,necesar
iosparasopor
tarcues
tionescomotiempos
derespuesta
,in te
rconect
ividad deredes,uti
l
ización de base de da
tos
, acceso a serv
ic
ios
espec
íf
icos
,entreotros
.

F
inalmente
,hayunp rocesodedesa r
rolloqueincorporaeldiseñodeldiá
logo
,herram
ien
tasde
prog
ramación ytécnicas de eva
luación, cuyos resu
ltados afec
tanlas e
tapas an
ter
iores
,
ret
roal
imentándo
las
,enunp rocesodecon t
inua me
joría.

5
.3C
las
if
icac
ióndelasIn
ter
facesde
lusua
rio

Conlallegada deloss istemas det iempocompa rt


ido enladécadade l 70 '
,eld isposit
ivo de
inte
rfaz disponible era elteclado.E sto p
rovocaba e
l desa rrol
lo de un de te
rm
inado es t
ilo de
inte
rfazquee rato ta
lmentetextual,denom inado“In
ter
fazor
ien tadaaComandos ”
.
Unprocesado rdecomandosesuns istemaa lcualseleing resaunacadenadeca rac
teresque
luegose ráana l
izadopa rade terminarlafunciónaprop
iadade laap l
icacióna invocar
.
Es
te es e l caso delain te
rfaz del usua r
io más elementa l
, se carac ter
iza po r serfác i
l de
desarro
l
lar,sein terac
túa únicamen teconlaconso laytec lado ,las pantallasylassa lidas de
l
s
istemasont radiciona
les,con impresionesacadenadeca rac teres
.
La misma,p resen tacier
taslimitaciones,pue s
toquelaen tradadesdee ltec ladop rovoca mayor
tasa dee rrores,requ ie
re quee l usua riorecue
rdee lconjun to depos iblesen tradaslega les
,y
73
br
indaunavis
ióndelaap
licac
ión
,deles
ti
lo“verbo-
obje
to"quenoresu
ltaam
igab
le,yaquee
l
usua
rios
ien
tequeeslaap
l
icación
laquet
ieneelcont
rol
.

Luego, a med ida queseinc remen tólacomp lejidad de l ha


rdwa re, aparecieronlas“ Inte
rfaces
or
ientadasa Menús "
,queseca racterizapo
rp resen taruncon juntodeopc iones ,quepuedense r
selecc
ionadas po rlos usua r
ios. Con estasin terfaces se pe rmit
ió abs t
raerlain terfaz dela
apl
icación,puesfue rzaa ldesa r
rolladoracons ide rarelespac iodecomandosyacc ionescomo
unaen t
idadindepend iente.
Seca racter
izapo rse rfáci
ldeusa rydeimp lemen ta r
,lap ref
ierenla mayo ríadelosusua r
ios
inexpertos,sin entrenam iento previo.E s
tudios sob refactores humanos demues tran que el
proceso delec tura y elección delas opc iones de l menú,resu lta se r más senc i
l
lo quela
invocaciónacomandos ,querequ iererecordarlas intax
isdelos m ismos .Además ,a lien
taala
navegaciónyexp loraciónde lsis
tema .
Perotamb ién, sele a t
ribuyen ciertosinconven ientes como , pore jemp lo, enlos casos de
presentarl
istasdeopc ionesdemas iadoextensas ,queresu l
taunatécn icaengo r
rosa,ocuando
haydemas iados menúsan idados,quepuedep rovoca rpérd
idade lcon texto
.

Tan
tolas“Inte
rfacesorien
tadasa Comandos”
,comolas“ In
ter
facesorien
tadasa Menús
”,ut
il
izan
a
ltex to como el único med
io derepresentac
ión y deinteracc
ión, emp
leando un d
iálogo
secuenc
ial,po
r lotan
toestánencuad
radasen loquesedenom ina“In
ter
facesTex
tua
les”
.

A med iadosdeladécadadelos80 '


,deb idoalosg randesavancestecno lóg icos ,laapa r
iciónde
pan tallascon mayo rde finición ,dispos i
tivosdein te raccióng ráf
icos ,comopo re jemp lo,e lláp iz
ópticooe lratón ,comenza rondesa r
rollarsepa raloss istemasdeso f
twa re,unes tilodein te r
faz
máspode rosoquee ltex tual.
Así
,su rgieronlas“ Inte r
faces G ráficas”- GU I-o“ Inte rfacesV isua les”,queseca rac terizaronpo rla
ut
i
lizac ión de recu rsos v isua les pa rala rep resen tación delos ob je tos y po r pe rm it
irla
manipu lac iónd irectade los m ismos , med ian teund iá logoas inc rónico.
Una GU Ipo rlogene ralpa r
tede lsistemaope rativodeunequ ipoqueseca racte rizapo rW IMP sy
WYS IWYG[46 ]. W IMP(W indow sicons , menus , po int
ing dev ices) es una ab reviac ión delos
concep tosdeven tanas ,iconos , menúsyd ispos i
tivosdein terfazta lescomo mouseot rackba l
l.
Designa de un modo gené r
ico e lp rime r mode loin te ractivo desa rrollado po re l cen tro de
inves t
igac iónPARC(Pa loA ltoResea rchCen ter )pa rain te ractuarconloso rdenado resat ra vésde
lasin terfaces g ráf
icas de usua r
io.Las ven tanas ,losiconos ylos menús , son e lemen tos
inte rac t
ivos ,quepe rtenecenalapa rtes imbó l
ico -l
ingü ísticadelain ter
faz .E l mousepe rtenecea l
ladodein terfazhumanaof ísicade linterfazg ráfico .Jun toscons t
ituyene lpa rad igma máspo tente
ye f
ic ien te alcanzado has ta e l momen to pa rain teractua r conlos o rdenado res pe rsona les.
Aunqueenlaac tual
idadsein tentasupe rare s
tepa radigmadesdelacomb inac iónded ispos i
tivo s
dein te rfaz humano novedosos(pan tal
lastác t
i
les ) en comb inac ión con nuevas me táforas
v
isua les ,elpa radigma W IMPese lquees táa c
tua lmen tev igen teene lg ruesode loso rdenado res
persona lesqueope ranen laac tual
idadyd ispos it
ivos interac t
ivos introduc idosene l me rcado .
WYS ISWYGese lac rónimode Wha tY ouSeeIs Wha tY ou Ge t(ening lés ," loquevesesloque
obtienes "),sere f
ierea lacapac idadde imp rimirexac tamen teloquevesen lapan tal
la .
Norma lmen te,loqueunoveenlapan tal
lade lo rdenado ryloqueunoob tieneenunaimp res ión
t
ienenna turalezastecno lógicas muyd i
fe rentes .Enlos m ismoté rminos ,consegu i
rqueunacosa
queseveenlapan tallaya lgoquees imp resoat ravésdeuna imp reso raseanp róximos ,en traña
uncon juntodep roblemastécn icosnadafác ildel idia r
.
A
lgunascues tionesp rob lemá t
icasre lacionadascone ldiseño WYS IWYGene lin terfazpod rían
ser lass iguien tes:
1.Esca lab i
lidad: Cons is t
ir
íaenhace rco incidir ycoo rdina rlarep resen tac ióndelasesca lasde l
objetoenpan ta l
lade modoqueseace rquea lasespec tativasde lsu jetoen lav idarea l
.

74
2.Sim i
litud:Cons isteenace rcarenforma,colorytexturalossignosqueserec reanenpan ta
lla
yloss ignosquepos teriormenteseránimpresosene l medio,pore jemplolarep resentac
iónde
imágenesot ipogra f
íaenpan ta
llaysureproducc
iónfina
l.
3. Modelado :Las imu laciónde modelostr
id
imensionales,ysuspos iblesresul
tadoses tánden tro
delas p rob
lemá t
icas que es te pr
inc
ip
io de diseño debe contemp lar dent
ro de un s istema
interac
tivo
Ac
tua lmen teelprincip
io WYS IWYGese lqueha mode ladoelespac io metafó
ricodelain terfaz,
haciéndonosc reerque loquevemosestanrea lcomoloqueob tendremospos terio
rmente.
Es
tet ipodein te
rfaces ,ademásdeinc rementarel poderrepresentativo
,tamb iénaumen tólo s
costosy lacomp lejidadpa ra maneja
restet
ipoderep resentac
iones.

Comounac laseespecíf
icadelasin
terfacesv
isua
les,seencuent
ranlas“
Inte
rfacesIcón
icas"
,que
ut
i
lizancomo med iodein te
racc
iónyrepresen
tac
iónvisua
l,exclus
ivamentealicono. Sepuede
mencionar
,quee liconoesunaimagen ,unafigu
ra,peroquetieneuns ign
if
icadoosemán tica
subyacente.Elm ismoes tádete
rminadoporunaimagenquedebese rs
ignif
ica
tivayfáci
lmente
reconocib
lepo rlacomunidaddeusua r
ios
.

También, se puede menc ionaro t


rotipo deinterfaces que son c lasi
ficadas comoin ter
faces
inte
ligentes,puestoquepe rm i
tenquee lcompo r
tam ientodelain terfazseace rqueaún mása l
usuario
,p roveyendocapac idadderazonam iento,deadqu is
iciónyap l
icacióndeconoc imientoy
decomun icaciónde ideas
.
Dent
rodelasin te
rfacesintel
igentes,sepuedenc i
taralas“ Inter
facescons ignosdeAdap tac
ión”,
“In
terfaces E vo
lut
ivas” e“ Inter
faces conInferencia”, que presentan ca rac
terís
ticas d
is
ím i
les
respectosasusob je
tivospa r
ticu
lares
,comoasucua lidadde"inte
ligentes".

Las“Interfaces con s ignos de Adap tación ”


,b rindan dife rentes modos dein teracción que se
puedense lecc iona rautomá ticamen tedeacue rdoaltipodeusua rioencues tión.Sonsens iblesa
lospe r
fi
les individualesde losusua riosyasu sesti
losde inte racción.
Las“Inter
facesE volut
ivas”,tienenlap ropiedaddecamb iaryevo lucionarcone lt
iempojun tocon
e
lg radodepe r
feccionam ien toquee lusua r
iopa rt
icularvaadqu ir
iendocone ls is
tema . Pueden
acompaña rlaevo luciónoe lc recimientoquep resentae lusua r
ioan tee lusode lsis tema ,con
nuevas ayudas , mensa jes más especí ficos, un es ti
lo dein teracc
ión más ág il, en tre o tras
cuest
iones .
Las“InterfacesconIn ferenc ia
”,tienenlacapac idad decap ta rsecuenc iasdeacc ionesque e l
usuar
iorep iteconf recuenc ia. Unavezreg ist
radoesacos tumb reyan telap róximain iciativade l
usuar
ioderea l
izarlanuevamen te ,elsistemaseleade lan tayb rindalapos ib
i
lidaddecomp letarla
secuenciadeacc ionesenfo rmaau tomá t
ica .
Laau toma t
izac ióndees tetipodein terface s
,sel leva r
íaacabo med iantee lreconoc imien toy
a
lmacenam ien todepa tronesobse rvadosene lcompo rtam ientodecadausua r
io.E staadqu isición
dein formac ión es t ranspa rente pa ra e l usua r
io, cons t
ituye una base de cono cim iento
especia
lizadoque ,juntoconpa ráme t
rosoc r
iter
iosdeeva luaciónydelos mé todosap ropiados
paraaplicar
lo ,cons ti
tuyenun ma rcoap ropiadopa raquelain terfazp roveasignosdein tel
igenc ia,
s
imp l
if
icando lalabo rdelusua r
io.

También,seencuentranlas“In
terfaces Web”ointer
facespresen
tesenlossitiosde la World Wide
Web, que debido al espec
troinmensu rab
le de usua r
ios a
l que está dirig
ida, debetene r
considerac
ionesdediseñoydesa r
rolloespec
ia
les.
Porú lt
imo, se pueden ci
tarotrasin ter
facesimpo r
tantes
, comolas“ Interfaces Acce s
ibles
”,
“In
terfacespara G
roupware”,“
InterfacespuramenteConversac
iona
les
”y las“Interfaces Móv
iles”
.

75
Las“In
te r
facesA ccesibles”
,sonaque l
lasquerespe tanlasno rmasde ldiseñouniversal
,pa raque
pueda se r acced ida po r cualquier usua rio,independ ientemen te de sus condic
ionesf ísicas o
menta
les.
Las“Inter
facespa ra G roupwa re”,seca racterizanpo rinteractuarconung rupodeusua riosque
tendrán ob jetivoscomunes ,recu rsos a compa rt
ir
, un amb iente v
ir
tual dereunión. La m isma
deberátene rfacu ltadespa raso lventarlacoo rdinacióndelg rupo,comoaspec tosdecolabo ración
ycomun icac iónen trelos miemb rosde lm ismo .
Las“Interfaces pu ramen te Conve rsaciona les”,se mon tansob reloss istemastelefón
ico syse
carac
terizanpo rnocon tarconunapan tal
la.E lúnico med iodesa l
idaeslavozylaen t
rada,
puedese rat ravésde lavoz,comoat ravésdelosbo tonesde ldisposi
tivote
lefón
ico.
Las“In
te r
faces Móv iles”
,sonaque llasp resen tesen losdispos it
ivosina
lámb r
icoscomoce lularesy
table
ts,que losusua r
iosu t
il
izanpa raaccede ralaap l
icación.
Cuest
ionesdein te rrupción,distracción,v isualizac
ióndeunapan tal
la muyreducida,e lap remio
poraccede ralain formaciónenese momen toyeneseluga r
,hacenquelain terfazp resente
carac
teríst
icasded iseño muyespec iales.

Ademásdelost iposde inter


faces menc
ionadosan te
rio
rmen teseencuen tran:las in
ter
faces
hápticas,lacualestábasadaene ltac
to,usando los movimientosdelusuariocomoen t
radayel
sentidodeltactocomosa l
ida(re
troal
imen tac
ióntantotáct
ilykinestés
ica)[47];lasinter
faces
moda les,dondee lusuar
iose mueveen tredi
ferentesestadoso modosyencada modo ,la
entradade lusuar
iose interp
retadeuna mane rad i
feren
te[48 ];lade Window sSurface,una
interfazdiseñadaparatab le
tsycome rcial
izadapo rMic
roso f
t;entreo
tras
.

5
.4Independenc
iade
lDiá
logo

Enloses tudiosin
icia
lessob reeldesa rro
llodes is
temasin teract
ivosse mezc labafue r
temen tee l
d
iálogo con e l so f
twa re compu tacional
, causando que e ld iá
logo se conv ir
tiera en una
componen tecadavez másres is
tente acamb ios a medida que e ldiseño dels istemaiba en
progreso. Quee ld iá
logoseencuen treinmersoyocu l
toden t
rodelacomponen tecompu tacional
aten
tacon traeldesa rrol
lodein ter
facesde lu suar
iodea l
taca l
idadpues toquela m ismarequ iere
deunc iclo i
terat
ivoded iseñoyeva luacióndonde las modi
ficacionessonunacons tante.
Laso lucióneme rgióba joe lconceptode“ IndependenciadelD iálogo”[Ehr
ichyHa rtson1981 ]que
sebasaenunade f
iniciónformalpa ralacomun icaciónentrelainterfazdelusuarioye lprog rama
compu tacional.
Enlap ráct
ica,es tosign i
f
icaquelacomponen tecompu tacionalsedesen tiendedetodoloque
abarca e l aspecto delain terfaz, como su es t
ilo deinteracción,sip rovee unlengua je de
comandospa racomun icarsecone lusuariofinalosiestábasadaen menúsofo rmu lar
ios.

Laindependenciade ld iá
logoesc rucia
ltantopa ra modif
ica
rfácilmentelainterfazenelp roceso
itera
tivoderef
inamien tocomopa rasu man tenimiento
.
S
inindependenc iadeld iálogo,laformaenqueseloes truc
turaylosde tal
lesdecómoe lm ismo
se comun ica con e l usua rio final está d i
rig
ido y con tro
lado po r los requer
imientos
compu tac
iona
les dels istema de ap l
icación. Losconocimientos especí
ficossob re e
ldiálogoy
decis
iones sobre est
ilos dein te
racción se en t
remezclan conla componen te computacional
,
provocandonosó lolares istenc
iaacamb iosya menc ionadaynecesa riaenlacons t
ruccióndela
inter
faz,sinoqued if
icu l
taademáslacons ideracióndefactoreshumanosene ldesar
rol
lodela
m
isma .

En
tonces,presen
tadostiposdeinconvenien
tes, uno an
ivelrelac
ionadoconlas C ienc
iasde
Computac
ióny ot
rosa nive
l defac
tores humanos
. Respecto a
lp r
imertipo de p
roblemas,se
re
fie
reaquecadarutinacomputac
ionalneces
itadeuncon jun
todeva lo
resdeen tradaval
idados
76
parasupos teriorproceso ,desentend
iéndosedelafo rmaenqueesasen tradasfueronvalidadas
,
cómofue roning resadospo relusua r
io,nide sdequéd isposi
t
ivo. Necesi
tafocalizarsuinterésen
e
lp rocesam ientode lainformaciónnoen laconve rsacióncone lusua r
io.
Los p roblemas a n ive
l delosfac tores humanos es d iseñareld iálogode una mane ra quela
compu tadoraseadap tealosreque rimientosdelusua rio
,conv i
rt
iéndoseenunahe rramientaque
realizalasta reasa lm ismo . Desdeestape rspectiv
ae ldiálogodebecon jugarlas imp
lic
idadde
interacciónconlaop timizac
iónene lprocesodeva l
idación,acep tandolosva loresdeen t
radas
ver
ificándolosdeacue rdoade te
rminadosc r
iter
ios,proveyendofeedbackyayudaspa ragu iara
l
usua r
io a ev itare ling reso de entradas erróneas y a cons iderar solamente aque l
las que
pertenezcana lconjuntodeva lorespermit
idos.

5
.5Componen
tesdelaIn
ter
fazde
lUsua
rio

La mayor
íadelos modelosexistentessonde scr
ipcionesest
ructura
lesqueespec i
ficanla manera
quelainterfazde
lusua r
ioserelacionacone lsis
temadeap licac
ión,noson mode losdescrip
tivo
s
dela propiainte
racc
ión homb re-computadora. Ent
re es
tos mode los se encuentra e
l que se
desar
rol
lóen R .Seeheim, mástarde modi
ficadopo rAlbe
rtG reen,enelaño1985 .E s
te modelo
se mues
traenlas igu
ientef
igura:

F
igu
ra5
.2: Mode
loIn
teracc
iónHomb
re-
Máqu
ina

Lacomponentedep resen
tac
ióneslaresponsab
lede lavisual
izac
ióndelainter
faz
,especi
fica
las
pan
tal
lasquesep resenta
ránalusuar
ioye lest
ilodeinteracc
ión.Loscolores
,ubicac
ionesdela
pan
tal
la,f
igu
ras, menússonconcep
tosrelac
ionadoscones tacomponente.

Lacomponentedecontro
ldediálogoes
táacargode l mane
jodelasecuenciadeeven
tosyde
l
cont
roldelastécn
icasdein
teracciónp
rov
is
tas. De
finelaestruc
tura
,secuenc
ia,e
lproce
sode
l
inte
rcambiodein
formac
iónen
treelusuar
ioylaapl
icación
.

F
inalmen te
,lacomponen tedenom inada ModelodeIn ter
faz-Apl
icac
ióneslarep resentacióndela
ap
licac
ióndesdee lpun
todev is
tadelain ter
faz . Cont
ienetantounav isióndelaap licac
ióndesde
lainter
fazcomounav isióndelain ter
fazde sdelaap l
icación.Abst
rae ,porunlado ,laformaen
queelusua r
ioconsultayp roveein fo
rmaciónalaap l
icac
ióny ,porotro,independizalasac ciones
delaap l
icac
ióndelasimp lemen tacionespa r
t
icu lares.Especif
icalarelaciónentreloseven tosde
lainterfaz ylasfuncional
idades dela ap l
i cación. La comunicac
ión en tre ambas pa rtes de
l
sof
twareserea lizavíallamadosap rocedimientosy med ian
tee l usodees tructurasdeda tos
descr
iptasenunn ive
ldeabs tracciónindependien tede laimplementación.

5
.6C
iclodeV
idadelaIn
ter
fazde
lUsua
rio

A
lgunosdesa
rrol
ladoresdesof
twa reposponenlaconstrucc
ióndelainte
rfazso
lamentealaetapa
deimplementac
ión, pero como se exp l
icó anter
iormente, ex
is
ten descr
ipc
iones
, deta
lles,
cons
ide
rac
ionesp resen
tesenlainter
fazqueinte
rvienenya fec
tanatodoe lp
rocesodeingen
iería
de
lsis
temayquedebense rencaradasdesdeelprinc
ipio.

77
Tantolainte
rfazde
lusuariocomolapa r
tedecómpu tossedesarrol
lanene tapasquecons
isten
deunafasedeespec i
ficación,d
iseño
,implementac
iónydeunp rocesodeeva luac
ión
. Pe
ro,la
forma en que se mani
fiestan es
tas e
tapas enlainte
rfaz d
if
iereradica
lmente conla dela
apl
icación
.

M
ientrasque lacomponentedecómpu tosrequ
ierequecadae tapadedesa rrol
loculminecorrecta
ycomp letamen teantesquecom iencelasigu
iente
,lainte
rfazdelusuarionecesi
taquelas m ismas
serea l
icenenfo rmas imul
táneayconcu rren
te,yquees ténencons tanteestadodeeva luacióny
modi
ficación.
La diferenciareside, en que en eld iseño cen
trado en el usuar
io,el usuariojuega unro l
preponde ranteentodaslase tapasdedesa rro
llo
,desdelae tapain
icia
ldondeselo mode lahasta
part
icipareneva luac
ionesdelp roducto,oensuge r
iraspectosdediseño.

E
lc ic
lodev idadela U Irequieredeunp rocesoiterativodere f
inamientossuces ivos
,dondelas
etapasseso lapan ,seade lantanyseregene ran,cons ti
tuyendoloquesedenom ina“C iclode
V
idaP rotot
ípico”,ad ife
renciasdelciclodev idatradiciona lencascada .
Ene lcic
lodev idap ro
tot
ípico,lase tapasinic
ialesdereque r
imientoyd iseñosedesa rrollanen
formaincomp letayseimp lemen tanpa rc
ialmentegene randoloquesedenom ina“prototiposdel
s
istema ”
.
Como e lprototipocom ienza mos trandolacon fección pa rcia
l delp roduc
to,selos u t
i
liza para
proveerunav isióntemp ranade lsistemayas íselopuedepone rap ruebaanticipadamen tefren
te
ausua r
ios.E s
tope rmi
ti
ráob tenerinformación másconc retasob relasneces idadesde lu suar
io,
prefe
rencias
, modos det rabajo,e rrores que come te,d if
icu
ltades que p resenta y demás
cuest
ionesobse rvab
lesquecomp letarányco r
regirán losreque rimientosydiseños in
icia
les .

A medidaquealpro
tot
iposelocorrigeyselevanag regandoenformagradua
lnuevose lemen
tos
deinterfaz
,compor
tamien
to,serv
ic
iosyhas tacomponen
tesfunciona
lesdelaapl
icación
,sevan
generandonuevasvers
ionesproto
típicasde mejo
rcal
idad.Inc
luso,enelcasodelosp ro
tot
ipos
evo
lutivos,sel
lega alavers
iónf inal de
l so
ftwa
re,conla aprobac
iónya garan
tizada delos
usuar
ios .

Todoestep rocesosedesa rrol


la med
ianteunesquema metodológicodenominado"Protot
ipación
",
quecons is
teenlagene raciónsis
temáticadeve rs
ionesprototíp
icasdelso f
tware
,quesevan
evaluando med iante la pa r
tic
ipac
ión ac t
iva de los usuar
ios y que se van me jorando
progres
ivamen te
.
E
lc ic
lodev idaculminacuandolaseva luac
ionesdelasversionesavanzadasdelp roto
tipovan
arro
jandoresu l
tadospositivos,esdecir
,quee lusua r
ioodemásro lesevaluado
res,acep tanel
d
iseñoexp resadoys imuladoene lproto
tipo.

Acontinuación,sei lus
tra e
lcic
lo dev ida p
roto
típ
ico delain
ter
faz,ten
iendo encuen
ta una
pro
tot
ipaciónevo lu
t
ivaendondelaú l
timave rs
iónproto
típ
icaconvergeals
istemadesoftwa
re
completo,totalmenteculm
inadoyap robado
.Se mues t
rancómoocu r
renlasd
iferen
tese
tapasde
desar
rolloat ravésdelt
iempo:

78
F
igu
ra5
.3:C
ic
lodev
idap
roto
típ
icodelain
ter
faz

Comose mues traene lg ráf


ico
,n ib ienseob t
ienena lgunasespecif
icac
iones
inic
ialesdeloquese
pretendedelain terfaz,consti
tuyendounae tapadereque rimientosodeaná l
isisincomp
leta,se
com ienzacone ldiseñode la misma .
Estosbosque josdepa rtespa rcia
lesdelainte rfaz,sonimp lementadosenfo rmadep rotot
ipos
parase revaluadosan tee lusua r
io,ypode rasíob tener másinformac
ióndeé lfrentea mate
ria
l
conc reto
.
Conlain fo
rmac iónob tenidadelaseva luac
iones
,secomp letayco rr
igeaún máslase tapasde
análisisydiseño .Po rel
loquesees tablecenenformas imultánea.

Unavezquesedesa r
rol
leelproto
t
ipof
ina
levolu
tivo
,dondeseincluyetodalacomponen
tede
d
iálogoylafunciona
l,ylostestsdelm
ismoarro
jenresu
ltadosposi
t
ivos,culm
ina
ríanenforma
conj
untatodas
lasetapascruc
ia
lesdedesa
rro
l
lo.

Laetapadeen t
renam
ientocomienzadesdequelasvers
ionesp roto
típ
icasin
ic
iales
,po rloqueel
usua
riocomienzaaconocer
,probar
,usarelp
roductoyfamil
iar
izarseconéldesdee lpr
incip
io.Se
puededeja
runpoco másdet iempopa raelent
renamientounavezquee lproductohayasido
term
inado.

Lase tapasdeconve rsióneinstalaciónserefie


renalapues taapun todelproductosobrelas
máquinas que se des t
inan parala u t
il
izac
ión del so
ftwa
re. En e
l caso que se me jora o se
reemp laza un producto desoftware anter
ior
, hay un p
roceso detrans
ferenc
ia, adaptac
ión de
datose info
rmaciónquecons t
ituyen laetapadeconve rs
ión.

Losautoresta
lescomoJoe
lle Cou
tazyLenBass ,comoporo t
rapar
te Deborah H
ixyJ.Hartson
,
mues
tran esquemas de
lciclo de v
ida de unainte
rfaz enforma de espi
ral y de es
tre
lla
respec
tivamente
,comosei
lust
raacon t
inuac
ión
:

F
igu
ra5
.4:C
ic
lodev
idadeunain
ter
fazenfo
rmadeesp
ira
lydees
tre
l
la

79
Ambosdiagramasexp resanlaf
ilosof
íapro
totípica
,yaqueenelcasodelaespi
ral,cadagi
rode la
m
ismaes táconsti
tuidopore ldiseño
,desarrolloyeva
luac
ióndeunave rs
iónp roto
típ
ica
. Enel
casodelaes t
rel
la, mues
traalprocesodeeva luac
ióncomoejecen
tra
l,apar
ti
rde lcualsere
finan
lasdemáse tapasdedesa rro
l
lo.

5
.7 Mé
tr
icasdeEva
luac
ióndeunaIn
ter
faz
:Pr
inc
ipiosdeN
ielsen

Unprinc
ipioser
íaunaso luciónposibleaunp roblemaded iseñoqueayudaade fin
ircómodebe
most
rarseycompo rta
rseuns is
tema ,loque me jora elemen tosdelainte
rfaz.Consegu
imosas í
quesep roporc
ionea losusua r
ioslonecesa riopa rainteractua
rexi
tosamen teyquesep resente
la
info
rmaciónde mane raquesefac ili
tesuen tend imiento.
Cuandohablamosdep rincipiosdeld iseñode inter
facesdeusua r
io,sehagene ral
izadola
ut
i
lizac
ióndeltérminoheu rísticoparare fe
ri
rsead i
rectricesqueestablecenrequ
isi
tosquedebe
cumpli
reldiseñocone lfindefac i
litarsucomp rensiónyusopo rpar
tede lusuar
iofina
l.[49]

Enestepunto,seconside rarádeterm inadosprincip


iosded iseño,desarrol
ladosenp r
ime rtérmino
porJacob N
ielsen
,respec todeld iálogoco r
rectoquedebep rovee rseenunain ter
fazdelu suar
io.
S
inemba rgo,diversosau torescomo No rman(1983) ,Heckel( 1984), Mayhew ( 1992),P reece,
Rogers y Sharp(2002) ,Tognazz ini (2003)
, Shne iderman( 2005);han p ropues
to en diversos
momentos,yconlain tencióndeda runen foqueun iversa
l,gu íasylistados dep rinc
ipiosque
of
recenrecomendac ionesdesded iferentespe rspect
ivasdeld iseñodeexpe r
ienciasdeusua rio
(comointer
faz,in
teracción,contextoota reas)
.[49 ]

Losprincip
iosdeN ie
lsenin
icia
lmentefue
ronestipuladosparain
ter
facestex
tua
les,peros
irvende
basepa raeldiseñoprel
iminardecualqu
ierot
rotipodein ter
faz
,desdela mássenc i
l
laala más
compleja.Estospr
inc
ipios
,constande10no rmas,lascualessedeta
lla
ránacontinuac
ión
:

1-D iálogosimpleyna tu
ral
:E s
tepuntoest
ipulalaformaenquelainteracc
ióndebelleva
rsea
cabo.E ldiá
logopresenteenlosprompts
,enlost í
tulos
,enlosconten
idosdelaspan ta
llas
,enla
so
lici
tud delas entradas como enla muestra delosresul
tados
. Se debe evi
tar abuso de
abreviatu
ras
,usoex ces
ivode mayúscu
las,ev
itarer
roresdet
ipeoydist
ribu
irbien
lainformac
ión
.

2 -Emplearlengua
je del usua
rio: con es
te pr
inc
ip
io,se p
rocura emplear en e
lsis
tema un
lengua
jefami
lia
ralusuar
ioynofam il
iaralprogramado
rdelsoftware
,po rlotantosepideev
i
tar
lengua
jetécn
ico
,lengua
jeextran
jero
,truncamien
todepalab
ras
,en t
reotros.

3 -Minimizare l uso dela memo r


ia del usuar
io: En este pun
to,sep retendeev
ita
rque el
usuar
io esfuercesu memo ria pa
rainterac
tuarcon elsistema.E v
itar querecur
ra acarpe
tas
manua
les pa rareco rda
ralgún cód
igo otenga querecu rr
ir a as
istenc
ia de untercero
.E s
to
impl
icaríaunf racasoparae
ldesarro
lladordelain
ter
faz.

4-Cons istencia: Laconsistenciaesunpun toclavepa raofrecercon f


iab
il
idadysegu r
idada l
s
istema. Sere fie
re a quetan to eld iá
logo,e l aspecto v
isual,el aspectote rmino
lógico , el
compo r
tam ien
tode lsis
temasep resentenanteelusua r
ioenformahomogéneaycons istente.Sin
ambigüedades .
Los usua r
ios no deberíantene r que ad iv
inarsid ife
rentes palab
ras,s i
tuaciones o ac ciones
s
igni
ficanlo mismoend is
tintoscon tex
tos,os iun mismotérminoadquie redi
ferentessignif
icados
alolargode lsistema.Todases tass i
tuacioneshacenquelain terfazseconside reinconsis
tentey
dealgunafo rmahacequee lusua r
iosedesconc ie
rteynosepaquéac t
itudtoma r.

80
5-Feedback :Elsis
temadebe r
ía man tene
ralusua r
ioin
formadodeloquees tásucediendo
, más
quenadacuandoés te manipulalosobjetosdi
rectamentesobrelapanta
l
la.Una mane radelog
rar
éstoesu t
i
lizandolatécnica l
lamadafeedback .
E
lp rovee
rfeedbacklain ter
fazdaunarespues tagrá f
icaotextualenlapan ta
llafren
teauna
accióndelusua r
io,ind
icae le fectooreacciónp roduc
idaporlaaccióndelmismo. Porloquese
debe r
íanbrindar mensajesinformativos,dar mensa
jesdecon f
irmac
ión,darinfo
rmaciónsobreel
estadodelsistema,entreo t
ros.

6-Salidaseviden
tes:Es
tep rinc
ip
ioapun taaqueelusuarioentodo momentotengaalalcance
unaopcióndesal
idadeeme rgenc
iaquees téfác
i
lmenteident
if
icab
leyacces
ible.
Es
tapos ib
il
idadquelebr
indaríaelsistemadesa l
irdelestado enqueseencuen tra
,b r
indala
sensac
ión desegur
idad a
l usuar
io, puesle pe
rmit
ir
ía de
jarcuanto an
tes a
lgunas i
tuac
ión no
deseada.

7-Mensa jesdee rror:E ven tualmente,cuandolosusua r


iosreal
izana lgunacomb inacióne r
rónea
defunc ionesp rovistaspo re lsistema,éstesue leresponde rcon mensa jesdee r
ror.
Los mensa jesdee rrorconstituyenunt ipode in teracc
iónquef luyede la máqu inaa lusua r
io.Esel
feedback de ls istema an tela p resenc ia de un e rror
.E s
tos mensa jes de e r
ro r deben ser
expresadosenunlengua jena tura
l,sucon tenidodebeind icarcuálese lp roblema ,elluga rdonde
seencuen traenfo rmap recisayc lara,ysuge r
ira lgunaso luc
iónalterna t
iva .
Aquí, hay quecons iderar que e l usuar
iol legó a un pun tocrí
t
ico de ls istema, a un pun to de
inseguridad,deince r
tidumb repo rnosabe rbienquéh izobien,quéh izo ma l,enquéa fecta
,el
errorcome tido,a losda tosydemás .
E
lp rime rcues t
ionam ientoquee ldesarrolladorde lsistemasedebehace r
,espo rquésepe rmit

quee l usuar
iol legueaesepunto . Quizásan telap resenciade mensa jesac larator
ios,buena
informac ión, más con trol
,e le r
ror se hub ie ra evi
tado . En principio, se debe ría preveni
rla
presenciadee rroresdeg ravedad .
Ahorab ien,e lsegundocues tionamientoquesedebehace resques ie l usua rioseencuen traen
esepun toc r
ít
ico,dequé me jorformaselopuedeayuda rparasalirdeé l,lo máse fic
ientemente
posible.

8-Prevenc ióndee rrores: Aveces,esp re


fer
iblequeenvezdep rovee
rbuenos mensajesde
er
ror
,seb rindeund iseño máscuidadosoquep revengaproblemaspa raquedirec
tamenteéstos
noocurran,así lapersonanoseencuen traensituac
ionesinesperadas.
Enesteprincip
io ,sees t
ipulalanecesidaddeev i
tarqueelusua r
iollegueaunainstanc
iadee r
ror
.
Comodesa rrol
lado resdels is
tema ,sedebesabe rcuálessonlaspa r
tes másc

ticasdelsof
tware
,
con mayorpos ibi
lidaddee rror
.
Gene
ralmen te,las m ismas se encuen tran enla carga de datos, enlast
ransaccione
s muy
re
levantescomoe l
iminaciones, mov
imientos
.

9 -Atajos: Aquí
,se pide que elsistema muestre aspectos de adaptac
ión
, queconside
rela
pos
ibil
idadded ia
logarconusua r
iosquepuedentene rdis
tintogradodeconoc im
iento
,formación
yexpe r
ienc
iaene lusodeaplicaciones.
Porello,lainter
faz debe
ría proveer de a
lterna
tivas de mane jo para queresul
te cómodo y
amigabletantoparausuar
iosnova toscomopa ralos muyexpe rimentados
,proveyendodees ta
manera mecanismosdeadaptación,porejemploatajoso macros
.

10-A yudas
: Lasayudassoncomponentesdeasis
tenc
ia muyimpor
tantesparae
lusuar
io,yes
to
debeserten
idoencuentaporeldesa
rro
llado
rque muchasvecesnoofreces
iempreayudas
,olas
cons
truyealal
igeras
inpresta
rdemasiadaatenc
iónalas m
ismas.

81
Ex
iste mucho aná l
isis en cómo deben se rlas ayudas de un software
, más aún porque es
generalmen
tetex to que debe se rinterpre
tadofácilmente
. Cuando un usuar
ioingresa a una
Ayuda,lo hace porque duda , desconoce, qu
iereconsulta
r, oteme porreal
izaralgunaacción
er
rónea.Tienelap resióndeen traralaA yuda,buscar
,ubicarse
,lee
r,in
terpre
tar
.
Porlotanto
,un ma ld iseñodelas m ismaspuedel lega
raen to
rpecer
,yd if
icu
lta
restep roceso
,
másqueesc la
receroas ist
ir
lorealmente
.

5
.8In
ter
faces Móv
iles

Cuandoqueremoscrea
rexper
ienc
ias móv
i
les,esdi
fíc
i
lcrea
r unagranexpe
rienc
ia,s
intene
res
tos
tres
ingred
ien
tes:e
lcontex
to,laarqu
itec
turadeinformac
iónyeldiseñovisua
l.[2
]

5
.8.1Con
tex
to

E
lcon tex toesp robablemen tee lconcep to másu t
il
izadoen móv il
.E lcontextolopodemosde finir
dedos mane ras:
● E l con texto que pe rmite entender me jor a una pe rsona, unluga r
, unacosa , unas ituac ión
mediantelaad icióndein formacióna lm ismo.Aumen talaexpe r
ienc iaye lconoc imien todelen torno
enuna mane ras igni
ficativa.
● E lcon textoqueese l modo, med iooen tornoene lquel levamosacabounata rea.Laub icac ión
actual
,con textof ís
ico,e les tadodeán imodelape rsona ,e tc. Cadaen to
rnod ic
ta rácómopuedo
accede ra la informaciónypo rlotanto,cómoob tenerva lo rde la misma .
Losd ispos it
ivos móv iles,ad i
ferenciadecua lquiero tro med io,p resentanunabuenaopo rtun idad
parac rea rexpe rienc
iascon textualesys igni
fica
tivas.
Para ello neces itamos cons iderar en nues tra apl
icac ión diferen tes contextos enlos que se
puedenencon trarlosusua r
ios:
● ¿Qu iénessonlosusua r
ios?¿Quésabemosdee l
los?¿Quét ipodecompo rtam ientopodemos
asum i
rop redecir?
● ¿Quées tápasando?¿Cuá lessonlasc i
rcun s
tanc iasenlasque me jorseabso rbeelcon ten ido
quesevaap resentar?
● ¿Cuándovanain teractuar? ¿Cuandoes tánencasayt ieneg randescan tidadesdet iempo?
¿Ene lt rabajo,dondet ienenpe r
íodosco r
tosdea tenc ión?¿Du rantelospe ríodosdeinac t
ividad ,en
laespe radeunt ren?
● ¿Dóndees tán?¿E stánenunespac iopúb l
icoounespac iop rivado?¿E stánden t
rooa fue ra?
¿E sded íaoesdenoche?
● ¿Po rquévanau ti
lizarnues traaplicación?¿Quéva lo rtend ráquegana rdesucon ten
idoode
losse rviciosensus ituac iónac tual?
● ¿Cómoes tánu ti
l
izandosusd isposit
ivos móv i
les? ¿Sesos t
ieneenla manooene lbo lsi
llo?
¿Cómoselo man t
iene?¿Ab ie
rtooce rrado?¿V ert
icaluho r
izontal?

Laintenc
iónesdef
ini
rlascircuns
tanc
ias
,olare
tór
ica
,de
laformaenquenoscomun
icamosy
entender
lasideas
.Elcontextoesloquehacea
l móv
i
lun med
iopode
roso
.

5
.8.2A
rqu
itec
turadelain
formac
ión

Laarqui
tec
turadelain
formación(tamb
iénconoc
idocomoIA),eselfundamen
todeunproducto
móv
il
. Unproduc
tobiendiseñado
,conbuendiseñovisua
lpuedefa
l
lardebidoaunaa
rqu
i
tectura
dein
formac
ióndefic
ien
te.

82
Laa rquitecturadelain fo
rmación móv ilnosólode f
inecómosuin formac iónse ráes t
ructurada,
s
inotamb ién cómola gen te va ainterac
tuar con el
la.E s
to se hace espec ia
lmen te di
fíci
lsi
tenemos encuen ta quelos dife
rentes d
ispos
it
ivostienen di
feren
tescapac idadesy modos de
interacción. Porejemplo,und isposi
tivopuedese rtáct
ilopuedeu ti
lizarelpadd irecc
ionalpa ra
navega ra laubicacióndeseada .
Además ,laa rqui
tec tu
radein formaciónhaceh incapiéencómoabo rdare lcontex to
. Eno t
ras
palabras,unabuenaa rqui
tecturadelainformac
iónmóv i
lsebasaenloscon textosdelosd iversos
usuarios.
S
im i
laracómolatecno logía móvi
ltiene muchasface tas
,tambiénlast ienelaa rqui
tecturade
informac ión,yaqueseu t
il
izaa menudocomounté rm inogeneralparadesc r
ibirvariasdiscipl
inas
únicas,inc luyendo lassigu
ientes:

● A rqu i
tectura delain fo rmación : La o rganización delos da tos dentro de un espac io
informa t
ivo. En o
t ras palab ras,cómo e l usuar
io obtend rálain formación orealizarálasta reas
dentrodeuns i
tioweboap licación.
● D iseño dein te racc ión:E ld iseño decómo e l usuario puede pa rt
ic
iparconlain fo
rmac ión
presen te
,yaseaenfo rmad irectaoind i
recta,esdec ir
,cómoe lusua r
iointerac
túacone ls
it
io web
delaap l
icac
iónpa rac rearunaexpe riencia máss ign
if
icativay lograrsusob jet
ivos.
● D iseñodelain formac ión : Laorganizacióndelain formac iónocómoe lusuar
iovaaeva luarel
s
ignificadoy ladi
recc ióndada la in
formaciónquese lep resen tó
.
● D iseñodelanavegac ión : Laspa labrasusadaspa radesc r
ib
irlosespac iosdein formación,las
et
ique tas o desencadenado resse u t
il
izan pa rainforma r alos usua rioslo que algo esy pa ra
establecerlaexpectativade loqueencon trarán.
● D iseñodelain te rfaz:E ldiseñodelospa rad
igmasv isualesuti
lizadospa racrearunaac c
ióno
com prensión.

Comose puedeve r,la arqui


tectu ra deinformacióncompone e l núcleo dela expe
riencia de
l
usua
rio.
E
lpape ldeuna rquitectode in
fo rmación móvilseríalain
terpretac
iónde lcon ten
idodeunapág ina
webdeesc ri
tor
ioalcon tex
to móvil
.¿U ti
lizala mismaes t
ructura,olassecc iones?¿Sep resen
tala
m
ismain formac
ión? ¿cómodebe ríase rprio
rizada? ¿Dequé mane rae lusuar
iosedesp lazaa
ot
rasá reas?¿U t
i
lizalos m ismospa radigmasv isualesydein te
racción,oesnecesa rioinventar
ot
rosnuevos?
Tambiéndebed iseña rlaa rqu
itecturadelain formación móvi
lpa rahace rfrentealcon
texto móvi
l.
Ten
iendoencuen taque muchosd isposit
ivospuedende tectarlaubicac iónactua
l,queesunode
lost
ipos másinmed ia tosdecon texto.

5
.8.3 E
ldiseñov
isua
l

Losusua r
iosbuscanve rvariascapturasdepan ta
lla,leerloscomen tariosdelosusua r
iosyjuzgar
e
lp roductobasadoen lacalidaddesu iconoydelascap turasdepan ta l
laan tesdecomp ra
r.
Parareal
izarunbuend iseñosedebecomenza rconp roporc
ionarla me jorexpe r
ienc
iapo s
ibley
adaptarestaexperienciapa rael mercadoque mássequ ie
re.I
terar
,a justarya f
inarhastahacer
lo
b
ien. Nosedebeve robstacul
izadopo rlaslim
itacionesdelatecno logía.F rasescomo"m ínimo
comúndenom inador"nopuedese rpa rtede
lvocabu lariodeldiseñado r.Tratardecrearundiseño
móvi
lene lcontextodelasl im i
tac
ionesde ldispos
itivonoesdondedebecomenza r,s
inoquee s
dondedebe r
íaterm inar
.
Acontinuac
iónsede tal
lanloselemen tosatenerencuen taene ldiseño móv il
:

1-Con
tex
to

83
E
l contexto esfundamen tal pa
rala expe riencia móvil
. Como d iseñador
, es sutrabajo para
asegura
rsedequee lusua r
iopuedeencon trarla maneradeabo rdarut
il
izandoelcontextodesu
apl
icac
ión.Lasrespues tasalasp reguntas mencionadasan ter
iormenteafectaráengran medida
e
lcu rsodeld iseño.Trata
raes tasp regun
ta scomounal is
tadeve r
if
icac
iónpa rae
ld iseñode
pr
incip
io afin.E l
los pueden propo rc
ionar nosó lo una graninspirac
ión paralos desaf
íos de
d
iseño,sinolajust
if
icacióndelasdec is
ionesded iseño mástarde.

2-Mensa je
Ot
roelemen toded iseñoesel mensaje
,oloquesees tát
ratandodedec irace
rcadelsit
iowebo
apl
icac
ión.E l mensajeeslaimpresióngene
ral menta
lquec readefo rmaexplíc
itaatravésdel
d
iseñovisual.
E
len foqueene ldiseñodef
ineel mensajeycreaexpecta
tivas
. Und iseñoescaso,minimal
ista
,
conun mon tóndeespacioenblancoled i
ráa
lusua r
ioqueseen foqueene lconten
ido
.Und iseño
"pesado"cone lusodeco lo
resoscurosyun montóndegráf
icosledi
ráa lusua
rioqueesperealgo
másinmersivo.

3-LookandFee l
Eslaapa r
ienc iabasadaenund iseñotangib
le,algoqueclaramen tesepuededescribi
ry mos t
rar
alos usua rios. Pa ra estab
lecer un aspec
to podemos basa rnos en"pa t
rones de diseño
",o
solucionesdocumen tadasap rob
lemasded iseño,avecesconoc idoscomogu íasdeestilo
.Enlos
grandesp royec tosdete le
fonía móvi
loenemp resasconvariosdiseñadores
,unagu íadee st
i
loo
patrones de d iseño esfundamen tal pa
ra mantenerla consis
tencia en e
llook andfee l yla
reducciónde laneces idaddejusti
fica
rcadadec is
ióndediseño.

4-Layou t
E
llayoutesune lementoimpo rtanteene ldiseño ,po rqueeslafo rmav isualenlaquee lusua rio
vaap rocesarlapág ina.
En eldiseño de l móv i
l,ele lemen to de con tenido princ
ipal con el que hacerfrente esla
navegación.Sisees tádiseñandouns i
tiooap licación,esnecesa r
iop roporc
ionaralosu suarios
métodospa rarealiza
rlasta reas,navega rao traspág inasolee rein te
ractuarcone lcontenido .
Es
topuedeva r
iar,dependiendode losdisposi
tivosquesopo rtan.
Ot
racons iderac
iónde llayoutescomosud iseñoesca laa med idaquecamb ialaorien
taciónde l
d
isposit
ivo, pore jemplo,sie ld isposi
tivo se g i
ra de modo ve rt
ical a hor
izonta
lyv iceve rsa.
Normalmen te
,sedesc ribecomof ijo(unnúme rode terminadodep íxelesdeancho )ofluido(que
t
ienela capac idad de esca lara ltamaño comp leto dela pan tal
laindepend ien
temente dela
or
ientac
iónde ldisposit
ivo)
.

5-Co lo r
E
lobs táculo máscomúnqueencon t
ramosencuan toalcolo reslapan talladelos móvi
le s,que
v
ienenconunnúme rod iferentedeco loresop ro
fundidaddeb i
ts,esdec ir
,elnúme rodeb i
ts
(dígi
tosb inar
ios)queseu t
i
lizanpararep re sentarelcolordeunso lop íxelenunaimagende
mapadeb its
. Cuandolosd iseñoscomp lejosse mues t
ranend i
ferentesd ispos
it
ivos móviles
,la
profundidad de l co
lorl imitada en un dispo si
tivo puede p roduci
r bandas o pos ter
ización no
deseadoen laimagen.
Ot
racons iderac
iónatene rencuen taconrespec toalcoloresquelaspersonasrespondenalos
coloresde mane radife rente.E sbastanteconoc idoqued iferen
tesco loresp roducendiferen
tes
emoc iones enlas pe rsonas . Pensando enlas emoc iones que p rovocanlos co lo
res enlas
personas es un aspec toimpo r
tante en eldiseño de móv iles, que es un med iotan personal
.
Además ,sedebetene rencuen taqued iferentesco lo
respuedentene rsignif
icadosdist
intosen
84
d
iferentesculturas.Enalgunoscasos,elcolorqueseu ti
lizapuedetenersign
if
icadosopue stosen
d
iferentes culturas.E s
to es algo a cons
iderar cuando se piensa enlaimp lementac
ión de
ap
licaciones móv i
lesenlospa ísescone l mayornúme roded isposi
t
ivos móvi
les,como Ch inao
India
.
Lade f
inic
ióndepa le
tasdecolorespuedese rút
ilpara mantenerunusocons tantedelcolorenel
d
iseño móv i
l.Pa letasdeco
loressuelenconsist
irenunnúme rop rede
fin
idodecolo resauti
l
izaren
todoeld iseño.

6-T ipog raf


ía
A
lpa rece r,existendosen foquesbás icosdecómoe ltiposerep resen taenlaspan ta l
lasdelos
móviles :el uso desubp íxeles basadosen pan tallas ocon una dens idadde p íxe
les mayo ro
píxelespo rpulgada(pp i)
.Unsubp ixeles ladiv
isióndecadap íxelenunco lorrojo,ve rdeyazu l(o
RGB )laun idadaunn ivelm icroscópico ,loquepe rm i
teun mayo rn iveldesuav izadodel íneas
paracadaca rác terdelafuen te.Laad icióndees tossubp íxeles RGBpe rm i
tea lojove r mayores
variacionesdeg ris,creacióndean t
ialiasingytexton ít
ido.
E
lsegundoen foquecons isteenu t
il
iza runag randens idaddep íxelesop íxelespo rpu lgada.A
menudo nosre ferimos alas pan ta
llas,yasea po rsus d imensionesf ísicas(Pan tallade 15 ,4
pulgadas ) osus d imens iones en p íxeles oreso lución(Reso lución de 1440x900 p íxeles)
. La
dens idaddep íxe lessede terminad ividiendo laanchu rade láreadev isualizaciónenp íxe lespor la
anchu rade lazonadev isualizaciónenpu lgadas.
Afortunadamen te ,losd ispositivos móv ilesdehoyend íatienena lgunasopc iones másqueun
solot ipodele tra,pe rolasopc ionessonaúnbas tantelim i
tadas.E senc ialmen te,tienena lgunas
variacionesdefuen tesse r
if
,sans- se r
ify monospace ,ydepend iendodelap lataforma ,ta lvez
a
lgunasfuen tespe rsonal
izadas .
E
lpape l másimpo rtan
tedelat ipog rafíaene ld iseñode l móv ilesp ropo rciona ralusua r
iouna
legib i
lidadex celente,olacapa cidaddesegu irconc lar
idadlasl íneasdetex tocone lo joyno
deso rientarse.E stosepuedehace rsigu iendoestasse issimp lesreg las:

● Usa r unt ipo dele t


ra dea ltocon t
raste: Recordarquelos d ispos i
tivos móvi
lesse u t
i
lizan
gene ralmentefue ra.T eneruntipodele tradea l
tocon t
rasteenre lacióncone lfondoaumen tarála
v
isibil
idady la legib i
lidad.
● U til
izare ltipodele tracorrecto:E lt
ipodele traqueu t
il
izaled icea lusua r
ioquéespe rar
.Po r
e
jemp lo,unt ipodele t
rasans- seri
fescomúnenlanavegac iónoená reascompac tas,m ient
ras
que lostiposde letrase r
ifson muyú ti
lpa ra
lasá reasdecon ten
idode largadu raciónoden sas
.
● P ropo rciona r un espac iado del ínea adecuado : Aumen tare l espacio para evi
tar quelo s
usua r
iossep ierdan .
● De ja runespac ioalade rechayalaizqu ierdadecadal ínea,nol lena rlapan talla:porlo
gene ralent
ret resycua t
rocaracteresdeancho .
● T ítulos:Usa rt ítulosparaindicaralusua r
ioloquees táporven ir
.U ti
lizandod i
ferentestiposde
let
ra ,coloryén fasisenlost í
tulosayudanac rearpáginasde lectura.
● U til
izarpá r
ra fosco rtos
: man tenerlospárrafoscortos,conno másdedosot resf rasespo r
párrafo.

7-G rá
ficos
Laforma máscomúndelosg ráf
icosu t
il
izadosene ldiseño móvi
lsonlosiconos.Laiconog ra
fía
esúti
lparacomun icarideasyacc ionesa losusua r
iosenunespac iovisua
lrestr
ing
ido.
Fotoseimágenesseu ti
l
izanpa raag regarsign
if
icadoaloscon ten
idos,a menudo mos
trandouna
representaciónvisualdeunconcep toopa raag rega
rs igni
f
icadoaund iseño.Lauti
lizac
iónde
fotoseimágenesnoestancomúnene ldiseño móv i
l,debidoaquelasimágenest ienenuna
a
lturayunaanchu radef
inidasytienenquehace rseaesca laaltamañodeldispos
it
ivoade cuado.
E
lusodeg ráf
icospa raañadirsigni
ficadoaund iseñopuedese rút
i
l,peropuedeencontrarsecon

85
p
rob
lemasconrespec
toalaformaenquelaimagense mos t
raráenunain
ter
fazdeu
sua
rio
f
lex
ib
le,po
rejemp
lo,cuando
lao
rien
tac
iónde
ldispos
i
tivocamb
ia.

8-Mult
ipl
icidaddedispos
it
ivos móv
iles
D
ispos
it
ivoscond is
t
intotamañodedisplay
,cond
ife
ren
tesob
jetosdein
teracc
iónadm
is
iblesy
modosdeinte
racc
ión.

5
.9D
iseñodeap
licac
ionesAnd
roid

Unadelascosas másimpo rtantesene ldesa r


rol
lodeAnd roidess indudae ldiseñodelain terfa
z
quea t
rae ráa lusuar
ioausa r laap l
icación.S ibien,lafunc ionalidadnode jadeserimpo r
tan te,ene l
mundo móv i
lseobse rvae lpa tróncons tantedequelosusua riosnosó lobuscanquelaap licación
hagalo quetenga que hace rs ino que ademáslas pan tallas conlas quein teractúan sean
l
lama tivas,bon i
tasyusab les .
Paralosd iseñadores
,And roidese lreferenteatoma rencuen tacuandosehab laded iseñode
apl
icaciones . Nosepuedeigno rarqueAnd roidtieneac tualmen tela mayo rpartedelacuo tade
mercadode lossma rtphonesyquesuusosees táex tend iendohac iatodotipoded ispos i
t
ivos
e
lec t
rónicos. En pocot iempo ,la p lataforma And roid de Goog le hac rec
idoráp idamen te ylas
d
istin
tas ma rcaslohanempezadoano tar
.
S
inemba rgo ,los múl
tiplesd isposit
ivosconAnd ro
idquepodemosencon trarene l mercadohacen
senti
rquee ldiseñopa raes tap lataformaesunacues t
iónd if
íci
ldedom inar
.
Afor
tunadamen te,Androides tácomenzandoaabo rdarlosp rob lemasdetene rvar
iosd ispos i
t
ivosy
tamañosdepan ta
llaylosfa br
ican tesded isposit
ivoses tánadop tandolentamenteloses tánda res
queeven tua lmentereduc i
rá lacomp lej
idadene ltemaded iseño .
Acon t
inuac iónseabo rdaránd iferen tescues t
ionesquesedebetene rencuen taa l momen tode
d
iseña rlainterfazdeusua r
iode lasap licaciones.

5
.9.1Sopo
rta
r mú
lt
iplespan
tal
las

Androidsee jecu taenunava riedadded isposit


ivosqueo frecend i
ferentestamañosdepan tal
lay
densidades.Pa ralasap licac
iones ,elsis temaAnd ro
idofreceunen tornodedesa r rol
locons istente
en mú l
tip
lesd ispositivosyla mayo rpa rtede ltrabajoespa raajustarlainterfazdeusua riodecada
apl
icaciónalapan tallaen laquese mues t
ra.Alm ismotiempo ,And ro
idp roporcionaunaAP Iquele
permitecon trolarlain ter
fazdeusua r
iodelaap l
icac
iónpa ratamañosdepan tal
laydens idades
específ
icos,af indeop t
imizareld iseñodelain te
rfazdeusua riopa raconfiguracionesdepan ta
lla
d
iferentes.Po re jemp lo ,espos iblequesedeseeunain terfazdeusua riopa ralastab le ta squees
d
iferentede la interfazdeusua r
iopa ra losteléfonos.
Sedebeop timiza rlaap l
icaciónpa rad i
fe rentestamañosdepan ta
llaydens idades ,dees te modo ,
se max imizalaexpe r
ienciade lusua riopa ratodoslosd isposit
ivosylosusua riosc reenquesu
apl
icaciónfued iseñadaenrea lidadpa rasud ispos
it
ivo,enluga rdes imp lemen tees t
ira rsepa ra
adaptarsea lapan tal
ladesusd isposi
tivos .
Android pe rmite c rea r una ap licac
ión que se mues tra adecuadamen te y p ropo rciona una
experienc
ia de usua rio opt
imizada entodaslascon f
iguraciones de pan ta l
la,u t
ilizando unso lo
arch
ivoapk .[50 ]


rminosyconcep
tos

86
Tamañodelapan tal
la:Tamañofís
icoreal
, med
idadelad iagona
ldelapanta
l
la.Paras
imp
l
if
ica
r,
Andro
id c
las
if
icalas pan
tal
las en cua
trotamaños gene
rales
: pequeño(sma
ll
), no
rma
l,g
rande
(
large)yext
ragrande(ex
trala
rge)
.

Densidad dela pan tal


la: Lacan tidaddep íxe
lesenuná reafís
icadelapan ta
lla
,normalmente
conocidacomodp i(puntospo rpulgada )
.Po rejemplo
,unadens idad"baja"depan ta
l
lat
iene menos
píxe
lesden trodeuná reafísicade te
rminada ,encompa rac
iónconladens idaddeunapan talla
"normal"o"a l
ta"
.
Parasimpli
ficar
,Androidc las
if
icalasdensidadesdepan ta
llaencua trodensidadesgenera
les:baja
(LDP I
), media(MDPI),alta(HDP I
)yex traalta(XHDPI).
Esto esimpo rtan
te porque hay querea l
izartodoslosrecu rsos gráf
icos paralas d
ife
rentes
densidades. Porlo menos , hay querealizar unconjunto derecu rsos pa
ra MDP Iy HDPI para
cualqu
ierap l
icac
iónAnd roid.

Or
ientación
: Laorien
tac
ióndelapan ta
lladesdeelpuntodev is
tadelusua r
io.Estaesho r
izonta
lo
ver
tica
l,lo que sign
if
ica quela re lación de aspecto dela pan ta
lla es de ancho o a l
to,
respect
ivamente
. Hay quetener en cuen ta que no só
lolos di
ferentes d
ispos
itivos operan en
d
iferen
tesor
ientacionespordefecto
,s inoquetamb iénpuedecamb iarlaorien
taciónent iempode
e
jecucióncuandoelusuar
iogi
rae ldisposit
ivo
.

Reso
lución:Elnúme roto
taldepíxe
lesf
ísicossobreunapanta
lla
.Alañad
irsopo
rtepa
ra mú
lt
iples
pan
tal
lasalrea
lizarlasap
licac
ionesnoset raba
jadirec
tamen
teconlareso
luc
ión
,sinosó
locone l
tamañodepantallayladensidad
,segúnloespecif
icadoan
ter
iormen
te.

Píxelesindepend ientedeladens idad(dp ):E s


taesunaun idaddep ixelvir
tua
lqueseu t
il
izaen
ladefinicióndeund iseñode inter
fazdeusua r
iocone lfindeexp resarlasd imens
ionesde ldiseñoo
la pos ición de una mane raindepend iente dela dens idad. Los píxelesindepend ientes dela
densidadequ ivaleaunp íxe lfís
icoenunapan tal
lade160 DP I
,queesladens idaddere ferencia
asum ida po re lsis
temacomola dens idad“med ia” dela pan ta
lla
. Ent iempo de ejecución,e l
s
istema mane jade mane rat ransparentecua lqu
ieramp liacióndelasun idadesde DPsegúnsea
necesa rio,enbasealadens idadrealdelapan tallaquesees téu t
i
lizando .Laconve rsióndelas
unidadesde DPalosp íxelesdelapan ta
llae ssimple:losp íxe
les= DP*(DP I/160 )
.Po rejemp lo,
enunapan ta
llade240DP I
,unDPes iguala1 ,5píxelesfís
icos.Sedebeu ti
l
izars
iemp reDPcomo
unidad pa ra defin
irlos diseños delain ter
faz de usua r
io para asegu rarse de quese mos trará
correctamen teenpan ta
llascond i
ferentesdens idades.

Tamañosdepan
tal
lassopo
rtadas

Lal
íneadet iempodelaspan tal
lassopo rtadasenlosdisposi
tivosAndroidcom ienzapo relT-Mob
ile
G1,elp rimerd isposi
tivo Android disponib
le en e
l me rcado quetiene una pan tal
la HVGA de
320x480p íxeles
.
HVGA s igni
fica VGA de med iotamaño que es e ltamaño de pan ta
lla estándar paralo s
sma r
tphonesdehoyend ía.El iPhone3Gs ,3Gy2Gu t
i
lizanla mismacon f
iguración.
320x480secons iderauntamaño“no rmal”depanta
llaenAnd roid
. Cuandohab lemosdetamaño
“ex
trag rande ”sepiensaenlaspan tal
lasdelastablets
.S inemba rgo,hayquetoma rencuen taque
lossma r
tphones más popu la resde hoy en díatienen WVGA(es dec ir
, un VGA más g rande)
800x480p íxelesHDdepan talla.Porlotan to
,loquees“no rma l
”estácamb iandoráp idamente.Por
ahora,vamos atoma rcomore fe
rente quela mayo r
ía delossma rtphonescon And ro
idtienen
panta
llasgrandes.

87
Ba
jaDensidad(120
), MedianaDensidad A
ltaDensidad Dens
idadE x
traA
lta
ldp
i (160
), mdp
i (240)
,hdpi (xhdp
i)
PantalaPequeña QVGA(240x320
l ) 480x640
WQVGA400 HVGA(320x480 ) WVGA(480x800) 640x960
Pantal
laNo rmal (240x400
) WVGA854 (480x854
)
WQVGA(240x432) 600x1024
WVGA800(480x800
) WVGA800(480x800)
Pantal
la Grande WVGA854(400x854
) WVGA854(480x854)
600x1024
1024x600 WXGA(1280x800 ) 1536x1 152 2048x1563
Pantal
laE x
tra
1024x768 1920x1152 2560x1536
Grande
1280x768 1920x1200 2560x1600

T
abla5
.1:Latab
la mues
tralasd
i
feren
tescon
figu
rac
ionesdepan
tal
lad
ispon
ib
lesene
lemu
lado
r
delAnd
roidSDK.[50
]

Lavariedaddetamañosdepan ta
llapuedeserunretoparalosdiseñadoresqueestánt
ratandode
crea
runtamañoún icopa ratodoslosdiseño
sdelayout
.Pa raresolveresto
,sehaencontradoque
e
l mejorenfoqueconsis
teend iseñarunconjun
todelayoutspara320x533p íxe
lesf
ís
icosyluego
int
roducird
iseñospersonal
izadosparalosot
rostamañosdepan ta
lla.

Cadatamañoydens idadgeneral abarcaunagamadetamañosdepan ta


llaydens idade srea
les.
Androidhacequelasd i
ferenc
iasquepuedeex ist
irent
relosdisposi
t
ivosden trodeuna m isma
categoría,sean abs trac
tas alas ap
licac
iones, po
rlo quese puede propo
rcionarlain ter
faz de
usuariod iseñadaparalostamañosydens idadesgenera
lesydejarqueelsistemaseenca rguede
losa justesfina
lesqueseannecesa rios.Lasigu
ientef
igura5
.5ilus
tracómod iferentestamañosy
densidadessec las
i
ficaneng ruposdetamañosydens idadesd
iferen
tes.

F
igu
ra5
.5:T
amañosyDens
idades

A medidaquesed iseñalainte
rfazdeusua riopa
radife
rentestamañosdepan ta
l
la,sepuedever
quecadad iseñorequie
reunacan tidad m
ínimadeespacio.A s
í,cadatamañogeneraldepanta
l
la
t
ieneunareso luc
ión mínimaasociadaquee s
tádef
in
idopo rels is
tema.Estetamaño mín
imose
encuentraenunidad DP
.E s
taun idadeslaquesedebeu t
i
lizarenlade f
in
ic
ióndeldiseño
,yaque
permi
tedespreocuparseporloscamb iosenladens
idaddelapan tal
la.

● Pan
tal
lasext
rag randedebenserdeporlo menos960dpx720dp
● Pan
tal
lasgrandesdebenserdeporlo menos640dpx480dp
● Pan
tal
lasnormalesdeberserdepor
lo menos470dpx320dp
● Pan
tal
laspequeñasdeberserdeporlo menos426dpx320dp

Paraopt
imizarlainte
rfazdeusua riodelaaplicac
iónparalosdi
feren
testamañosdepantal
lay
dens
idades, se puede propo
rciona
rrecursos a
lte
rna
tivos pa
ra cua
lqu
iera delostamaños y
88
densidadesgene rales. Porlogene ral
,sedebep roporc
ionardiseñosalterna
t
ivospa radi
ferentes
tamañosd epanta
llaeimágenesa lternat
ivaspa rad i
ferentesdensidadesdepan tal
la.Entiempode
e
jecuc ión
,elsistemau t
i
lizalosrecu rsosade cuadospa ralaapl
icación,enfunciónde ltamañoola
densidadgeneralde lapantalladeldisposi
tivoac tual.
Noesnecesar iop roporcionarrecursosa l
terna t
ivospa racadacomb inacióndetamañoydens idad
delapan ta
lla
.E lsistemap ropo rc
ionasó l
idasfunc ionesdecompa t
ibi
l
idadquepuedenrende rizarla
apl
icación encualqu ier pantal
la ded isposi
tivo,siemp re quesehaimp lemen tadolainterfaz de
usuariout
il
izandobuenasp ráct
icasded iseño .

Independenc
iadeladens
idad

Laap l
icaciónlog rala" independenc iadeladens idad "cuandoseconse rvaeltamañofís
ico(desde
e
lpun todev is tade lusua r
io )delose lementosdelain terfazdeusua r
iocuandose muestraenlas
panta
llascond iferentesdens idades.
Mantenerlaindependenc iadedens idadesimpo r
tan teporque,sinel
la,unelementodeinter
fazde
usuar
io(po re jemp lounbo tón)apa recefís
icamen te másg randeenunapan tal
ladebajadens idad
y menorenunapan talladea ltadens idad.Estoscamb iosrelac
ionadosconladensidaddetamaño
puedencausa rp roblemasded iseñoyusab i
l
idaden laapl
icación.Lassigu
ientef
igu
ras muest
ranla
d
iferenciaentreunaap l
icacióncuandonop roporcionaindependenciadeladensidadycuandolo
hace,respectivamen te.

F
igu
ra5
.6:E
jemp
lodeap
l
icaciónsine
lsopor
tededi
ferentesdensidades
,comose mues
traen
panta
l
lasdebaja
, med
iayaltadensidad.

F
igu
ra5
.7:E
jemp
lodeapli
caciónconunbuensopor
teparad
ife
ren
tesdens
idadescomose
mues
traenlaspanta
l
lasdeba
ja, med
iayal
tadens
idad

And
roidayudaalaapl
icaciónalog
rarlaindependenciadedens
idaddedos mane
ras
:
● Elsis
temaesca
ladpun idades
,segúnco rrespondapara
ladensidadac
tua
ldelapan
tal
la.
● Elsis
temaesca
lalosrecursosdibu
jablesaltamañoadecuado
,basadoenladens
idadactua
lde
lapanta
lla
,siesnecesa
rio.

Enla mayor
íadeloscasos ,puedegarant
izarlaindependenc
iadeladensidaddelaaplicación
,
s
implementeespeci
ficandotodoslosva
loresdeladimensióndediseñoenladensidaddep íxe
les
independ
ientes(dp un
idades) ocon"wrap_ con
ten
t",segúncor
responda
. Entonces
,els istema
89
escalael mapadebitsdibu
jab
lecone lf
inde mos tra
reneltamañoadecuado
,basadoene lfacto
r
deescalaap rop
iadoparaladens
idadde lapanta
llaactua
l.
S
inemba rgo
,laescalade mapadeb itspuededa rluga
ra mapasdebitsbor
rososopixe
lados,lo
quesepuedeno tarenlasimágenesan ter
iores
. Paraevi
tares
to,sedebeproporc
iona
rrecurso s
a
lternat
ivosde mapadeb i
tsparadi
ferentesdens
idades.

Cómosopo
rta
r mú
lt
iplespan
tal
las

La base de apoyo de Andro


id pa
ra mú
lt
iples pan
tal
las es su capac
idad pa
ra ges
t
ionare
l
render
izadodelayouteimágenes delaaplicac
iónde manera ap
ropiada alacon
figu
rac
iónde
pan
tal
laactua
l.Sinembargo,tamb
iénesnecesar
iorea
liza
r:

● Dec lara
r explíc
itamen
te en el man if
ies tolos tamaños de pan ta
lla conlos quela
apl
icac iónescompa t
ible
:Aldecla
rarlostamañosdepan tal
laquelaapl
icaciónsopor
ta,sepuede
asegurarquesó lolosd
isposi
t
ivosconpan tallassopo
rtadaspuededescargarlaapl
icación
. Pa
ra
dec
lararlostamaños de pan ta
l
la compa t
ibles conla ap
licac
ión
, se debeinclu
irele lemen
to
<supports-sc
reens>enelarch
ivode mani
fiesto.

● P ropo rciona r di ferentes d iseños pa ra diferentes tamaños de pan talla: De forma


predeterminada ,And roidcamb iaeltamañode ldiseñodelaap l
icac iónpa raadap tarsealapan ta
l
la
deldisposit
ivoac tua
l.Enla mayo r
íadelosca sos,estofuncionab ien.Eno t
roscasos ,lainter
fazde
usuario puede noluc irtan bieny puedese r que necesite a
jus tes para diferen testamaños de
pantal
la. Pore jemp lo,enunapan ta
l
la másg rande,espos ib
lequedeseea jus tarlapos iciónye l
tamañodea lgunose lementospa raap rovecha re lespacioad i
cionaldepan talla,oenunapan ta
lla
máspequeña ,puedequetengaquea jus tareltamañopa raquetodoen treen lapan talla
.
Los cal
ificado res de con f
iguración que se puede u t
i
lizar para p roporc
iona re ltamaño delo s
recursosespec íf
icossonsma l
l,no rma l,largeyx large.
DesdeAnd roid3 .2(niveldelaAP I13 ),losg ruposdeca lif
icadores menc ionadoses tánendesusoy
ensuluga rsedebeu til
iza
rcomoca lificado rsw<N>dppa rade f
inire lancho m ínimoreque r
idopo r
losrecu rsosd isponibles.Pore jemplo,s ie ldiseñodeunatab letarequ ierepo rlo menos600dpde l
anchode lapan talla
,sedebeco locaren layout-sw600dp .

● P roporc ionard i
fe rentes mapasdeb i
tsparadens idadesdepan talladife
rentes: Defo rma
predeterminada , And ro
id escalalos mapas de b its(archivos.png,. jpg y.gif)y N ine-Pa
tch
(archivos.9 .png)pa raqueserende r
icenene ltamañof ísicoap ropiadoacadad isposi
tivo
. Por
e
jemp lo,s ila apl
icac ión proporc
iona mapa de bitssólo pa ralal ínea de base,la densidadde
pantal
la med ia(MDP I)
, entonces elsistemalos escala hac ia ar
riba para una pantal
la de alta
densidad,ylosesca lahaciaaba jo,cuandoesunapan tal
ladeba jadens idad
.E staescalapuede
causa rdefectos.Pa raasegu rarsedequelos mapadeb itsseveanlo me jorposib
le,sedebeinc luir
vers
iones a lterna
tivas en d i
ferentesresoluc
iones para diferentes densidades de pan ta
lla. Los
cal
if
icadoresdecon figurac
iónquesepuedeu t
i
lizarparade terminadasdens idadsonldp i(bajo),
mdpi(med io),hdpi(alto)
,yxhdp i(muya lta)
.

Entiempodeejecuc
ión
,els
istemagaran
tizaunav
isua
l
izac
iónóp
t
imaenlapan
tal
lapa
racua
lqu
ier
recursodadoconels
igu
ien
teproced
imiento
:

1)Elsistemautil
izaelrecu rsoalternativoadecuado.
Basándoseene ltamañoyladens idaddelapan tal
laactual
,elsistemaut i
lizacualquierre cu
rsode
tamañoydens idadespec í
ficap roporc
ionadaenlaap licac
ión. Porejemplo,sield isposi
tivotiene
unapan ta
l
ladea ltadensidadylaap l
icaciónrequ
iereunrecursod ibu
jable,elsistemabuscaun
d
irecto
rio de recursos d
ibu jab
le que me jor se adapte ala con figurac
ión de ld isposi
tivo.
90
Depend
iendodelosrecursosal
terna
t
ivosdispon
ib
les
,und i
rec
torioderecursosconelca
l
if
icador
hdp
i(drawab
le-hdp
i/)podríase
rla mejo
ropción
,porloqueelsistemau
ti
lizaelrecu
rsod
ibujab
le
deested
irec
tor
io.

2)S i no hayrecu rsos disponib les que se co rresponda ,els istema uti
liza elrecurso por
defecto ylosesca la hac ia a
rriba oaba jo segúnsea necesa r
io para que co inc
ida cone l
tamañoyladens idaddelapan tallaac tual
.
E
l "de fau l
t" de losrecu rsos son aque l
los que no es tán e
tiquetados con un ca l
if
icado
r de
conf
igu ración.Pore jemplo,losrecu rsosend rawable/son losrecursospredeterminadosquepuede
d
ibujar.E lsistemaasumequelosrecu rsospredeterminadosestánd iseñadospa raeltamañodela
panta
llaydens idadbase ,queesuntamañodepan ta
llano rma
lyunadens idad media.Comotal,el
s
istemaesca lahaciaa r
ribalosrecu rsospo rdefectopa rapantal
lasdea ltadensidadyha c
iaabajo
parapan tal
lasdeba jadens idad
,segúnco r
responda .
S
in emba rgo,cuando els istema es tá en busca de unrecu rso de densidad específ
icay nola
encuen tra en eld irec
tor
io dela dens idad espec í
fica, no s
iemp re se u t
il
izanlosrecu rsos
predeterm inados.Els istema pod rá op ta
rpo r unrecu rsodelaso t
ras densidadescone lf
in de
proporciona r me
joresresultadoscuandosee scala.

Usodelosca
li
ficado
resdecon
figu
rac
ión

Androidsopo r
tava r
ioscal
if
icadoresdecon figuraciónquepe rmitencontrolarlafo
rmaenquee l
s
istema se lecc
ionalosrecu rsos a
lte
rnat
ivos basados enlas ca racter
íst
icas dela pantal
la de
l
d
ispos i
tivo ac
tual
. Un cal
if
icador de con
figuración es una cadena que se puede añad i
r a un
d
irectorioderecursosenelproyectoAndroidyespec i
f
icalaconfigurac
iónpa raquelosrecursosen
e
linteriorsehand iseñado
.

Paraut
i
liza
runca
li
f
icado
rdecon
figuración
:
1)Crea
runnuevodi
rec
tor
ioene
ldirector
iore
s/de
lproyec
toconnomb
recone
lfo
rma
to:

<
resou
rces_name>-<qua
l
if
ier>

<resources_name>ese lnombredelrecursoestánda
r(drawab
leolayou t
).
<qual
if
ier>esunca li
f
icativodeconfigu
racióncomopo rejsmall
,no rma
l,ldp
i,land,e
tc. Sedebe
especi
ficarlaconf
igurac
ión de pan
tal
lapa rala que es
tosrecursossevana u t
il
iza
r. Se puede
ut
il
izar másdeun<qua l
if
ier>alavez,simplementeseparandocadaclas
i
ficac
iónconungu ión
.

2
)Guarda
rlacon f
igurac
iónadecuadadelo
srecursosespecí
f
icosenestenuevodi
rec
torio
.Lo s
a
rch
ivos de recursos se debe l
lama
r exac
tamente igua
l que los a
rch
ivos de recu
rsos
p
rede
term
inados.

Imág
enesa
lte
rna
tivas

Casitodaslasap licacionesdebentene rrecu rsosa lte


rnat
ivospa ralasd i
ferentesdens idadesde
pantal
la,yaquecas itodaslasaplicac
ionestieneuniconodeap licac
iónye liconoset ienequeve r
b
ienentodaslasdens idadesdelapan ta
lla
.De lm ismo modo ,siseincluyenotrasimágenesenla
apl
icación(po re jemplo, paralosiconos de menú u o t
ros gráf
icos dela ap licac
ión), debe
proporcionarvers
ionesa l
ternat
ivaspa radi
ferentesdens idades.
Parac rearalte
rnativasdeimágenespa rad i
fe rentesdens idades,sedebesegu irlare lac
iónde
escala3 :4
:6:8entrelascua t
rodens idadesgene ra
les.Po rejemplo,sisetieneunaimagenquees
de48x48p íxe
lespa ralapantal
ladedens idad med iatodos losdife
rentestamañosdebense r
:

91
● 36x36pa
rabajadens idad
● 48x48pa
radensidad media
● 72x72pa
raa
ltadens idad
● 96x96pa
ra muyaltadensidad

Fugu
ra5
.8:T
amañosre
lat
ivosdeimágenesquesopo
rtancadadens
idad
.

BuenasP
rác
ticas

E
l ob jet
ivo de sopo rtar mú
lt
ip
les panta
l
la s es crear una aplicac
ión que pueda func iona
r
cor
rectamen teyseveab ienencua
lqu
ierade lasconf
igurac
ionesdepan tal
lagene ra
lessopor
tadas
por Android
.E stasecc iónseva a p
roporcionaralgunosconsejosy unav isión genera
l delas
técn
icasqueayudanaasegu ra
rquelasaplicac
ionesescalancorrectamen
tepa raconf
igurac
iones
depan ta
lladiferentes.
Heaqu íunal istarápidadecómosepuedeasegu rarquelaaplicaciónse muestrecor
rectamente
enpan ta
llasdiferentes:

1)U t
ilizarw rap_con tent
,f i
ll_pa
rent o un
idades dp al especif
icarlas d imens iones en un
arch
ivolayou tXML .
A
lde f
in i
re l android
:layout_wid
thy android
:
layout_heigh
tu t
i
lizando wrap_contentyf i
l
l_parento
DPga rant
izaquea lavistase ledauntamañoapropiadoenlapan ta
llade ld
isposi
tivoactua
l.
Porejemp lo
,unav istaconunlayou t_w
idth="100dp "mide100p ixelsdeanchoenlapan ta
llade
dens
idad med iayesca lahas ta150pixe
lesdeanchoenlapan ta
lladea ltadensidad,de modoque
lavistaocupaap rox
imadamen teelmismoespaciofís
icoenlapan tal
la. De
lm ismomodo ,sedebe
pre
fer
irsp(p íxe
les independientedeesca
la)paradefin
irtamañosdetex to.

2)Nou t
il
izarvaloresenpíxe
lesene lcódigodelaapl
icación
.
Por mo
tivos derendim
ien
toy man tenerelcód
igo máss imp
le, Andro
id u
ti
l
iza p
íxe
lescomola
un
idades tánda
rpa raexp
resarlosvaloresded
imensionesocoo rdenada
.E stos
ign
if
icaquelas
d
imensionesdeunav is
taseexpresansiempreenelcód
igousandop íxe
les
,pe ros
iempresob
rela
basedeladensidadactua
ldelapantal
la.

3
)Nou
ti
liza
rAbso
luteLayou
t(esobso
leto
)

4
)Sum
inis
tra
r mapasdeb
itsa
lte
rna
tivospa
radens
idadesdepan
tal
lad
ife
ren
tes

5
.9.2P
rinc
ipiosdeD
iseño

92
Acontinuac
iónsevaade ta
l
larpr
inc
ipiosded
iseñosquefue
rondesa
rro
l
ladospa
ra man
tene
rla
expe
rienciadelosusua
riosdeAndro
id.

1
.At
rae
ralusua
rio

1.1Sorprende
ralusuario
:Unasupe r
fic
iehermosa
,unaanimac
ióncu
idadosamen
teco locada
,o
unefec
todesonido muyoportunoesunaexper
ienc
iap
lacen
tera
.Efec
tossut
i
lescont
ribuyenauna
sensac
ióndefal
tadeesfuerzo.

1.2U ti
liza
robje
tosrealesenlugardebo
tonesy menúes:Perm
it
irquelagente man
ipu
le
d
i rectamenteob
jetosensuapl
icac
ión
.Sereducee
lesfue
rzocogn
it
ivonecesa
riopararea
l
iza
runa
ta rea.

1.3Permiti
ralusuar
iorea
lizarsusp ropiasconfigurac
iones
:Al agente
leencantaañadi
r
toquespersona
les
,yaquelesayudaasen t
irsecomoencasaytene re
lcontrol
.Nosolohayque
propo
rcionarpa
rámet
rospo
rde fec
to,sinotambiéntenerencuentape
rsona
lizac
ionesopc
ionalesy
d
ivert
idasquenoseancont
rariasalastareasprimar
ias.

1.4Recorda
rp referenciasdelusuar
io:Conoce rlaspreferenc
iasde
losusuar
iosconelt
iempo.
Enlugardeped
irlealusua r
ioquetomelas mismasdecis
ionesunayo travez
,coloca
rlasopc
iones
ante
rio
resasua lcance.Porejemp
lo,almomen todereal
izarunabúsqueda,quetengaasu
a
lcanceaquel
lasbúsquedasqueharea lizadoconfrecuencia.

2
.Simp
li
fica
rlaexpe
rienc
iade
lusua
rio

2.1Serbreve :Usa
rfrasescortasconpa
labrassenci
llas.E
sp robableque
losusuar
ioomi
tael
textos
ieslargos
.Porejemplo
,pa ra
laa
ler
tasocuadrosdecon
fi
rmac iones
,esimpo
rtan
tequeel
textoseaclaroyconc
iso.

2.2Prefer
irlasimágenesan tesquelaspa labras
:Considerare
lusodeimágenespa raexpl
ica
r
ideas.Recibenlaatenc
iónde losusua
riosypuedenser mucho másef
ic
ientequelaspalab
ras.Por
e
jemp lo
,añadirunafotoauncon tac
tofac
il
italabúsqueda,asícomotambién
,laiden
ti
f
icacióndela
personacuandoestallamando.

2.3Decid
irporelusuariope ropermi
tirdeshacer:T
oma rla me
jorrespuestayactua
renlugarde
pregun
tarpr
imeroalusuar
io.Demasiadasopcionesydec
isioneshacea lusuar
ioin
fel
iz.Encaso
dequelarespues
taseaequ ivocada
,permi
ti
r"deshace
r".

2.4Sólo mostra
rloquee lusuar
ionecesitacuandoloneces i
ta:Losusuar
iost
iendena
confund
irsecuandovendemasiadoalavez.Porlocual,esnecesa
riod
iv
idi
rlasta
reasyla
informac
iónenbloquespequeñosydiger
ib
les. Ocu
lta
ropcionesquenosonesencia
lesenes
te
momentoyenseña ralosusua
riosa med
idaqueavanzan .

2.5E
lusua r
iodebesabe rdondeestá:Elusua
riodebeesta
rconfiadoqueconocee
lcamino.
Hace
rlugaresenlaap
licac
iónd
ist
int
ivosyut
il
iza
r last
rans
ic
ionespara mos
tra
rlasre
lac
ionesent
re
laspanta
l
las.Propo
rciona
rcomentar
iossob
relastareasencur
so.

2.6Noperde
rlascosasdelusuar
io:Gua
rdarloquee
lusua
riosetomóe
ltraba
jodec
rea
ry
perm
it
ir
lequepuedaaccede
rdesdecua
lqu
ier
lugar
.

2.7S
itieneelm ismoaspecto
,lafuncióndebeserla misma:Ayuda
ralosusuar
iosadisce
rni
r
lasd
iferenc
iasfunc
iona
les
,haciéndo
losvisua
lmen
tedis
tintosen
lugardesu
ti
les
.E v
ita
r modosque
separezcanyqueactúande manerad
ife
rente
.
93
2.8Sóloin
terrumpi
ralusuarios
iesimportan
te :Losusua
riosqu
ieren mantene
rla
concent
rac
ión,ya menosqueseacr
ít
icoysens
iblealt
iempo
,unainterrupc
iónpuedese
r
agotado
rayfrus
tran
te.

3
. Me
jora
rlaexpe
rienc
iade
lusua
rio

3.1Dartrucosquefuncionanentodaspa r
tes:Losusuar
iosses
ientenbiencuandoreal
izanlas
cosasporsímismos.Real
iza
rlaaplicaciónfác
ildeaprende
r med
ian
teelap rovecham
ientode
pat
ronesvisua
lesyla memor
ia musculardeo t
rasapl
icac
ionesdeAndro
id.Po rejemp
lo,elges
tode
des
liza
rpuedese runata
jodenavegac iónbuena.

3.2Asisti
ralusua r
io:Hayquese ramableenlafo
rmadehacerquelosusua r
ioshaganlas
cor
recciones.E
l
losqu ie
rensent
irsein
tel
igen
tescuandou
ti
l
izansuaplicación
.Sialgova mal
,dar
inst
ruccionesc
larasderecuperac
ión,peroahor
rar
les
losdeta
l
lestécnicos.S
isepuedea rreg
lar
det
rásdeescena, inc
luso me
jor
.

3
.3Faci
li
tarlata
reaalusua
rio:Div
id
irlasta
reascomple
jasenpasos máspequeñosquepueden
l
leva
rseacabofáci
lmen
te.Dar
informaciónsob
relasacc
iones
.

3.4Real
iza
relt
rabajopesadopore
lusuario:Hace
rquelosnova
tosses
ien
tencomoexpe
rtos
porque
lesperm
itehace
rcosasquenuncapensa
ronquepodían
.

3.5Hacerlascosasimportan
tesrápido
:Notodas
lasaccionessoniguales.Dec
id
irquéeslo
másimpor
tanteenlaap
l
icación
,queseafáci
ldeencontra
ryrápidodeusa r,a
ligua
lqueelbotón
delob
turadordeunacámaraoelbotóndepausaenelreproduc
torde música
.

5
.10E
tapadeEva
luac
ióndelaIn
ter
fazde
lUsua
rio

5
.10
.1Técn
icasdeeva
luac
ióndeIn
ter
fazdeusua
rio

Lastécnicasdeevaluac
iónsonut
i
lizadasparacualqu
ieretapadedesar
rol
lodelaIn ter
faz del
Usuar
io.Además,dependede
lgradodeaccesoeiden t
if
icac
ióndelosusuar
iospotenc
ialesyse
traba
jancon muest
rasquedebense rrep
resen
tat
ivasalacomunidaddeusuariosalaq uees tá
d
irig
idoeldesa
rro
llo
.

Exis
te una g ran va
riedad de métodos pa
ra evaluarla usab
i
lidad delos s
is
temas software
trad
icionales queson ut
il
izados en d
ive
rsoscontextos po
r pe
rsonascon d
ife
rentes ob
jet
ivosy
necesidades.
Lastécnicaspuedense r
:

● Segúnt
ipodepa r
tic
ipante
:
○ Técn
icasdeIndagación
○ Técn
icasdeInspecc
ión

● Segúnluga
rdondese l
levaacabo
:
○ Técn
icasdecampo
○ Técn
icasdelaborato
rio
○ Técn
icasde mercado

Lastécnicasde
indagac
iónsonlas másu
ti
l
izadasen
lae
tapadereque
rim
ien
tosyencasodetes
ts
de mercado.

94
5
.10
.2Nuevastendenc
iasenHC
I

TantolaIngen ier
ía del Softwa
re comolaIn teracc
ión Homb re-Compu tadora p
retenden apo r
tar
métodosyhe r
ramientaspa raaumenta rlacal
idaddelosp roductossoftware.Lospun tosdev is
ta
of
recidos por cada una de es tas d
iscipl
inas son d
ist
intos. LaIngen ie
ría del So
ftware aporta
procesos
, mé todos,notac
ionesyhe rram ien
tas
.M ient
ras,la HC Iof
receo tros mé
todosein tereses
quesecen tranene lproceso,enelp roductoyenlaiden t
if
icacióndedónde,cómoypo rquiénes
ut
il
izadoelp roductosof
tware.E sdec
ir,HC IproponeunD iseñoCen tradoene lUsua r
io.[51]

Es
tap reocupac
iónhac iae l usua
riof
inal de
lp roduc
toso f
twarehallevadoala HC Iap roponer
nuevasformas dein teracc
ión at
rayendo a usuarios querechazanlas monótonastécnicas de
inte
racc
iónt rad
icionales
,lo que ha p ropic
iadola apa ric
ión de s
istemas que pe
rmiten una
inte
racc
ión másna tu
ral.
S
istemasde RealidadV ir
tua
l, Rea
lidadAumen tadayS is
temas Ub
icuossone jemp
losdesis temas
queproponennuevospa rad
igmasdein teracc
ión.

Decaraalaevaluac
ióndelausabi
lidadensistemasde Rea
lidadAumen
tadaencon
tramosuna
se
riedecarac
ter
íst
icasquelosd
ife
renciandelossis
temast
radic
iona
lesyquedebenserten
idos
encuen
taalahoraderealiza
runaevaluac
ión
:

● Ca
racter
ísticas delento
rnofís
ico
: lasnuevasfo
rmasdein
teracc
iona
rhacenimpo
rtan
tee
l
en
tornof
ísicoene lqueseut
i
liza
laapl
icac
ión
.

● Carac
ter
ísticasde
leva luador:elnúme rodeeva luado
respuedeser mayorqueene lca sode
laevaluac
ióndeuns istematrad
icional
,deb idoalaapa r
icióndenuevosroles.Elevaluado
r
puedein
terveni
rdu
rantee ltes
tint
roduciendo mat
icesyreal
izandocomenta
riossinafec
taralas
sensac
ionesdelusua
rio,yaqueenes toss is
temase lusua
rionoestáinmersoalcienporcien
enelmismo .

● Caracter
íst
icas de
l usuar
io: que e
l usuar
io no es
téfam i
l
iarizado con es
te nuevotipo de
inte
rfaces puede a
fecta
r negat
ivamente alosresu l
tados obtenidostras una prueba de
usabi
lidad
.Porloquesedebeconseguiralcanza
runpun to
intermedioentreusuar
iosexpertosy
novatos.

Comocua lquierp roduc


toso f
tware,unsistemaderea l
idadaumen tada,parase rúti
l,t
ienequese r
fáci
l deu t
il
iza r
,o f
recerunain ter
faza t
ract
iva(in
te r
fazamigab le)ydebepe rmit
irconsegui
rlos
obje
tivos dela mane ra másráp ida posib
le ytodo esto sin consumir una g ran cant
idad de
recursos.
Lafacil
idaddeusoes táligadaalasa t
isfacc
ióndelusua r
io,aligua lquee lsistemao frezcauna
inte
rfaza t
ractiva.Porotrolado
,laconsecuciónrápidadeob jet
ivoses tá
ligadaa laefec
tiv
idad
.
Además ,encon tramosqueunconsumoba joderecursosess inónimodee fic
iencia.
Todoes tohacequepodamosa f
irmarquelade fin
icióndeusab i
lidad,propues taenlaISO9241-
11,esap l
icableaes tetipodesistemas
.

Unavezv is
toesto
,podemosp rocederacon
tes
taralap regun
ta:¿Sonvá
lidoslos mé
todosde
eva
luacióndeusabi
l
idadt
radic
ionalespa
raeva
luarlausab
il
idadenSis
temasdeRea l
idadVir
tua
l,
Rea
lidadAumentadayUbicuos?

Cualqu
ierproduc
toso
ftwareusabledebeserdiseñadoincorporandocarac
ter
íst
icasya
tr
ibutos
parabenef
icia
ralosusuariosenuncontex
todeusode te
rm inado
. Po
rloquepodemospensa r
quesidiseñamosunproductoso
ftware
,per
tenecien
teacua lquie
radelostrest
iposdes
istemas
,
95
incorporandoca rac
teríst
icasy a t
ributos que bene f
ic
ien alos usua r
ios dela apl
icac
ión ensu
contextodeuso ,tend remosunaap l
icaciónu sableypod remosu t
il
izarparaevaluarlausab i
l
idad
losmétodosan teriormen tep ropues
tos.Pe roes teprocesoporsísolonoasegu raqueunp roducto
seae fect
ivo,ef
ic ienteysa t
isfac
tor
ioensuuso .Po rloqueademásderea l
izarunbuend iseñoes
necesa r
io medire lfuncionam ien
toy lasa t
isfaccióndelosusuariostraba
jandocone lprodu c
to.
La desc r
ipc
ión delos p rocesos de eva luación de apl
icac
iones derea l
idad vir
tual
,rea l
idad
aumen tadaos istemasub icuosnosed iferenciaeng ran medidadelaeva luacióndes istemas
trad
icionales.S inemba rgo,laspa rt
icular
idadesdees toss
istemasintroducennuevose lemen tos
quedebentene rseencuen ta.

96
Cap
ítu
lo6
.Espec
if
icac
iónde
lpro
tot
ipo

En el cap
ítulo ante
rio
r hemos hablado sobre e
l concepto de usabi
lidad
. En es
te cap
ítu
lo
deta
l
laremosp r
incipa
lmentelosrequer
imien
tosdetantoelproto
tipo móv
i
lcomoe lweb,tamb
iénse
desc
rib
iránloscasosdeusoyse mos t
raránlosdiag
ramasdec lase.

6
.1Concep
tosdelaap
licac
ión

E
lobje
tivodees
teproyec
toesdesar
rol
larunaap
licac
iónpa ralaplata
formaAndro
idquefunc
ione
comouncomplementoalaayudabr
indadaporlasguíasde l museoalosvis
itan
tes
.Ser
íacomo
unagu
íavir
tua
lconlacua
llosv
isi
tan
tespuedenreal
izarlassiguien
tesact
iv
idades
:

● Consu
ltarin
formac
iónsobreun museoenpart
icula
r.
● Completarunaencues
ta
● Consu
ltarin
formac
iónrela
tivaaunob je
todel museo
.Sepuedeaccederaladesc r
ipc
ióndel
ob
jeto,verimágenesyvideos,escucha
runaud ioquerepresen
taaladesc
ripc
ióndelob
jeto
,
jugaraunjuegodetipo“t
riv
ia”yaotrodet
ipo“uni
rconflechas”
.

La arqu
itec
tura dela ap licac
ión es d
ist
ribu
ida
. Básicamente elclien
te móvilrecuperala
info
rmacióndelservidorweb,exceptoenelcasodelaencuesta,queseenv íae
lresu
ltado
.
Dent
rodel modelodeda tospodemosident
ifica
rvar
iosent
idadespa rarepresen
tar
losobjetosde
l
museoysus mater
iales,paralasencues
tas
, museos
,categor
ías,etc
.

Larealidadaumen tadaes táimplementada med


ianteunlec
tordecódigos QRqueesu t
il
izado
paraident
ificare
l QRasoc iadoacadaob je
toypa raluego t
rae
rtodalainfo
rmaciónrelat
ivaa
d
ichoob jeto.
La decis
iónde l método derealidadaumentada e
leg
idofuetomada a pa
rt
ir delassiguien
tes
rest
ricc
iones :

Losob
jetosden
trodel museoseencuen
tranden
trodeunavi
tr
inaconpocailum
inac
ión
.Además
,
seencuent
ransuperpuestosunosconotrosylos m
ismosserotanconstan
temen
teconot
ros
e
lementosqueseencuentraenundepósi
to,camb
iandodeluga
rdeexpos
ición.

Espores te motivoqueresultabadif
íc
ilapl
ica
r RAbasadaenca rac
terís
ticasnaturalesobasadas
endispos i
tivosfís
icostalescomoe l GPS,yaqueademásnosencon tramosenunamb ien
te

indoor”
.
Esporello,quee legimosRAbasadaen ma rcadores
.U t
i
lizamosel marcador QR,deb idoaquela
info
rmac iónse gene ra dinámicamenteyten íamos que encont
ra
r uncód igo que nos pe
rmi
ta
ident
if
icarfácilmentecadaunode losobje
tosqueseexponenden trodel museoyquenosp rovea
todaslashe r
ramientasnecesariasparapodercrear
losyleer
losfác
ilmen te.

6
.2Reque
rim
ien
tosde
lcl
ien
te móv
il

Func
iona
les
:

ID Nomb
re Desc
ripc
ión
Se debe recupe
rar y most
rarla in
formación
RFM_01 Consu
lta
rob
jeto rela
tiva a un obje
to. Es
ta inc
luye imágenes
,
v
ideos ,tex
toyaud
io.

97
Sedebe mostrarinforma ciónsob relacatego ríaa
RFM_02 Consu
lta
rin
formac
ióndeca
tego
ría
lacua lper
tenecee lobjeto
Consu
ltarin formación del mu seo y ve
r Se debe mos t
rarla de scripc
ión del museo yla
RFM_03
mapa imagende l mapa
Sedebepode rrecibir unasuge renc
iadea lgunos
RFM_04 Consu
ltarsuge renc
iadeob jeto
s objetos deot
rasca tego rías para que e
lv isitan
te
explore.
Se debe comp letar la encues ta y env iar el
RFM_05 Recuperaryenv ia
rencues ta
resultado
RFM_06 Recuperart
rivia Sedebe mo st
rarlatriv
ia
RFM_07 Recuperarunirconf lechas Sedebe mo st
rareljuegoun i
rconflechas
Sedebepode r mos t
rarenpan ta
l
lalalis
tainicialde
RFM_08 Consu
ltarlalistade museo s
museos

Nofunc
iona
les
:

ID Nomb
re Desc
ripc
ión

RNFM_01 T
iempoderespues
ta E
l s i
stema debe opt
imizare
lt iempo dere
spuesta de
conex
iónpa
rae lin
tercambiodedato
sconelserv
ido
r
RNFM_02 Aspec
tosdeIn
ter
fazg
ráf
ica Lain
ter
fazg
raf
icadebese
ram
igab
le,in
tui
ti
vayfác
i
lde
usa
r.
RNFM_03 T
ole
ranc
iaafa
l
los E
ls is
tema debe poderrecupe
rarse an
te un e
rro
r pa
ra
ev
itarelc
ier
reforzosodelmismo.

6
.3Reque
rim
ien
tosde
ladm
inis
trado
rweb

Func
iona
les
:

ID Nomb
re Descripción
E
ls i
stema debe pe rmitir consu l
tar
,c rea
r, modif
icary
RFW_01 Adminis
tra
robjetos
e
liminarob jetos
E
ls i
stema debe pe rmitir consu l
tar
,c rea
r, modif
icary
RFW_02 Adminis
tra
rmateria
les
e
liminar ma ter
iales
E
ls i
stema debe pe rmitir consu l
tar
,c rea
r, modif
icary
RFW_03 Adminis
tra
rusua r
ios
e
liminarusua r
ios
E
ls i
stema debe pe rmitir consu l
tar
,c rear, modi
ficary
RFW_04 Adminis
tra
r museos
e
liminar mu seos
E
ls i
stema debe pe rmitir consu l
tar
,c rea
r, modif
icary
RFW_05 Adminis
tra
rcategorías
e
liminarca tegorías
E
ls i
stema debe pe rmitir consu l
tar
,c rea
r, modif
icary
RFW_06 Adminis
tra
rencue s
ta
e
liminarlaen cuestadefinidapa racada museo
E
ls i
stema debe pe rmitir consu l
tar
,c rea
r, modif
icary
RFW_07 Adminis
tra
rjuego
e
liminareljuegode fin
idopa racadaob je
to
E
ls istemadebepe rmi
tiringresa r, modi
ficarye l
iminarla
Adminis
tra
rinforma c
ión de un
RFW_08 información de unmuseoy pode re leg
ir un mapay un
museo
iconorep resentativo.
E
ls is
temadebepe rmit
irla mod ificac
ióndelacon traseña
RFW_09 Mod
ifica
rcont
raseña
deunusua rio.
E
ls istema debe au tor
iza ry au tent
ica rel acceso de un
RFW_10 In
iciarses
iónene lsistema
usuarioalaap l
icación

Nofunc
iona
les
:

98
ID Nomb
re Desc
ripc
ión

RNFW_01 In
ter
fazs
imp
le Debe con
tarconunainter
fazs
implequenorequ
ierauna
l
to
gradodecapac
ita
ciónparasuu
ti
l
izac
ion

RNFW_02 Capac
idadderespue
sta E
l sistema debe responde
r de mane ra ráp
ida a los
reque
rimien
tostan
to desde e
l adm
inis
trado
r web como de
l
c
lien
te móvi
l
.

6
.4Casosdeuso

Loscasosdeusosirvenpa radescr
ib
irenformanatura
llafunc
iona
l
idaddeuns
is
tema.E sut
i
lizado
pararea
l
izarlaespeci
ficaciónderequis
itosde
lsistema. Pe
rmi
tencap
tura
rydef
in
irlosrequis
itos
quedebendefin
irunaaplicación
.

6
.4.1Casosdeusodelaap
licac
ión móv
il

F
igu
ra6
.1:Casosdeusodelaap
l
icac
ión móv
i
l

6
.4.2Casosdeusode
ladm
inis
trado
r web

99
F
igu
ra6
.1:Casosdeusodelaap
l
icac
ión móv
i
l

6
.4.3Desc
ripc
ióndeloscasosdeusodelaap
licac
ión móv
il

Nombre Consulta
rob jeto
Req.quesa
tis
face RFM_01
Acto
r Usuario
Descr
ipc
ión Apa rt
irdelalec tu radelcód igo QRlaap licac
ióndebe
mostrar en dist
inta s solapas d iversainforma c
ión: una
solapaespa ra mos tra
runl istadodeimágenesdeese
obje
to ;otrae spa ra mos trarunal is
tadev ideosdeese
obje
to ;o
traespa ra mo s
traruntex todes cr
ipt
ivosob reel
obje
to ;otrae spa ra mos t
rarunaud ioquerep resen
tala
descripc
ión de l objeto hablada;ypo rúlt
imo ,laso lapa
que mues traunaopc ióndejuego s.
P
recond
iciones E
liddeob je
toexis teen laba sededa tos

Nomb
re Consu
lta
rin
formac
ióndeca
tego
ría

Req
.quesa
tis
face RFM_02

Ac
tor U
sua
rio

Desc
ripc
ión E
l usua r
io puede ac
ceder alain fo
rma c
ión sob
rela
categoría ala cual pe
rtenece e
l obje
to que decid

explorar
.
P
recond
iciones E
lob jetoper
teneceaunaca tego
ría

Nombre Consul
tarin
formacióndel museoyver mapa
Req.quesa
tis
face RFM_03
Acto
r Usuar
io
Descr
ipc
ión Desde la panta
lla p r
inc
ipalelu sua
rio debe poder
accederalainfo
rmac iónsobreel museoyve run mapa
representa
ti
vosob reeste
.

100
P
recond
iciones

Nombre Consultarsugeren
ciadeob jetos
Req.quesa
tis
face RFM_04
Acto
r Usua r
io
Descr
ipc
ión Apa rt
irdelalectu
radelain formaciónsob
relacategoría
alaquepe r
teneceelobjetoexp lo
rado(verreq. RFM_2 )
e
lusua r
iodebepode rob tene ralgunassugerenc
iasde
otros obje
tos que exis
tan en e l museo. Es a modo
desc r
ipt
ivo
,yaquee lusua r
iodeberábusca reseob jeto
físicamente y luego exp lora
rlo para accede
r a su
información.
P
recond
iciones

Nombre Recupera
ryenv ia
rencuesta
Req.quesa
tis
face RFM_05
Acto
r Usuar
io
Descr
ipc
ión Desde la pantal
la pr
incipa
le lu sua r
io debe pode r
completa
rlaencue s
tadel museoyenv iarlosresu
ltados
a modo defeedback . Para el
lo p
rimerola apli
cación
móvi
l deberecupera
re l modelo de encues
ta desde e
l
serv
idorweb.
P
recond
iciones

Nombre Recupera
rtriv
ia
Req.quesa
tis
face RFM_06
Acto
r Usuar
io
Descr
ipc
ión E
lusua r
iodebepode rjugaruna“tr
iv
ia”
. Debere sponder
laspreguntasyobtenerunpun ta
jeporel
lo.E
l mode lode
latriv
ia debe serrecupe rado de
l serv
idor
.E ljuego
cor
responde a un ob jeto en part
icu
lar y se debe
encont
raren laso
lapade“juegos”delob
jetoexplorado.
P
recond
iciones

Nombre Recupe
rarun
irconf
lechas
Req
.quesa
tis
face RFM_07
Ac
tor U
sua
rio
Desc
ripc
ión E
lusua r
iodebepode rjugaraunjuegode ltipoun i
rcon
f
lechas,ene lcua lseunencon cep
tosrelacionadosaun
ob
jeto. Cuandotodaslosítemssehanco rrespondido se
leavisaalu suar
io.
E
ljuegoco rrespondeaunob jetoenpar
ticularysedebe
encont
raren lasolapade“juegos
”delobjetoexplorado
.
P
recond
iciones

Nombre Consu
lta
rlal
istade museos
Req.quesa
tis
face RFM_08
Acto
r Usuar
io
Descr
ipc
ión Cuandoseinic
ialaaplica
ción móv
ilsedebe mo
stra
ral
usuar
iounal
istade museosdi
sponib
les
.
P
recond
iciones

6
.4.4Desc
ripc
ióndeloscasosdeusode
ladm
inis
trado
r web

Nombre Adm
inis
tra
rob
jeto
s
Req
.quesa
tis
face RFW_01
101
Acto
r Usuar
ioconroldecargadeda tos
Descr
ipc
ión E
lusua r
iodebepode rc rea
r, modi
fi
carye l
iminarobjetos.
Para cada ob
jeto se debe pode r determina
r a qué
catego
ríaper
tenece.So losepe rmi
telae l
iminac
iónfísica
s
ie lob
jetonoposeeo trosobjetosasociados.
P
recond
iciones E
lusua r
ioestáauten
ticado

Nombre Adm inis


tra
r mater
iales
Req.quesa
tis
face RFW_02
Acto
r Usua r
ioconroldeca rgadeda tos
Descr
ipc
ión E
lusua r
iodebepode rcrear. mod
if
icarye
limina
rparalos
d
istintos obje
tos, ma ter
iales delos siguien
testipos
:
imágenes ,v ideo
, aud io ytex to
. Solo se perm
i
te un
archivodeaud ioyuna rch
ivodetex to
.
P
recond
iciones E
lusua r
ioe s
táautenticado

Nombre Adminis
tra
rusuarios
Req.quesa
tis
face RFW_03
Acto
r Usuar
ioconrolAdm in
istrador
Descr
ipc
ión E
l usuario debe poderc rear
, modi
fi
carye liminar un
usuar
ioconro lcargadeda to
syelegirel museoalcual
per
tenece. La e
liminación eslóg
ica, se debe marcar
comoina c
ti
vo.
P
recond
iciones E
l usuario es
tá autent
icado.E lusuar
io que se qu
iere
ingresarnoexis
teen laba sededatos
.

Nombre Admin
ist
rar museos
Req.quesa
tis
face RFW_04
Acto
r Usuar
ioconrolAdminist
rador
Descr
ipc
ión E
l usuar
io debe pode rcrear
, mod
if
ica
rye
l
imina
r un
museoconsude scr
ipción
P
recond
iciones

Nombre Adminis
trarca
tegor
ías
Req.quesa
tis
face RFW_05
Acto
r Usuar
ioconroldeca rgadedato
s
Descr
ipc
ión E
l usua rio debe podercrear
, mod if
ica
rye lim
inar
categor
ía s
.Solose mepermi
telaeliminac
iónf
ísi
casila
categor
íanopo seeobje
tosasoc
iados.
P
recond
iciones

Nombre Administ
rarencues
ta
Req.quesa
tis
face RFW_06
Acto
r Usuarioconroldecargadedatos
Descr
ipc
ión E
l usua r
io debe podercrea
r un mode
lo de en
cues
ta,
modi
ficarsusi
temsoe l
iminar
lostamb
ién
.
P
recond
iciones

Nombre Admin
ist
rar
juego
Req.quesa
tis
face RFW_07
Acto
r Usuar
ioconro
ldeca rgadedatos
Descr
ipc
ión E
lusua r
iodebepa racadaobjetopodercrearun mode
lo
dejuego detipotri
viay modi
fica
roe l
iminarsusítems
,
debe pode
rc rear también unjuego delt
ipo uni
r con
f
lechascon4pa rejadeítemsrelac
ionados
.Sedebenas í
tambiénpoder modi
fica
ryel
im ina
resositems.
P
recond
iciones

102
Nombre Administ
rarinformac
ióndeun museo
Req.quesa
tis
face RFW_08
Acto
r Usuarioconro ldecargadedato
s
Descr
ipc
ión E
l usua r
io debe pode rcrea
r, modi
f
ica
ry e l
iminarla
información relat
iva a un mu seo
. Esta inc
luye la
descr
ipción y la imagen de l mapa y e l icono
representat
ivo.
P
recond
iciones

Nomb re Mod
if
icarcon
traseña
Req.quesa t
isface RFW_09
Actor Usua
rioconroldecargadedatos
Descr
ipción E
lusuariodebepoder mod
if
ica
rsucon
tra
seña
Precondic
iones

Nombre In
icia
rsesiónenelsis
tema
Req.quesa
tis
face RFW_10
Acto
r Usuar
ioconroldecargadeda tos
Descr
ipc
ión E
l usuar
io debe poderingresarals
is
tema .Elsis
tema
debe va
lida
r que el usua
rio ex
is
te y quela c
lave e
s
cor
recta
P
recond
iciones

6
.5A
rqu
itec
turade
lsis
tema

Laarqui
tecturadels is
temaesd ist
ribuida.Elcliente móvi
lfuncionasobredispos
i
tivosAnd ro
idque
poseanlaversión2 .2enade lan
te.T odoelin
tercamb iodeinformaciónentrelaap
licac
ión móvi
lye l
serv
idor serealiza ut
il
izando elp rotoco
lo HTTP ylatecno logía Json[52]
. Pararealiza
r este
inte
rcambiosedebed isponerdeunaconex iónaIn terne
t.Sibienes mejorquee lte
léfonodonde
seejecutaelcl
iente móvilestéconec tadoainternet
,elrendimientobajolareddetecnología móvi
l
3Gesbas tanterápido.

E
lse rv
ido
rsiempreestáalaesperadepet
icionesporpar
tede lc
l
iente móv
i
lalascualessat
isface
conrespuesta que br
indanin
formac
ión a
l usuar
io.El se
rvido
r estáimplemen
tado u
ti
l
izadola
vers
ión8.4dePos tg
reSQL[53]
.

6
.6D
iag
ramadec
lases

Se mues
traacontinuac
ióne
ldiagramadecla
sesde
l mode
lo,e
lcua
lrep
resen
talaso
luc
iónquese
encon
trópararesolve
reldom
iniodelp
rob
lema.
Parasimpl
i
fica
reld
iagramaseev itoponerlacla
se Ent
idadBaseylacua lsolos i
rveparadarelat
ribu
tode
nombre“id
”necesa
rioparalapers
isten
cia med
ian
teHiberna
te.T odaslasclasesquesonraícesdejera
rqu
ías
ylasquenoformanpar
teden ingunaje
rarqu
íaext
iendendeEn t
idadBaseex ceptolac
lase QRDa
ta.

103
F
igu
ra6
.2:D
iag
ramadec
lasesin
fo.un
lp.mode
l

104
F
igu
ra6
.3:D
iag
ramadec
lasesin
fo.un
lp.mode
l.encues
ta

105
F
igu
ra6
.4:D
iag
ramadec
lasesinfo
.un
lp.mode
l.
juego

6
.6.1Desc
ripc
ióndelasc
lases

Dein
fo.un
lp.mode
l:

Museo
:Si
rvepa
rarep
resen
tar
losd
ist
intos museosquepuedenex
is
ti
ren
laap
l
icac
ión
.

Ob
jetoMuseo
:Es
tac
laserep
resen
taa
losd
is
tin
tosob
jetosquepuedehabe
rene
l museo
.

Ma
ter
ialMuseo: Cada ob jeto de
l museo posee una co
lecc
ión de e
lemen
tos
. La clase
Ma
ter
ialMuseos
irvepararepresen
tarcadaunodeesose
lemen
tos.Cadae
lemen
topuedetene
run
t
ipoquepuedese runaimagen,video
,audiootex
to.

T
ipoMate
ria
l:Rep
resen
tare
ltipoquepuedetene
run ma
ter
ial
.Puedese
raud
io,imagen
,tex
too
v
ideo
.

Ca
tegor
ía: Represen
talaca
tegor
íaalacualperteneceunob
jetodel museo
.Losobje
toses
tán
ag
rupadosfís
icamenteenvi
tr
inasquecor
respondenaunacategor
íaespecíf
icacomopuedese
r
óp
ticaoelec
tromagnet
ismopore
jemplo
.

Ro
l:Rep
resen
taunro
lquepuedeposee
runusua
rio
.

RolAdminis
trado
r: Rep
resen
tae
lro
ladm
in
is
trado
rycone
lcua
lsepuededa
rdea
lta museosy
usuar
ios
.
106
RolCa
rgaDeDa tos
:Represen
tae
lro
ldeca
rgadedatoscone
lcua lsepuedenhacer
la mayo
ríade
lasoperac
ionesdels
is
temacomocrea
rob
jetos
,ag
rega
r ma
ter
iales,c
rearca
tegor
ías,e
tc.

Usua
rio:Represen
taunusua
riode
lsis
temayes
tav
incu
ladoaun museoespec
íf
icoyposeeunro
l
de
terminado
.

Obje
toSuge r
ido
:E suti
lizado para cuando desdela ap
l
icac
ión móv
i
l se qu
ieren ob
tene
r
sugerenc
iasdeot
rosob
jetosaexplora
r.

QRData
: Rep
resentala
info
rmaciónquecont
ieneuncód
igo QR
.Bás
icamen
teposeeelidde
lobje
to
enlabasededa tos
.E s
taclaseestrans
formadaaforma
toJsonyelstr
ingresu
ltan
teeselque
rep
resentae
lcód
igo QR.

Dein
fo.un
lp.mode
l.encues
ta:

Encues
ta:Rep
resen
talaencues
tade
l museo
.Poseeuna
lis
tadeI
temEncues
ta.

I
temEncues
ta:Rep
resen
tacadaí
temdelaencues
ta.Poseeunap
regun
tayunt
ipoderespues
ta.

T
ipoRespues
ta:E slabasedelajera
rqu
ía.Lost
iposderespues
tapuedense
rdetipoinpu
topara
ing
resa
runtexto
,detipo mu
lt
iplecho
ice
,osea,conunal
istadeopc
ionespos
ib
les
,odetipoSí
/No.

TipoRespuesta
Inpu
t: Rep
resen
tae
ltipoderespues
taenlacua
lel usua
riopuedeing
resa
run
valo
rtex
tual
.

TipoRespuestaMult
ipleCho
ice
:Rep
resen
tae
ltipoene
lcua
lelusua
riopuedee
leg
iren
treva
rias
opcionespos
ibles
.

T
ipoRespues
taS
iNo
:Rep
resen
tae
lt
ipoene
lcua
lelusua
riopuedee
leg
irpo
rSíopo
rNo
.

Opc
ionMultip
leCho
ice: Cadat
ipoderespues
ta mú
lt
iplecho
iceposeeunal
istadee
lemen
tosde
es
taclase
.Comoa t
ribu
toposeeelva
lordelaopc
ión
.

EncuestaResul
tado:Represen
talaencues
tarespond
idapo
relusua
rio
. Poseeunal
istadeí
tem
s
depreguntasyrespues
tas
.

ItemEncuestaResu
ltado:Rep
resen
tauní
temdelaencues
taresu
ltado
.Poseelap
regun
taquese
respond
ióylarespues
ta.

Respues
ta: Rep
resentalarespuestadecadaí temdelaencuestaresu
ltado
. Comoa tributoposee
unstr
ingqueeslarep resentac
iónli
teraldelarespuestadelusuar
io. Porejemplo,sielusuar
io
respond
ióSí
,larespuestadirá“Sí
”;sirespondióconunvalo
rdetipoinputcontendráesevalo
rys i
respond
ióconvariasopcionesde mul
tip
lechoiceseráunstr
ingqueconcatenelosvaloresdeesas
opc
iones
.

Dein
fo.un
lp.mode
l.
juego
:

T
riv
ia:Rep
resen
talat
riv
iade
lob
jeto
.Poseeuna
lis
tadeI
temT
riv
ia.

107
I
temT
riv
ia:Rep
resen
tacadaí
temdelat
riv
ia.Poseeunap
regun
tayunt
ipoderespues
ta.

TipoRespuesaTr
ivia
:E sla base delaje
rarqu
ía. Lostipos derespues
ta pueden se
r det
ipo
mul
tip
lecho
ice,esdecir
,conunalis
tadeopc
ionesposibles
,odet ipoS
í/No.

TipoRespuesaMult
ipleCho
iceT
riv
ia: Rep
resen
tae
ltipoene
lcua
lelusua
riopuedee
leg
iren
tre
var
iasopcionespos
ibles
.

T
ipoRespues
taS
iNoT
riv
ia:Rep
resen
tae
lt
ipoene
lcua
lelusua
riopuedee
leg
irpo
rSíopo
rNo
.

Opc
ionMu
lt
ipleCho
iceTr
ivia
: Cada t
ipo de respues
ta mú
lt
iple cho
ice posee unal
ista de
e
lemen
tosdeestac
lase
.Comoatr
ibutoposeee
lva lo
rdelaopc
ión.

Un
irConF
lechas: Represen
ta uni
temdeljuego de un
irconflechasy posee po
rlotan
to una
pa
lab
radeorigenyotradedest
inoalacua
lestáv
inculadalap
rimera.

108
Cap
ítu
lo7
.Sis
tema web

En e
lcapítu
lo anter
ior hemos hab
ladosobrerequer
imien
tosycasos de uso
. En es
tecapí
tulo
exp
l
icaremoslaa rqu
itec
turadelpro
tot
ipo web
,losdi
feren
tesf
rameworkut
i
lizadosyahonda
remos
encuest
ionestécn
icasde imp
lementac
ión
.

7
.1A
rqu
itec
tura

Laapl
icac
ión webconst
ituyelaimp
lemen
taciónserv
ido
rdelaapl
icación
.Esunproyec
toJavaque
s
igueelpatróndediseño MVC(modelo-vista-con
tro
lado
r)
,ut
i
lizandocomof
rameworksparasu
desa
rro
llo
:

● Sp
ring[54]
● Sp
ring MVC
● Sp
ringSecu r
ity
● H
ibernate[55
]
● jQuery[56]

Para e
l desa
rrol
lodela partese rv
idory webseu t
i
lizó Spr
ing MVC.Jsppa ralap resentac
ión,
JQuerycomol ib
rer
íaparae l manejodefunc
ionesJavaScr
ipt
,H ibe
rna
tecomoF ramewo rkparala
pers
is
tencia de ob
jetos
, Spring paralainyecc
ión de dependenc
ias y Sp
ring secur
ity parala
segur
idaddelaap l
icac
ión.

Laa
rqu
itec
turacons
tade4capas :
-lacapadep resentac
ión
-lacapadecon t
roladores
-lacapadese rv
iciosológicadenegoc
ios
-lacapadeaccesoada tosoDAO

7
.2F
ramewo
rkSp
ring

Spr
ing [54 ] es unf
ramewo rk decódigo abier
toc reado pa
ra hacerfrente alacomp lej
idad del
desar
rollodeap l
icac
ionesemp resa
ria
les.Sp r
inghacepos ib
leut
i
lizarJavaBeanspa ralograrcosas
quean tese ransóloeranpos iblecon E JBs.S inemba rgo
,lau t
il
idadde Sp ringnosel imi
taa l
desar
rollodelladodelservidor
;cualquierap
licaciónJavapuedebene f
ic
iarsedeSp r
ingenté rm inos
de simplic
idad,la capacidad detes ting y el ba
jo nive
l de acoplamiento
. Spr
ing po see dos
carac
teríst
icasimpor
tantesqueson :lainyeccióndedependenciasylap rogramac
ióno r
ien tadaa
aspectos.

7
.2.1Inyecc
ióndedependenc
ias

T
ambiénconoc
idoporsunomb re másgenér
icoinvers
ióndecon t
roloIOC[57
],esunpa
trónde
c
reac
ióndeobje
tos
.E sdec
irqueesunpa t
rónqued icealgoace
rcadecómounobje
toesc
reado
.

S
itenemosdosc lasesquedependenunadelao t
rahayva r
iasformasdeestablece
resetipode
dependenc
ia.Lafo rma mássimpleeshace rquelac laseAquedependede Bins tancieB. Pe
ro
esoacopla mucholasclasesent
res í.Hayotropat
rón muypopula
rusadofrecuentementeenJ2EE
l
lamado“se rv
icelocato
r” quebásicamenteestab
lecequelaclaseAbuscalaclaseBenunse rv
ice
loca
torparasuu t
il
izac
ión.E s
tofavoreceunacop lamien
to menosfue
rtequee l métodoanter
ior
,
peroestesigueexist
iendo.
109
Inyecc
ióndedependenciaencamb io
,hacequelaclasequenecesi
taalgonolocree,n
ilobusque
enalgúnlugar
,sinoqueloobtengaporinyec
ción
, median
teuncons
truc
torounse t
ter
.Podr
íamos
def
ini
rporconsigu
ientealainyecc
ióndedependenciacomountérminout
il
izadoparadesc
rib
irel
desacop
lamientoent
relaimplementac
ióndeunob jetoylaconst
rucc
ióndeo troobje
todelcua
l
depende.

7
.2.2AOP

Aspect-Or
iented Programming(AOP) [58]óp rogramacióno r
ientadaaaspectosesunpa radigma
de programac ión que nos pe
rmi
te separar“aspectos” o“in
tenciones
” de nuest
ro so
ftware en
d
iferentes módulossegúnsuresponsabi
l
idad .Dees ta manerapuedeversecomoo trahe
rramienta
parapode rdiferenc
iarennuestrocód
igolasd ife
rentesnecesidades,encapsu
landolosdife
rentes
conceptos como son los reque r
imientos funcionales
, segu r
idad
, p ro
fi
ling de tiempos,
transaccionabil
idadcont
raunabasededa tos,logging
,en t
reotros.

A
lgunosconcep
tos
impo
rtan
tesdeAOPson
:

● Aspec t(A specto )esunafunc ionalidadt rans versal(c ross- cu


tt
ing )quesevaaimp lemen tarde
forma modu larysepa radade lres tode ls istema .E lejemp lo máscomúnys imp ledeunaspec to
ese llogging( registrodesucesos )den trode ls istema ,yaquenecesa riamen tea fectaatoda slas
partesde lsistemaquegene ranunsuceso .
● Joinpo int(Pun tode C ruceode Un ión)esunpun todee jecuciónden trode lsistemadondeun
aspec to puede se r conec tado , como unal lamada a un mé todo,e llanzam iento de una
excepc iónolamod i
ficacióndeuncampo .E lcód igode laspectose ráinse rtadoene lflujode
e
jecuc iónde laap l
icac iónpa raañad irsufunc iona l
idad .
● Advice(Conse jo )esla imp lemen tac iónde laspec to,esdec i
r,contieneelcód igoqueimp lemen ta
lanuevafunc ionalidad .Seinse r
tanen laap licaciónen losPuntosdeC ruce.
● Pointcut(Pun tosde Co rte)de f
inelos Conse josqueseap licaránacada Pun tode C ruce. Se
especifica med iante E xpresiones Regu lares o med iante patrones de nomb res(de c lases,
métodosocampos )
,einc lusodinám icamen teent iempodee jecuciónsegúne lva lordec iertos
paráme tros.
● Introduc t
ion( In t
roducc ión) pe rm i
te añad ir mé todos o a tr
ibutos a clases ya ex isten tes
. Un
e
jemp loene lqueresu ltaríaú ti
leslac reacióndeun Conse jode Aud i
toríaque man tengala
fecha de la ú lt
ima mod i
ficación de un ob jeto, med iante una va r
iable y un mé todo
setUlt
imaMod ificacion(fecha )
, que pod rían se rin troducidos entodaslas c lases(o só lo en
a
lgunas )parap roporciona r
lases tanuevafun cionalidad .
● Target(Des tina tar
io)eslac laseaconse jada ,lac lasequeesob je
todeunconse jo
.S inAOP ,
estaclasedebe ríacon tene rsu lógica ,ademásdela lógicadelaspec to.
● Proxy(Resu l
tan te)ese lob jetoc readodespuésdeap l
icarel Consejoa l Objeto Des t
ina tar
io.E l
restodelaap licaciónún icamen tetend ráquesopo rtara l Ob
jeto Destinatar
io(p re-AOP )ynoa l
ObjetoResu ltan te(pos t-AOP )
.

7
.3Sp
ring MVC

Spr
ing MVC[59 ]ayudaenlacons t
rucc
ióndeap l
icac
ionesf
lexiblesydéb i
lmen teacopladas
.E l
patrón Model-
view-cont
rol
ler ayuda enla separac
ión delalóg ica de negocios
,lalóg ica de
presentac
iónylalóg icadenavegación.El modeloesresponsabledeencapsu larlosdatosdela
apl
icac
ión. Lavistarenderizalarespues
taa l usua
rioconla ayuda del ob
jeto del modelo
.Los

110
cont
roladoressonresponsab
lesderec
ib
ire
lreque
rim
ien
to HTTPd
ispa
radopo
relusua
rioyl
lama
r
alosservic
iosback-
end.

F
igu
ra7
.1:D
ispa
tche
rSe
rvle
t

E
lf ramewo
rk Sp
ring MVC está d
iseñado a
lrededo
r de un Dispa
tche
rSe
rvle
t. Cuando un
reque
rim
ien
toseenvíaa
lfram
eworkSpr
ing MVClasigu
ien
tesecuenc
iadeeven
tossesuceden:

1 ElDispatcherServ
le teselp r
imeroenrec ib
irelrequer
im iento
2 El DispatcherServlet consu lta el HandlerMapping einvoca e l Cont rol
ler asociado al
requer
imiento
3 El Contro
lle
rp rocesaelreque r
imientollamandoa l métodode lse rv
ic
ioaprop iadoyre tornaun
ob
jeto ModelAndViewa lDispatche
rSe rv
let.Elob je
to Mode lAndViewcon t
ienelosda tosde l mode
lo
yelnomb redelav is
ta .
4 ElDispatcherServletenvíaelnomb redelav is
taalViewReso lverpa raencontrarlavis
taac tua
la
invoca
r.
5 ElDispatcherServ
le tahorapasae lobjetodel mode
loalav is
tapa rarender
iza relresu
ltado.
6 Lavista,conlaayudade losda
tosde l modelorender
izae lresul
tadodevue ltaa lusuar
io.
7
.4Sp
ringSecu
ri
ty

Spr
ing Secu r
ity[60
]esunpode rosoya l
tamentecus tomizableframeworkdeau ten
tica c
iónyde
contro
l de acceso o au to
rizac
ión. E se l estandard defac to para b
rinda
r segu r
idad alas
ap
licacionesbasadasenSp ring.
Como essab ido
,dosá reasimpo r
tantesdeap l
icacióndelasegu r
idadsonla“autenticac
ión”yla
“autor
ización
”(ocontro
ldeacceso )
.E s
tossonlosta rge
tsprincipa
lesdeSpringsecur
ity.

Au
tent
icaciónese
lprocesodees
tab
lece
rqueunaent
idad(comopuedeserunusua
rio
,dispos
it
ivo
uot
rosistemaquein
tentarea
l
iza
runaacc
iónenlaap
l
icac
ión)esqu
iendicese
r.

111
Autor
izac
iónsere f
ierea
lproceso de decid
irs
i a esaent
idadseleespe rm
it
idoreal
izarcie
rta
acción dent
ro dela ap
l
icac
ión. Parallegara
l punto donde una dec
is
ión de au
tor
izac
ión es
necesar
ia,laiden
t
idaddelaent
idadhas idoyaestab
lec
idaporelprocesodeau
tent
icac
ión.

7
.5H
ibe
rna
te

H
iberna
te[55
]esunahe rramien
tade mapeoobje
to/
relacional(ORM)pa
raambien
tesJava
.Esun
framewo
rkdepersis
tenc
ia,basadoenobjetos
,parabasesdeda tosre
lac
iona
les
. Su
rgecomola
neces
idaddepe
rsist
irob
jetosJavaenbasesdedatosrelaciona
les
.

7
.6JQue
ry

JQuery[56] es unal ibre


ría de JavaS c
rip
t pa ra acceder alos objetos del DOM de un modo
s
impli
ficado.Lalibre
ríajQue ryenresumennosapo r
talassiguientesventa
jas:
● Nosaho rra muchaslíneasdecód igo.
● Noshacet ransparenteelsopo rtedenuestraaplicac
iónpa ralosnavegado respr
inc
ipales
.
● Nosp roveedeun mecan ismopa ralacapturadeeven tos.
● Proveeuncon jun
todefunc ionesparaanima relcontenidode lapáginaenfo rma muysenci
l
la.
● Integrafunc
iona l
idadespa ratraba
jarconA JAX.

7
.7C
reac
iónde
lproyec
to

Desdeelento
rnodedesar
rol
lo E
cl
ipsec
reamosunnuevop
royec
to webd
inám
ico
. Lae
struc
tura
de
lm ismoeslas
igu
ien
te:

112
F
igu
ra7
.2:E
struc
turade
lproyec
toweb

● JAX- WS WEBSERV ICES:con t


ienede f
inicionesdese rviciosweb .
● Dep loymen tdesc r
ipto r
: detal
laelcon tenidode ldesc ripto rdedep loymen t
,queese la r chivo
web.xml
● Javaresou rces
:seencuen t
ranlosa rchivosjavaya rchivosde mapeo .
● JavaSc riptresources:se mues trantodas la sfuncionesJavaS c
riptde f
inidasene lproyecto.
● WebCon tent
: seencuen trantodoslosrecu r sos webdelaap l
icación.Enlaca rpeta/audiosse
guardantodoslosaud iosquesesubenalaap licac
ión .Enlaca rpeta/ imagenessegua rdantodas
lasimágenesdeob jetosquesonsub idasalaap licación . En/mapassegua rdanlos mapase
iconosde los museos.En/q rsegua rdan los QRgene radospo rlaapl icación.
● Dentrode WEB- INFseencuen trae ld irectorioclassesdondesegua rdantodoslosa rch ivo s
.c
lass gene rados pore l compilador JAVA ; en e ld irectorio/ libse gua rdantodaslasl ibre r
ía s
ut
i
lizadas porla apl
icacióncomolas p ropia s de Sp r
ing e H ibernate, entre ot
ras . En/view sse
guardantodoslos JSP . En /javascr
iptse gua rdantodoslos a rchivos. jsp ropios dellengua je
javascr
ipt
.En/csssegua rdantodoslosa rchivosdees ti
los.csseimágenesre lacionadostamb ién
coneles t
i
lop rop
iode laap l
icación.

7
.8C
reac
ióndelasc
lasesde
l mode
lo

113
Paraejemp
li
f
icarse mues
tralaestructu
radeunaclasede
l mode
lo.Alp
rinc
ip
iodela
rchivosevela
decla
rac
iónpackagequeestableceelpaqueteenelqueseencuen
traestac
lase
.Luegovienenlo
s
importsdeot
rasclasesydespués ladef
in
ic
iónprop
iadelac
lase.

Ob
jetoMuseo
.java
:

7
.9C
reac
iónde
lcon
tro
lado
r

Hemosd ichoyaque Sp ring MVCnosdasopo r


tepa ra uti
l
izarelconoc idopa t
rón MCV(mode l-
v
iew -cont
rol
ler)
.Tambiénhemosv is
tocómosec reaunac lasedel modelo.Ahora,parade f
iniruna
c
lasecomocon tro
l
ler(contro
lado r
)sedebeañad irene lencabezadodec laseyan tesde lnomb re
laetique
ta@ con
tro
l
ler .E s
tae tiquetacla
ramenteesp ropiadelmismof ramewo rk,ysirvepa raque
cuandoselevan teelcontextode Sp ring(a
linic
ia rlaap l
icación web)seiden t
if
iquelac laseque
posee esta et
ique
te como una c lase detipo control
ler, en
tonces elf rameworkinyec tarála s
dependenciasnecesar
iasyc rearáestaclasecomounbeanespec í
ficodet ipocont
rolle
r.E xis
ten
además muchaso t
rasetiquetasquesepuedenu t
ilizar
.

Exis
tendoscont
roladorespr
inc
ipalesenlaaplicación
. UnoesLoginContro
l
lerqueseencargade
procesa
rlaspet
icionesquetienenqueve rcone l mane
jodelases ióndeusuar
io. Ye
lo t
roes
MuseumCont
rol
lerquetienequeve rconel manejodelrestodelafunc
ional
idadde
lsis
temacomo
lacreac
ióndeobjetosyelre
llenadodegri
l
lasen treotras
.

MuseumCon
tro
l
ler
.
java
:

114
Enladefin
icióndees taclasevemosquep r
imeroseencuen t
ralaetiqueta @Cont
rol
lercomoya
hemosexplicadoan te
rio
rmen te
. Despuéstenemoslae t
iqueta @RequestMappingquedef
inecual
eslarutare la
tiva ala ap
licac
ión para estecont
rolador
; eso qu
iere dec
ir ques
ilaru ta dela
ap
licac
ión es /MuseumWeb , el con tro
lado
r escucha ra por pe tic
iones de la fo rma
/MuseumWeb /museo/
*.

Laet
ique
ta @Autowireddefinequeesasva
riablesseaninstanc
iadasal momen
toqueseiniciael
con
tex
to de Spr
ing. Enes tocasoestasvar
iablessonlosse rvic
iosenloscualeselcont
rol
ler
de
legaparaquee fectúenlalóg
icadenegociosapropiadas.Estasvar
iab
lesseránins
tanc
iasde
unac
lasequeimplemen teesain
ter
faz
.

Luego tenemos los mé todos que devue lven una v ista


. Nuevamen te
, con la et
iqueta
@RequestMappingseestádiciendoquecuandodesdeuneven todesdee lcl
ienteonavegador
invoque ala url/MuseumWeb /museo
/al
taUsuario.do, ésterequer
imientose mapea rácon éste

todo quelo quehace es devolver un ob
jeto delac lase Mode
lAndV iew,elcuall
levacomo
nombreident
if
icator
ioenestecaso“a l
taUsuario”
.E s
tohacequee lD ispatcherSe
rvle
tbusquey
devue
lvaunapág inadenombre“a l
taUsuar
io.
jsp”
.

En MuseumCon
tro
l
ler
.
java
:

115
Ot
ros mé todosimpo r
tantessonlos ques i
rven paracarga
rlas g r
il
las. De nuevovemos e lu r
l
mappingye l métodode lrequestqueenes tecasoespo r GET
.Lae tiqueta @ResponseBodyind ica
quelarespues tade l mé
todoset rans
formaenunasecuenc iadeca racterescone lformato Json
(JavaS cr
iptSimp le Objec
t Notat
ion)
. Nospa rec
ióquee ra mejoruti
l
iza rJsonenvezde XMLpo r
a
lgunasrazones :
● Jsones másfác ildeleerqueXML .Losob je
tosJSONsonp rotot
iposdeda tosloscualest
iene
propiedadesquepuedense racced
idasutil
izandoelpunto(objeto
.propiedad),porlocual,extraer
datosdeunob jetoJSONes másfác i
lqueex trae
rdatosdeunXML .
● JSONconsume menosdeanchodebanda ,porlotan
tosut ransmisiónes másráp ida
. Cuando
e
l se rv
idor devue lve un Json devue
lve unal ínea de tex
to en camb io s
i devolv
iera un XML
devolveráuntamaño másg rande
.

MuseumCon
tro
l
ler
.
java
:

7
.10C
reac
ióndelosse
rvic
ios

Comohemosd icho,elcont
rol
lerdelegaense rv
ic
ioslareal
izac
ióndelalógicadenegocios.El
cont
rol
ler posee un at
ribu
tollamado se
rvi
cioqueimp lemen
talainter
fazIMuseumSe
rvice.E s
ta
var
iableesinstanciadaporlaclase másacordequeimplementeesainte
rfaz
,ydeesaa cciónse

116
encarga elf ramework de Sp ring. En e ste caso
la ún ica clase que la imp lementa es
MuseumSe rv
iceImpl
. Cadac lasequecump lelafuncióndese rv
iciodebeposee rdose t
iquetas
:
@Servicey @T ransac
tiona
l. La p
rimerale dice a Sp
ring que establezca es
taclasecomo un
serv
icioyquepo rlotanto puedase rut
il
izada parainstanc
iar un atr
ibutoquesede fin
iócomo
@Autowireds
icoincideconeltipo
.Y lasegundaqueag reguetransaccional
idadalasoperaciones
.

MuseumSe
rvice
Imp
l.
java
:

Asuvezcadac lasedetipoServic
iodelegaenlacapas igu
iente
,lacapadeaccesoada tos
,que
enestecasoescump l
idapo relatr
ibu
to museoDao.E steat
ribu
totambiénesins
tanc
iadodeuna
c
lase aco
rde porel contex
to de Spr
ing. En es
te caso,la ún
ica c
lase quelaimp
lementa es
MuseumDAOImpl.

Cada DAO de la ap l
icación debe ex tende
r de la c lase gené r
ica y pa rametr
izable
H
ibernateDAOGene rico
Impl.Lospa ráme t
rosdeestaClasesonlaclasealacualvaapa ramet
riza
r
yeltipodelident
if
icadordecadaob je
todeesac lase
.Hiberna
teDAOGene r
ico
Impl ext
iendedela
c
lase H ibe
rnateDaoSupport, la cual es p rop
ia de Sp r
ing y p rovee acces
o a la c lase
H
ibernateTempla
tepararealizarlasoperac
ionesdeconsu
ltasobreobje
tos.

H
ibe
rna
teDAOGene
rico
Imp
l.
java

117
MuseumDAO
Imp
l.
java

7
.11Comun
icac
ión móv
il
/se
rvido
r

Laaplicación móv
i
lsecomunicaconelserv
idorpararecupe
rarin
formaciónsobree
l modelodela
encuesta,losobje
tos
,el mode
lodelatr
iv
ia,lal
istade museos.Paralogra
restacomunicac
iónla

118
ap
licac
ión móv
ilinvoca med
ianteunrequer
imiento HTTPun métodoenelcon
trol
lerquedevolve

lainformac
iónrequeridaenformatoJson
.Po rejemploels
iguiente mé
tododevuelveunSt
ringen
formatoJsonconlainformac
ióndetodoslos museos.

MuseumCon
tro
l
ler
.
java

7
.12Con
figu
rac
ióndelaap
licac
ión

7
.12
.1 Web
.xm
l

E
larch
ivoweb
.xm
lese
larch
ivodesc
rip
torde
laap
l
icac
ión
.

7
.12
.2app
lica
tionCon
tex
t.xm
l

Enestea
rchivosedefinenbeansdeSpr
ingquerea
l
izanlaconex
iónalabasededa
tos
,ot
rospa
ra
mane
jodelatransacc
ional
idadjun
toa
lainteg
rac
iónconhibe
rnate
.

119
7
.12
.3app
lica
tionCon
tex
t-secu
ri
ty.xm
l

Enes
tearch
ivodecon figurac
iónsees
tablecenlosparámetrosdesegu
ridaddelaapl
icac
ión
.
A
lin
ic
ioseindicanlasu r
lquesoninvocadasporlaaplicac
ión móv
i
lyquenot ieneres
tr
icc
ionesen
e
lacceso
.Esose indicacuandoseponeaccess= "pe
rm i
tAl
l".

Paraelrestodelasu r
lquesequ iereaccede
rsedebeestarauten
t
icado, esosedeclaracuando
sedeclaraaccess="
isAuthen
tica
ted()
".
Se decla
ró en elproyecto unaclasel
lamada Cus
tomAuthent
ica
tionManage
r que esla quese
encargadegua rda
rene lcontex
tode laap
l
icac
iónelusua
rioy
losrolesde
lusuar
io.

120
7
.12
.4jdbc
.prope
rt
ies

E
stea
rch
ivode
f
ine
lospa
ráme
trosdeconex
ióna
labasededa
tos
.

D
iag
ramadebasededa
tos

Acon
tinuac
iónse mues
traa mododepan
tal
lazogene
rale
ldiag
ramadebasededa
tos
.

121
F
igu
ra7
.3:D
iag
ramadebasededa
tos

122
Cap
ítu
lo8
.Imp
lemen
tac
ióndelaAp
licac
ión Móv
il

Enelcapítu
loanter
iorhemosde ta
lladocomofuelaimp
lemen
tac
iónde
lproto
tipo web
. Eneste
cap
ítulo expl
ica
remos sim i
larmente de
tal
les de imp
lemen
tac
ión y cuest
iones técn
icas
re
lacionadasalp
roto
tipo móv
il
.

8
.1P
roto
tipodelain
ter
faz

Para desa r
rolla
r una ap l
icac
iónresu l
taimpo rtanteconoce
r además de l SDK de And ro
id, un
conjuntodereg lasbás icasded iseñodein terfacesdeusuario. Ademásdelascues t
ionesde
d
iseño exp licadas enlosapa rtadosan ter
iores,se encuen
tranlos patronesde d iseñoquese
def
inieroncomounaso luc
iónglobalpa raunp roblemarecu
rrente.Parade f
in
irlainterfazgráf
ica
noshemosbasadoenPa t
ronesAnd roid[61 ],unrecursoo
rientadoad iseñado resdein te
racc
ión
queneces itenreso lverdudassob rediseñoypa t
ronesdecompo rtamientotípicosquesedanen
lasap l
icaciones. Unpa t
róndein te
racciónesunresumendeunaso luciónded iseñoqueseha
demos tradoquefunc iona másdeunavez .E stacomunidadded iseñado resaconse jauti
li
zarlos
patrones que desc r
iben como una gu ía y no como unaley .C las
if
icanlos pa t
rones enlas
s
igu ien
tesca tegorías:

● Mane jo de Da tos: Secompone de pa tronesre lac ionadoscon mos trar


,ve r,o rdena r
,fi
ltrar,
navega rybusca renuncon jun todeda tos .Po re jemp lo,lasap l
icacionesdebúsqueda ,ba r
rasde
estado,e tc.
● En tradadeDa tos:Cub relasfo rmascomunesenquelosusua riospuedeninse rtarda tosenun
contextode term inado.Po re jemplo,cuandoe lusua rioin teractúaconlosd i
feren tes w idgetsdeun
formu lario(ca jasdetex to,checkboxes ,e tc).
● Navegac ión : Lanavegac iónese lp rocesodei rdeunluga rao tro.Tienedosob jet
ivos;en
pr
ime rluga r,la navegac iónle pe rmite a lu sua r
iosabe r quéin formación es tá dispon ible enla
apl
icac ión;yensegundoluga r,ayudaalosusua r
iosaencon trarlain fo
rmac ióndeseadalo más
rápidopos ible.Po rejemp lo: menúscon tex tuales ,ba rradehe rram ientas,etc
.
● No tificaciones : Lasno ti
ficacionesled icena lusua r
ioace rcadeuneven toqueocu rreenla
apl
icac ión. Puedequeena lgunasdee llasserequ ie radelarespues tade l usua rio,yeno tras
ocasioneslano t
if
icacións imp lementesum inistrea lgunain formac ión. Enes teapa rtadodesc riben
cómou ti
lizarlos mensa jesdet ipotoast, lasno t
ificac ionesy lasba rrasdep rogreso .
● Pe rsona l
iza r:Po r med iodelape rsona l
ización ,losusua riossoncapacesderea lizarcamb ios,
guarda rin formac iónpe rsonalyadm inistra rajus tesdesegu ridadene ldispos i
tivo And roid
. Aqu í
describenpa tronespa rahace rpan ta
llasde login,c rea rcuen tas,etc .
● In te racciones de pan talla:Lasin te raccione sdepan ta
llainc luyetodaslasin teraccionesque
puederea lizare lusua rioconsudedosob relapan tallaaex cepciónde l“pulsac ións imp le”yaque
estaacc ións iemp reco rrespondea lges todese lecc iona r
.
● Soc ial: Los pa t
rones de d iseño con tenidos en es ta ca tego r
ía,le pe rmiten a l usua rio
comun ica rseein teractua rcono trosusua rios. Po re jemp lo,responde rac iertocon tenidoat ravés
deuncomen ta r
io,hace runava lo
racióndea lgúncon tenido ,etc.

Acon
tinuac
ióndescr
ib
iremoselpro
tot
ipodelain
ter
fazg
ráf
icadelaap
l
icac
ióndesc
rib
iendocada
unodelospat
ronesdediseñou
ti
l
izados
.

Las pan ta
l
las dela apl
icación va a mantene
r unfo
rmato genera
l compues
to po
rt res partes
pr
incipales
:enlapartesupe r
iorunencabezado,dondese muest
raeliconodelaaplicación;enel
cent
roe lconten
idoprinc
ipalydebajounp iedepágina
,dondesede ta
llanqu
ienesdesarrol
laronla
ap
licación.

123
F
igu
ra8
.1:Fo
rma
togene
raldelaap
l
icac
ión

1
. MenúP
rinc
ipa
l

F
igu
ra8.2
: menúpr
inc
ipa
l
Enel menúpr
inc
ipa
l,e
lcontenidoestacompuestopo
runtab
lerodeopc
ionesp
rinc
ipa
les
,elcua
l
fuediseñadoapar
t
irde
lsiguientepat
róndediseño
:

Tab
lerodeopc
iones

124
F
igu
ra8
.3:Pa
trónT
able
rodeopc
iones

E
l tab lero de opc iones es un pa trón den tro dela ca tegoría “Navegación” menc ionada
anter
iormen te.Untab lerodeopc ioneses lapan talladebienven idadelaaplicación
,p roporc
ionaun
puntodepa rt
idapa rae lusuario.Además , muestraloquee lusua r
iopuedehace rconlaap l
icación
.
E
ltable rodeopc ionespuedese restáticood inám ico.
Untable rodeopc ionesp roporcionafác i
lacce soalasta reasyfunc ionesimpo r
tantes.Lasopc iones
se mues tranconun icono másunt í
tuloenund iseñoconfo rmadecuad r
ícula.
Untab lerodeopc ionessepuedeu ti
liza rcuandolaap licac
iónes táor
ientadaalasta reasye s
compa tiblecon mú l
tiplestareasofunc iones.Esidea lsisequ iereproporc
ionarunav is
ióngene ra
l
deta reasin teresantes, nuevas o util
izadas conf recuencia. Untab le
ro de opcionesse puede
combina rconuna ba r
radeacc ión,po rejemplo ,parap roporcionarunaopc ióndebúsquedapa ra
losusua r
ios.[62]

Aspec
tospos
it
ivos
:

● Unusua
riot
ieneunfáci
laccesoalasta
reas másimpor
tan
tes
● Of
receunav
isióngenera
ldelafunc
iona
lidaddelaapl
icac
ión
● Ayudaa
lusuarioaaccederdefo
rmarápidaalelemen
to másu
ti
l
izado
.

Aspec
tosnega
tivos
:

● Untablerodeopc
ionesocupaunag
rancant
idaddeespac
ioenpan
tal
la
● Lasopcionesquese mues
tranene
ltab
leropuedese
rperc
ib
idacomolasún
icasca
rac
ter
íst
ica
s
delaap
licación

E
jemp
lo:Tw
it
ter

125
F
igu
ra8
.4:Pan
tal
ladein
ic
ioTw
i
tte
r

Lapantal
ladeinic
iodeTwit
teresuntable rodeopc
iones,que muestralasfunc
iona
lidades más
importan
tes
. Enes tacap
turadepantallatambién mues
tralacantidaddenuevostwee tsque
hay
. La bar
ra de acc
ión p
ropo
rciona enlacesráp
idos a
linic
io dela aplicac
ión
, búsqueday
Twi
tte
r.

L
istados

F
igu
ra8
.5:Ca
rgade
lis
tadode museos

E
ldiseñodelosl
istadosserea
l
izóenbasea
lsigu
ien
tepa
trónub
icadoden
trodelaca
tego
ría
“Mane
jodedatos
”:

126
L
istaes
tát
ica

F
igu
ra8
.6:Pa
trónded
iseñoL
is
taE
stá
ti
ca

1 A
lca rgarunalistaestát
ica,espos ib
le mostra
rund iá
logodep rogresoparaquelosusua rios
sepanquee lcon ten
idosees tácargando.E stosehacegene ralmentecuandoseneces i
ta
másdexsegundospa racarga re
lcontenido.
2 E
l contenido se mues tra en unal is
ta. Lose lementos contienen unt í
tulo y sue leni r
acompañadosdeuniconooimagen .E spo sib
le mostrarinformaciónadic
ional,siemp rey
cuandoseano tor
ioqueset ratadeuna l
ista.
3 Cuandoe lusua r
iose muevecone ldedoenlad irecc
iónqueé lqu ie
reparadesp lazarse(en
estecasohac iaa rr
iba)
,lalistase muevehac iaarr
ibaat ravésdelapan ta
lla,ylosnuevos
e
lemen tossonv is
ibles.
4 Cuandola pan ta
lla es
tá aún en mov imiento, unindicador mues trala posic
ión delos
e
lemen tosquesevenenlal istacompleta
.Cuandoe lusua r
iode jade moverseylal istade ja
de moverse,elindicadordesaparece.

Unalistapuedese rú
t
il muchasvecesypo rlotantosepuedeaplicarcon muchafrecuencia
.La
l
istaesuna mane ras
impleyd irec
tapara mostra
relemen
tosdenavegación,espec
ialmentecuando
e
l núme ro de e
lementos no es muy ex
tensoyse neces i
ta que e
lcontenidoseav is
toen una
panta
lla. Los e
lementos delal ista se colocan en un so
lo nive
l,lal is
ta es desplazab
le
ver
tica
lmen te
.[63
]

Aspec
tosPos i
tivos
● Todoelconten
idoes
táenlapan
tal
laa
lmismot
iempo
,nohayqueespe
rarop
res
iona
rpa
rave
r
máscon
tenido

Aspec
tosNega t
ivos
● Puedetomar mást
iempoparaca
rga
r
● Requie
re másdesplazam
ien
toquee
lcon
ten
idopag
inado

E
jemp
lo:Engadge
t
127
F
igu
ra8
.7:L
is
taes
tát
icaenlaap
l
icac
iónEngagde
t

Cuandoelusua
riocargaunanuevapáginadeart
ícu
losen Engadge
t,se mues
trauncuad
rode
d
iálogodeprog
reso
.Enlapa r
tein
fer
iordelapág
inas
iguien
tequecont
iene20elemen
tos
,lasdo
s
f
lechassepuedeut
i
lizarpa
raelpasohac
ialapág
inasigu
ien
teohaciaat
rás
.

E
lemen
tode
l Museo

F
igu
ra8
.8:Pes
tañapa
rae
ltex
to,aud
ioyl
is
tadodeimágenes

128
F
igu
ra8
.9:Pes
tañaspa
rae
lli
stadodev
ideosyjuegos

Pa
ralavisua
l
izacióndelosd
ife
rentescon
ten
idosde
lelemen
toseu
t
il
izóe
lsigu
ien
tepa
trón
,
ub
icadoenlacategor
ía“Navegac
ión”
:

Pes
tañas

F
igura8.10:Pat
rónded i
señoPes tañas
E
lcon
ten
idosedivideentrespestañas.Cadaficharepresentaunaspec
tooseccióndeltema.
1 Laprimerapestañaestáaquíselecc
ionada.Se mues t
rain
formac
iónsob
ree ltema.
2 Cuandolasegundapes tañasese lecc
ionaseresa ltayelconten
idocor
respondienteaese
aspectose muest
ra.

129
3 Cuandola ú
lt
ima pes
taña se se
lecc
iona seresa
lta y e
l con
ten
ido co
rrespond
ien
te se
mues
tra
.

Laspestañasseu t
i
lizancuandosedesea most
rarunacan
tidaddeinfo
rmaciónsobreuntemaa
d
ist
ribu
irend i
feren
tessecciones
.E s
tassecc
ionesse muest
ranenunaf i
laho r
izonta
l de2a5
pes
tañas.Laset
iquetasse muest
ranenlase
ccióndelapes
taña.[64
]

Aspec
tosPos
it
ivos

● Maneradirectaparadis
tr
ibu
irdatosat ravésdedi
feren
tessecc
iones
● Or
igina
lmen te prov
iene deinterfaces web, porlo quelos usuar
ios p
robab
lemen
te es

famil
iar
izado

Aspec
tosNega
tivos

● Puedeocupa
r muchoespac
ioenlapanta
l
la
● Cuandohay másde3pestañasnoqueda muchoespac
iopa
ralae
t
ique
ta.

E
jemp
lo:Facebook

F
igu
ra8
.11
:Pes
tañasenFacebook

Enfacebook se selecciona un usuar


io yla in formac
ión sobre ese usua
rio se d
iv
ide ent
res
pestañas
.En lapr
ime raimagensese lecciona lapr
imerpestañas: muro
.
Tocandoen lasegundapes tañasevisua
liza lainfo
rmaciónsobreelusuario
.
Yenlate rce
rapestañase mues t
rantodas lasfotosdelusuario.
Formu la
rios

130
F
igu
ra8
.12
:Vi
stadelaEncues
ta

Paralaentradadedatosdelosusua
riosenlosfo
rmu
lar
iosseu
t
il
izóe
lsigu
ien
tepa
trón
,ub
icado
enlacategor
ía“En
tradadedatos
”:

Expand
iryocu
lta
rtec
lado

F
igura8 .13
:Pat
róndediseñoExpandi
ryoculta
rteclado
1 Cuandoseseleccionauncampodeen trada
2 Lapanta
llasedesp lazahac
iaarr
iba
,pe rm
it
iendoqueeltec
ladose incluyaenpan
tal
ladebajo
delcampodeen trada.
3 E
lcampo de en tradase destacay e
ltextose puede introduc
ir en elcampo de en
trada
usandoeltec
lado.

131
4 Cuandoe ltecladoestáocul
to,lapantal
lavuelveasupos ic
iónor
ig
ina lyeltex
toint
roduc
ido
apareceenelcampodeen trada.
Seut
il
izanpa raorganiza
relespac
iod ispon
ib
leentrelaapl
icac
iónyeltec ladoenpanta
l
laycuando
enlaaplicac
iónloscamposdeen tradaseen cuen
tranpordebajodela m
itaddelapanta
lla
.[65]

Aspec
tosPos
it
ivos

● T
anto
laap
l
icac
iónye
ltec
ladosonv
is
ib
les
:elcon
tex
tode
laen
tradaquedac
laro

Aspec
tosNega
tivos

● Requ
iereque
lapanta
l
lase mueva
,loquepodr
íaresu
lta
rcon
fusopa
rae
lusua
rio
● E
lconten
idonopuededesp
laza
rseadecuadamen
te.

E
jemp
lo:Ca
lenda
rio

F
igu
ra8
.14
:Ejemp
lode
lpa
trónded
iseño“E
xpand
iryocu
lta
rtec
lado

Laconf
iguracióndeunnuevoeven todecalendar
ioincluyeuncampodeen t
radaparalaubicac
ión
de
l even
to. Cuandosese lecc
iona,todalapantal
lasedesp laza,permi
tiendoquee ltec
ladose
ub
iquedeba jodelcampodeen trada.Sepuedeintroduci
rtex
toye lbotóndeabajoalaizqu ie
rda
sepuedeu t
i
lizarpa
raocul
tareltecladoyencuyocasolapan ta
llavue
lveasupos ic
ióno r
ig
inalyel
tex
toint
roducidose mues
traene lcampodeen t
rada.

Ayuda

132
F
igu
ra8
.15
:Vi
stadelaA
yuda

Pa
rae
ldiseñode
laayudaseu
t
il
izóe
lsigu
ien
tepa
trón
,ub
icadoen
laca
tego
ría“Mane
jodeda
tos
”:

L
istaExpand
ible

Figura8.16:Patrónded iseñoListaExpand ib
le
Lose lementosseo rgan
izaneng rupos(a menudopo rcategoría)enunal is
tadedosn ive
les.Los
grupospuedenexpand irsepa ra mos
trarasush ijos.Laslistasexpandibles mues
tranunindicado
r
juntoacadae lemento
,ind
icandoe lestadoactualde lmismo :
1 Con t
raído
2 E xpandido
.
Laslistasexpandib
lessonú t
ilescuandoe lcontenidotienequese rvis
ib
leenla mismapantalla
.El
contenidosepuedeag ruparenca tegor
íasqueaba rcandosn iveles
.
133
Aspec
tosPos
it
ivos

●Lain
formac
iónsepuedecompa
rarcon mayo
rfac
il
idad
●Ahor
raespac
ioysecent
raenelpr
imern
iveldelaInfo
rmac
ión
.

Aspec
tosNega
tivos

● Paraunagrancant
idaddeinformac
iónenunapan ta
l
lae
ldesplazamien
toesinev
itable
● Lainfo
rmaciónnoesinmediatamentevis
ib
lea menosquelasl
istasseexpanda
.Po rlotan
to,es
d
if
íc
ilcompara
r la
info
rmaciónen losn
ivelessecunda
rio
.

E
jemp
lo:RSSFeeds(HTCDes
ire
)

F
igu
ra8
.17
:Ejemp
lopa
trónded
iseñoL
is
taExpand
ib
le

Mues
traunal
istaenestadocont
raídoconunind
icado
rhac
ialaderecha
.Altoca
renunelemen
to
dela
lis
ta,se mues
trae
lestadoexpand
idodele
lemento
,cone
lind
icadorapun
tahac
iaaba
jo.

Ca
rgadeda
tosremo
tos

134
F
igu
ra8
.18
:Ca
rgadeda
tosremo
tos

Enlaspan
tal
lasenlasqueesnecesa
rialacomun
icac
iónconelse
rvido
rparapode
rvisua
l
iza
rlos
datosseu
t
il
izóels
iguien
tepa
trónub
icadoenlaca
tego
ría“No
t
if
icac
iones”
:

RuedadeP
rog
reso

F
igura8.19
:Pat
róndediseñoRuedadep rogreso
1 E
lusuariopu
lsasobreunelementoparaab
ri
rlo.
2 Unapáginaenblancoconunaruedadep rogresoind
icando a
lusuarioquee
lcon
ten
idose
es
tácargando.
3 Cuandosecarga,se mues
trae
lconten
ido
.

135
Unaruedadeprog
reso seut
i
lizapa
raindica
rqueunaapl
icac
iónseencuen
traocupadaca
rgando
lain
formac
ióna most
rar
. Sepuedeapl
icaraunapanta
l
lacompleta
,cuandotodalapág
inat
iene
queserca
rgada
,osóloaunapa r
tedelapágina
.[66
]

Aspec
tosPos
it
ivos

● E
lusuar
iosabequeseestácargandoelcon
tenido
● Deb
idoaquelacargadelcontenidoserea
lizaene lin
ter
iordelapanta
l
la,enlugardeenla
par
tesupe
rio
rdela m
isma,e
lusua r
iopuedei
rsefáci
lmenteaotrapa
rtedelaap
licac
ión

Aspec
tosNega
tivos

● Elusua
rionosabecuán
tot
iempota
rda
ráe
lcon
ten
idoense
rca
rgado

8
.2Imp
lemen
tac
iónde
lpro
tot
ipo

8
.2.1C
reac
iónde
lproyec
to

Comod ij
imosan te
riormenteAndro
ido freceunplug
inpa raE c
l
ipse,elADTplugin
,queex t
iendela
funciona
lidad de este yfac
i
li
ta el desarro
l
lo de ap
l
icac iones pa
ra Andro
id. Una vezinsta
lado
debemosdesca rgarlasSDKquee legimosylasherramien tasnecesar
iasparaeldesarrol
lodesde
e
lAnd ro
idSDKandAVD Manage r.
Paracrearlaap
licacióndesdeecl
ipsedebemosi ralaopc iónF i
le->New- >AndroidProjec
t

F
igura8.20:Crearp
royec
toAnd
roid
Luegonosped
iráquecon
f
igu
remoslassigu
ientesopc
iones
:

P
rojec
tName:esladenom
inac
ióndeEc
lipseparanues
trop
royec
to.At
ravésdees
tenomb
rese
c
rearáunaca
rpe
taenelwo
rkspacedeE
clipse
.Ennuest
rocasoserá“MuseumMob
i
le”
.

App
lica
tionName
:ese
lnomb
rede
laap
l
ica
ción
,cómoapa
rece
ráene
ldispos
i
tivo
.

136
PackageName :Es
tecampodes
ignaunpaque
tedeJava
.Ennues
trocasose

info
.un
lp.museum
.

M
inimunSDK : represen
talaversión m
ínimadeAndro
idSDKquesedebeinsta
larenla
d
ispos
it
ivoparaqueseejecuteestaapl
icac
iónenpar
t
icula
r.No
rma
lmente,es
tenúme rose
co
rresponde
ráalnive
ldelaAP Iqueseelig
iópara
laapl
icac
ión
.Ennuest
racasoelegimosla8que
co
rrespondealavers
ión2.2deAnd ro
id.

8
.2.2Es
truc
turade
lproyec
to

F
igu
ra8
.21
:Es
truc
turade
lproyec
to

La carpeta/ src/ contienetodo e l códigofuen te dela ap lica c


ión.D ividimoslasc lases enlos
s
iguientespaque tes:
● activity:con t
ienetodas lasac tiv
idadesnecesa riasparanues traap l
icación:
● data: con tienelas c lases necesa r
ias pa ra elalmacenam iento de da tos necesarios dela
aplicación
.
● http:con t
iene lasclasesnecesa riaspa ralacomun icacióncone lservidor
.
● json :contienelasc lasesnecesa riaspa rae lpaseodeda tosdet ipojson.
● mode l: con t
iene uncon junto dec lasesu ti
l
izadas paraenv iaryrec ibi
rinfo
rmacióndesde e l
servido rypa raes t
ructura
ro trosda tosnecesa riosparalaap licación.
● uti
ls:aqu íseencuen t
ranlasc lasesques irvended i
ferentesu ti
l
idadesen laapl
icación.
● views :todas lasclasesu t
i
lizadaspa ralav is
tade laaplicación .

And
roidMan
ifes
t.xm
l

137
Aquíse muest
raunapar
tedelarch
ivode man
if
ies
todelaap
l
icac
iónenlaquesede
f
inenva
rias
carac
ter
íst
icasde
laap
licac
ión
:

● <uses- sdk>dondeseespec if
icalave rsión mín
imareque r
idaporlaap licac
ión.Ennues trocaso
enlave rs
ión8 .
● <uses- permission>Seu ti
l
izapa radec larartodoslospe rmisosquee lusua r
iodebeo to
rgarpara
e
lfuncionam ientode laap l
icación.Ennues t
rocasoneces itaremoselpe rm isodeaccesoain ternet
,
conocereles tadode laconex ióna inte
rne ty lauti
l
izaciónde lacámara.
● <app l
icat
ion>sedesc r
iben lascaracteríst
icasbásicasde laapl
icaciónysusac t
ividades
.
● <activity>definecadaunade lasactiv
idadesdelaap l
icaciónysusca racte
rís
t
icas .
● <intent-f
il
ter>espec i
ficaelp ropósi
todelaa c
tiv
idadyden t
rodees teseind icalaacc iónyla
categor
ía de l m ismo. Po r e jemplo la acc ión and roid
.in
ten
t.act
ion .MAIN y la ca tegoría
andro
id.in
tent.category.LAUNCHERind ica que esla ac t
ividad pr
incipa
l dela ap licac
ión quese
e
jecutará.

8
.2.3Componen
tesdelaap
licac
ión

Como d
i
jimos an
terio
rmen
telas ac
t
ividadesrep
resen
tan e
lcomponente p
rinc
ipa
l delain
terfaz
grá
f
icadeunaaplicac
iónAnd
roid
.Unaac t
iv
idadesimp
lementadacomounasubclasedeAct
iv
ity.A
138
cont
inuac
iónse mues
traat
ravésded
iag
ramasdec
laseslasd
ist
intasac
t
ividadesquecon
tienela
ap
licac
ión
.

F
igu
ra8
.22
:Diag
ramadec
lases(A
ct
iv
ity
)

F
igu
ra8
.23
:Diag
ramadec
lases(MuseoA
ct
iv
ity
)

139
F
igu
ra8
.24
:Diag
ramadec
lases(L
is
tAc
ti
vi
ty)

F
igu
ra8
.25
:Diag
ramadec
lases(TabAct
iv
ity
) Figu
ra8
.26
:Diag
ramadec
lases
(Expandab
leLi
stA
cti
vi
ty)

La mayor
íadelaac t
iv
idadesdelaap l
icaciónt
ienene lm ismocompo r
tamiento.E sporeste motivo
quedecidimosimp lemen ta
rclasesabs t
ractaspa raquerea licene lcompo rtamientocomúnalas
demás act
ividades.E stas ac
tiv
idadesson MuseoA c
tiv
ity y MuseoL istAc
tiv
ity
. Ambast ienen un
comportamientosimi
lar
,lad i
ferenc
iaesque MuseoA c
tiv
ityextiendede laclaseand ro
id.app
.Activi
ty
y MuseoL
istActiv
i
tyextiendedelac laseand ro
id.app.L
istAct
iv
ity.E staúl
timaseu ti
l
izapa raaquellos
casos enlos que es necesa r
io mostrar unlistado de elemen tos. Acontinuac
iónse de ta
lla el
comportamientodecadaunadee l
las.

MuseoAc
tiv
ity

140
MuseoA
ct
iv
ity
.
java

Es
ta clase además de ex tender dela c lase and ro
id.app
.Act
iv
ity,imp lementa lainter
faz
in
fo.unlp
.museum.h
ttp
.I_A c
tiv
ityTask dela cual hereda el comportamiento necesa
rio parala
comunicac
iónconelservidorque másadelanteexplicaremos.
Es
taclasecont
ienecuatropropiedadesovariablesde ins
tanciapr
inc
ipales:

Estado:es tárepresentadapo rlaclase Es


tadoA c
tiv
ity
.
java,seu t
il
izap a
raguardare les
tadoene l
queseencuen t
ralaac t
ividadenun momen todado.E s muyú t
ilpa raloscasosenlo squese
producencamb ios entiempo de e jecuc
ióncomo po rej
: uncamb io deo r
ientac
ión depan tal
la.
Cuandouncamb iodeo rientac
iónsep roducela act
iv
idadsedes truye,esdecir
,sellamaa l método
onDes t
roy(
)yluegosel lamanuevamen teal métodoonC reate
()
.Po rlotanto
,esnecesa r
iogua rdar
e
l es tado en el que se encon t
rabala a ct
iv
idad para poder restaura
rlo poste
rio
rmen te.A
cont
inuaciónse muestralosda tosquenecesitamosgua rdardelaactiv
idad:

Es
tadoAc
tiv
ity
.
java

sharedP
reference:es teobje
toseutil
izaparateneraccesoalosda tosquenecesi
tamosguardar
enlaapl
icac
iónpa racompa r
ti
rlosen
trelasd
iferen
tesact
ividades
.Enand ro
idsepuedea lmacena
r
info
rmacióndediversas maneras
.Paragrandescant
idadesdeda tossedisponedebasesdedatos
141
medianteSQLite[67]
.Paraguardarpequeñasconfigu
racionesodatosúnicos
,lap
latafo
rmaponea
nuestradispos
iciónlac
laseandroid
.conten
t.Sha
redPreferences
.E s
taclasealmacenainfo
rmac
ión
accesibledesdecualqu
ierac
t
ividaddelaaplicac
ión.

Sha
redP
refe
rences
.java

Laclase SharedPre
ferences[68]pe rm
iteguardaryrecupera
rpa respers
is
tentesclave-
valo
rde
t
iposdeda tosp r
imi
tivos
:booleanos,reales,en
teros
,longystr
ing
.E sdec
ir,cadaunodelospa res
es
tarácompues taporuniden t
if
icadorúnico(p.e
.“email
”)yunvalorasoc
iadoad ichoiden
t
if
icador
(p
.e.“prueba@ema i
l.com”)
.E s
tosda tosse mant
ienenduran
telasesióndelusuar
io ypermanecen
apesardequesa lgamosdelaap l
icación.

LaAP Iparael mane jodees tasp referenc


iases muysenc il
la.Todalages t
iónsecen tral
izaenla
c
laseSha redPrefences,querep resentaráaunaco lecc
ióndep re
ferencias
. Unaap l
icaciónAnd ro
id
puedegestionarvariascoleccionesdep refe
rencias,quesed ife
rencian medianteuniden t
if
icador
ún
ico. Para obtene r una re fe
rencia a una co lecc
ión determinada ut
il
izaremos e l mé todo
getSha
redP re
fences()alquepasa remose lident
ificadordelacolecciónyunmododea cceso. El
mododeaccesoind icaráquéap licacionestendránaccesoalaco lecc
ióndep referenciasyqué
operac
ionestendránpe rmi
tidorealizarsobreel
las.A sí
,tend
remost resposib
il
idadesp r
incipales
:

● MODE_PR
IVATE
.Só
lonues
traap
l
icac
iónt
iene accesoaes
tasp
refe
renc
ias
.

142
● MODE_WORLD_READABLE .T
odaslasapl
icac
ionespuedenlee
res
taspre
ferenc
ias,perosó
lo
lanuest
ra mod
if
ica
rlas
.
● MODE_WORLD_WR ITABLE
. Todas las apl
icac
iones pueden lee
r y mod i
fica
r estas
p
refe
renc
ias.

Unavezquehemosob ten ido unare ferenciaanues traco leccióndep re


ferencias,yapodemos
obtene r
,inse r
taro mod i
ficarp re
ferenc
iasu t
il
izandolos mé todosge topu tco rrespondiente saltipo
deda todecadap referencia
Para actualizar oinse rtar nuevas p referenc
ias e lp rocesose ráigua l desenc i
llo,conla ún ica
d
iferencia de quela ac tua l
ización oinse rc
ión nola ha remos d i
rectamen te sobre e l objeto
SharedP references,s inosob resuob je
todeed iciónSha redPreferences .Edi
tor.Aes teúl
timoob jeto
accedemos med iante e l mé todo edi
t() dela c lase Sha redP re
fe rences. Una vez ob tenidala
referencia al edito
r,u t
il
iza remoslos mé todos pu t correspondientes alt ipo de datos de cada
preferenciapa raactua l
izar/
inse r
tarsuvalor,pore jemplopu tSt
ring(clave,valor)
,pa raactualizaruna
preferenciadet ipoS tr
ing .F inalmente
,unavezac tua
lizados /
insertadostodoslosda tosne cesario
s
l
lama remosa l métodocomm it()paraconfi
rma rloscamb ios.
Ennues t
rocasou t
i
lizamoses taclasepa ragua rdarel museoquese leccionae lusua r
iocuando
ingresaalaap l
icac iónye lob je
toqueseencuen travisua l
izandoac tua
lmen te,queexp licaremos
con másde tal
le másade lan te.

dialog: esta va r
iable es u t
il
izada pa ra man tenere ld iálogo que se encuen tra v
isual
i zando el
usuario en un momen to dado . De es ta mane ra, podemos mod if
icar su es tado en cua lquie
r
momen tode lciclodev idadelaac t
ividad. Pa rano ti
ficara lusua r
ioutil
izamosd iá
logosdea lerta.
Estetipoded iálogose limi
taa mos t
rarun mensa jesenc i
l
loa lusua r
ioybo tonesdecon f
irmación.A
estosd iá
logosloscons tru
iremos med iantelac laseA ler
tDialogy másconc re
tamen tesusubc lase
A
le r
tDialog
.Bu i
lde r
. Su u til
ización es muy senc il
la, bas tará con c rea r un ob jeto de t ipo
A
le r
tDialog
.Bu i
lde r y es tablecer las p ropiedades de l d iálogo med iante sus mé todos
correspondientes:título(se tTit
le(
))
, mensa je(se tMessage (
))y e ltextoycompo rtamiento delos
botones(se tPosit
iveBu tton()yse tNega t
iveBu t
ton (
))
.Acon tinuación mostramoslaimp lemen tación
deunodelosd iá
logosu ti
l
izadosenlaap l
ica c
ión ,elm ismoseu t
il
izapa rano t
i
ficaralusua rioque
nohayconex iónaIn ternet
:

MuseoA
ct
iv
ity
.
java

143
Enestecasotienedosbotones
:“Conf
igu
rac
ióndered"
,queseu t
i
lizapara mos
tra
ra lusua
riola
conf
igu
raciónderedde ld
ispos
i
tivopa
raquedeesta manerapuedasoluc
ionarelprob
lemadela
conex
ión,yelbotón“
Inten
tardenuevo
”queperm
i
teejecuta
rlata
reaactualnuevamente
.

objeto: es ta propiedad se u t
il
iza pa ra guardare l ob jeto quefuere tornado en e
l mé todo
onRe ta
inNonCon f
igu ra
tionInstance (
). Como menc ionamos an teriormen te se pueden p roduci
r
camb iosdecon f
iguracióndu rantelaejecucióndelaac tividad .Sia lreiniciarlaac t
iv
idadserequiere
recupe rarg randes con juntos de da tos se puede a l
ivia rla ca rga dere inic
ial
iza
rla act
ividad
mediantelare tenc
ióndeunobje tos ta
tefu
lcuandolaac tividadsere iniciadeb idoauncamb iode
configuración.
Paraconse rvarunob je
todu ranteuncamb iodecon figuraciónent iempodee jecución:
1 Hayquesob reescribirel mé todo onRe tainNonCon figurationIns tance (
) paradevo
lve rel
objetoquesedeseaconse rvar
.
2 Cuando la ac tividad se c rea de nuevo , se l lama a l método
getLas tNonCon figu rat
ion Instance()parare cupe rare lobjeto
.[69 ]

MuseoA
ct
iv
ity
.
java

Cuando elsistema And roid apagala activ


idad debido a uncamb io decon f
igurac
ión,l lama al

todoonRe ta
inNonCon f
igurat
ionIns
tance()entree l mé
todo OnS top (
)y OnDes troy(
)delciclode
v
ida dela ac tividad. Enlaimp lementación de onRe tainNonCon figuration
Instance(
), se puede
devolvercualquierob jetoqueseneces itapa rarestaurare f
icientemen tesues tadodespuésde l
camb iodeconfiguración.
Unescena r
ioene lquees toesvaliosoess ilaaplicac
iónca rgaunag rancan tidaddeda tosdesde
la web.S ielusua riocamb ialao r
ien
taciónde ldisposi
tivo,sere in
icialaac tiv
idadylaap licac
ión
debe volver arecupe rarlos datos esto pod r
ía serlen to
. Po rlotan to en nuestro caso no s
guardamose les tadodelaac t
iv
idad,m ientrasquee lrecupe rodelosda tosdesdee lservidorse
rea
lizaensegundop lano.

C
iclodev
idadelaac
tiv
idad

Acont
inuac
iónsedeta
l
lalaimp
lementacióndelc
ic
lodevidadelaact
iv
idadparaquesecompo
rte
co
rrec
tamentedeacue
rdoalosd
ist
intoscambiosdees
tadoqueestapuedesu
fr
ir
.

OnC
rea
te(
)

MuseoA
ct
iv
ity
.
java

144
E
l mé todo OnC rea te()sellamaalc rea
rlaactiv
idad.E sdondesep repa
ralain te
rfazgrá
ficadela
pantal
la.Enes tecasolav is
tadelaac t
ividaddependerádelaactiv
idadqueex t
iendedela m isma.
Para ello se de f
inió un mé todo abs t
rac
to getLayou
tXML(), cuya func
ión es re tornarid
correspondiente alav ista dela ac t
iv
idad dent
ro de c
lase R.Median
telal lamada al mé todo
se
tCon tentView delac lase Act
ivityleindicamos a Andro
id quevista que
remos mos trar enla
pantal
la.Elidre ferenc
ia a un archivo XMLdonde describ
imoslain te
rfaz de usuar
io para una
ac
tividad determ inada . Po
rejemp lo:R .
layout
.sp
lash_
layoutre
ferencia alavista dela act
ividad
Sp
lashAppA ct
ivity.

Ademásseinic
ial
izalava
riab
lesha
redPre
ferencesysel
lamaa
l métodoabs
trac
toin
ic
ia
liza
r()pa
ra
quecadaac
tividadrea
l
iceloqueneces
i
teal momentoquesec
realaact
iv
idad.

OnResume
()

MuseoA
ct
iv
ity
.
java

Es
te métodosee jecu
tajus
toantesdequeelusuar
iopuedain teractua
rconlaac t
ividad
,po rloque
seuti
l
izapa raaquel
los momen
tosenlosqueelusuariope rd
iólaconexióndeinternetyde cidei
ra
lacon f
igu
ración deredparasoluciona
relprob
lema . Luego que el usua
rioreal
izóloscamb ios
cor
respondien
tesenlacon f
igu
raciónderedparaconec tarsealarednuevamen te,ene l método
OnResume()seva l
idasiseencuent
raenesas i
tuac
iónys iesas í,seejecutanuevamen telatarea
queestabareal
izandoenel momentoquesequedósinconex ión
.

onPause
()

MuseoA
ct
iv
ity
.
java

145
Es
te métodosellamacuandolaact
ividadvaase rocultadaporotraac
tiv
idad,espores
te mot
ivo
queseva l
idasienese momen toseencuen t
rav isua
lizandound iá
logoys iesasíseel
iminael
d
iálogo dela pan
tal
la. Se e
l
imina e
ld iá
logo, porque cuando sevuelve a ac
t
iva
rla ac
tiv
idad
depend
iendodelestadoenelqueseencon trabalaac t
ividadsepuedevolvera mos
tra
reldiá
logo
ono.

onRe
tainNonCon
figu
rat
ion
Ins
tance
()

MuseoA
ct
iv
ity
.
java

Comoexp l
icamosan te
riormenteéste mé
todosellamadeb idoauncamb iodecon f
igurac
ión .Esa
través de es
te mé todo quere to
rnamos e
l estado en el quese encuen t
rala activ
idad en ese
momen toparapoderrestaurar
locorrec
tamentecuandosevue lvaacrearlaact
ividad(onC reate
()
).
Unasdelasva r
iablesde lestadodelaac t
ividadesunata rea,delacua lhabla
remoscon más
deta
lleposter
iormente,enes te momentoesimpo r
tan
teac lararquecomolaac tiv
idadsedes t
ruye
esnecesariodesvincularlatareaconesaactiv
idadyv incu
larlanuevamen tecuandosere stau
rael
estado dela m isma, y de esta maneralatarea puede segu i
re jecu
tándose m ient
ras quela
act
ividadsevuelveacrea r
.

onDes
troy
()

MuseoA
ct
iv
ity
.
java

Es
te métodose l
lamaantesdedes t
rui
rlaact
iv
idad .El métodoisFin
ishing(
)quenosp roveelaclase
Ac
tiv
itynospermitesabe
rs ilaact
iv
idadvaase rte rminadaosi,porejemplo,simp
lementesees ta
real
izandouncambiodeo r
ientac
iónde lapan
tal
la.Ene lcasoquelaactiv
idadestáf
inal
izando
,nos
inte
resasabers ienese momen tosees táejecutandounata rea.Siesas í,debemoscancelarla
paraquesede jedeejecutaryaquenolane cesitaremosydees ta maneral ibe
ramosrecursosde
laactiv
idadqueyanou t
il
izará.
146
MuseoL
istAc
tiv
ity

F
igu
ra8
.27D
iag
ramadelac
laseL
is
tAc
ti
vi
ty

Laclase MuseoListAct
iv
ityademásdeimp lementa
rlainte
rfazinfo.un
lp.museum.h
ttp.
I_A c
tiv
i
tyT ask
delacualheredae lcompo rtamientonecesar
ioparalacomun icaciónconelserv
idorex t
iendedela
c
laseand ro
id.app.Lis
tActivi
ty.E s
tac lase
,queex t
iendedelac laseandro
id.app
.Activ
itysed iseñó
parasimpl
if
icarlav isua
lizacióndee lementosenuna l
ista
.
La clase MuseoListAct
ivity contienetres prop
iedades más además delas p ropiedades que
cont
ienelaclase MuseoA ct
ivi
ty:

dataV
ector: es
tap rop
iedadesdet ipojava
.ut
i
l.Vec
torquecon
tieneelementosdet
ipo RowDa
ta.
RowDataesunac laseinternade MuseoL
istA
ct
ivi
tyquerep
resentalosdatosdecadaelemen
to
quesevaav isual
izarenla l
ista
.Po
rlotanto
,laprop
iedadda
taVecto
rcont
ienetodos
lose
lementos
quesevisua
lizanene ll
istado.

MuseoL
istA
ct
iv
ity
.c
lass

147
imagenDefault
:cadaelementodelal
istacont
ieneunaimagenyenla mayoríadeloscasosla
cargadeestasimágenesesdinám
icayseob t
ienedesdee
lservido
r.Pe
rohayot roscasosenlos
quenoesnecesa r
ioobtene
rlaimagendesdelaredyespo rel
lo,queu
ti
lizamosesteat
ribu
to,e
l
cualcon
t
ieneuna imagena mos
tra
rpordefec
to.

m
Inf
later
: esteatr
ibutoesdetipoandroid
.view
.Layout
Inf
late
rquebás
icamen
teins
tanc
iaarch
ivo
s
XMLcorrespond
ientesaunavistaenob je
tosjavaparaquepodamos man
ipu
lar
los
.Enestecaso
seu
ti
lizóparalacargadeda
tosde loselementosdelalis
ta.

Imp
lemen
tac
ióndeunal
ista

And
roidproporc
iona
laclaseLis
tViewqueescapazde mos
trarunal
istadesp
legab
ledee
lemen
tos
.
Es
toselementospuedenserdecua lqu
iert
ipo
.Acon
tinuac
iónpodemosvercómopodemosañad
ir
uncont
rolLis
tViewanuest
rainte
rfazdeusuar
io:

UnLis
tViewrecibesusda tosatravésdeunadap tado
r.Eladap tado
r tambiéndef
inelaformaenla
se mues
tracadafila
.Unadap tadorextend
iendede laclaseBaseAdap te
r.Andro
idproporc
iona
va
riosadaptadoresestándar
,los másimpor
tantessonA rrayAdapte
ryCu rso
rAdapte
r.

Paracon
tro
larlaasignacióndelosdatossepuede
implementarunadaptado
rprop
iocomoesen
es
tecasoCus tomAdapte rqueext
iendedelac
laseAr
rayAdapterquepuede mane
jarda
tos
basadosen mat
ricesolistas
.

MuseoL
istA
ct
iv
ity
.
java

148
Posteriormen te,rede finimose l métodoenca rgadodegene raryre llenarconnues t
rosda tostodos
loscon troles necesa r
ios delain terfaz g ráfica decada e lemen to delal ista.E ste mé todo es
getView ().El mé todoge tView ()sel lama rácadavezquehayaque mos trarune lemen todela
l
ista.Lop rime roquesedebehace res“ infla r”eld iseñoXMLquehemosc reado.E stocons isteen
consu ltarelXMLdenues trod iseñoyc rea rein ic ializarlaes truc
tu radeob jetosjavaequ ivalente.
Parae llo,seu t
ilizae lserviciode ls is
temaLayou tInflater.Pa raob tene raccesoaes tese rv
icio se
puederea l
iza rat ravésde l mé todoge tS ystemSe rvice (Activi
ty.LAYOUT_ INFLATER_SERV ICE )de
laac tividadyunavezquetenemosaccesoaes teob jetogene raremoslaes truc
tu radeob jetos
median tesu mé todoin f
late(id_layou t)
.
Lac reac ióndeob jetosJava ,cuandosein flauna rchivo XML ,escos tosaencuan toat iempoy
consumode memo r
ia. Paraa liv
iares tep rob lema ,And roidnosp roponeun mé todoquepe rmite
reuti
lizara lgúnd iseñoquehayamosin f
ladoconan terioridadyqueyanonoshagafa l
tapo ralgún
mot
ivo , po re jemp lo porque e le lemen to co rrespond ien te delal ista ha desapa recido dela
pantallaa lhace rsc rol
l. Dees tafo rmaev itamostodoe lt raba jodec rearyes t
ructu rartodoslo s
objetosasoc iadosa ldiseño .En tonces ,s iAnd roidde term inaqueunav is
taquerep resen taauna
f
ila no es v isible , permite vo lverau t
iliza rlo at ravés de l paráme t
ro conve r
tView de l mé todo
getView (). Encasodequelav istanoes tád ispon iblepa rasureu t
il
ización,And roidpasa ráun
valor nuloene l pa ráme t
roconve rtView . Po rlotan to,enlaimp lemen tación del adap tadore s
necesa r
iorea l
iza res tacomp robación .
149
MuseoL
istA
ct
iv
ity
.
java

E
l modot íp
icodec rea runafilapa raunL istViewesi rca rgandotodoslose lemen tosg rá
ficosque
hayenunaf ilaas ignándo leelda toqueleco rrespondeacadauno .Pa rae l
lo,sepa rtede ldiseño
de unaf i
la como exp l
icamos an ter
iormen te, y se va ca rgando cada e lemen to de es tafila
accediendoat ravésde l métodof indViewB yId()yed itandoe lvalorco rrespond iente . Peroés ta
búsquedapo rIDdeuncon t
rolde terminadoden t
rode lá rboldeob jetosdeund iseñopuedese r
unata reacos tosadepend iendodelacomp lejidadde lpropiod iseño,espo re l
loquesed iseñóe l
patrón V iewHo lder, que ev i
ta u t
il
iza r el mé todo f indV iewB y
Id() cuando reu til
izamos e l
convertV iew. Una c lase ViewHo lder es una c lasein terna en e l adap tador que con t
ienen
referenciasalasco rrespondientesv istasde ldiseño. Po rlotan to,sec reaein icializae lobjeto
V
iewHo lderlap r
ime ravezquein flemosune lemen todelal istayasoc iamosad ichoe lemen tode
formaquepos te r
iormen tepodamosrecupe ra r
lofácilmen te.E s
tare ferenciaalav istaseas igna
comounae t
ique taat ravésde l métodose tTag (
)de laclaseV iew.
S
irec ibimosunob jetoconve r
tView,podemosob tenerlains tanciade lV iewHo ldera t ravésde l
método ge tTag() y as ignarlos nuevos a tr
ibutos alas v istas at ravés delare ferencia del
V
iewHo lder
.
S
ib ienes tosuenacomp lejoes másráp idoqueu t
i
lizandoe l mé todof indViewB y
Id()cadave z.

Ahorabien
,s iquis
iéramosreal
iza
rcualqu
ieracciónalpulsarsesobreune lemen
todelalista
creadatendremos queimplementare
l even
to onL
ist
ItemCl
ick. En es
tecaso el mé
todoserá
abst
ractopa
raquecadac laseloimp
lementedeacuerdoalatareaqueneces
itecadauna.

150
Noexpl
icaremose
lcic
lodevidadees
taac
t
ividadyaqueesaná
logoa
lde
laac
t
ividad
MuseoAc
tiv
ity
.

8
.2.4Comun
icac
ióncone
lse
rvido
r

Enelcapítu
loan ter
iorexp
licamoscómoe
lservidordesp l
iegalosdatosqueseránconsumidospor
losclien
tes
.En tonces,d
ij
imosqueesain
formaciónviajabaatravésdelaredenformatoJSON.
Prev
iamenteald iseño
,tenemosquedec
irquelaaplicacióntengaaccesoaIn
ternet
,estosereal
iza
atravésdelarch
ivode man i
fies
to.

De es
ta manera
, nuest
ra ap
l
icac
ion pod
raaccede
r aInte
rne
t,yasea po
r W
IFI o 3G
. Además
ut
i
lizamosloss
igu
ientesperm
isospa
racomprobare
lestadodelared
:

Android cuen ta con muchas c lases dedicadas ex c


lusivamen te alas dife
rentes cuest
iones de
comun icac iones. Po rejemp lo,deJavahe reda,en t
reo trosdejavax .net. Dentrodesuspaque te
s
exclusivos como p lata
forma ,inc luye una amp l
ísimafam ilia de paquetes bajo el nombreraíz
android.netysob retodoo rg.apache .ht
tp,lacualusaremosenes taapl
icación
.
Ut
i
lizamosunc l
iente HTTPes tánda r
,conlac lase De faultH t
tpC l
ien
t.É stacuentacone l método
execute(),quep recisacomopa ráme t
roslape t
iciónaenv iaryseenca rgadee jecutarlaconex
ión.
Pararec ib irla co rrespondienterespues ta, se deflne un ob jeto Ht
tpResponse querec ibe el
resultadode l métodoexecu te(
).
Parafina llza r
,larespues tadesdee lse rv
idorsep rocesa med ianteclasesJSONypa rapoderser
finalmen teconve r
ti
rlasal mode lodeda tos.Laimp lemen taciónqueu t
il
izamospa raJSONes Gson
[70],una lib rer
íade Goog lepa rase r
ial
izarydese r
ial
izarob je tosJSON.
Enla ap licac iónimp lemen tamoslac lase ConexionHTTPquese rála encargada derea l
iza
rla
comun icac ióncone lservidor.

Conex
ionHTTP
.
java

151
E
staclasecon
tiene lassiguientespropiedades:
● ur
l:esladirecc
ióna laquesedebeconec tar
.
● params:son lospa ráme t
rosqueseneces itanrea
l
izarenlapet
ic
ión
.
● headers
:seu t
i
lizapa raenv iarencabezadosh t
tpencasoqueseanecesario
.
● responseCode :gua rdaelcód igodees tadodelarespues
taalapet
ic
ión.
● message: guardae l mensajeco r
respondientealcód
igodeestadodelarespues
ta.
● response:guarda larespues tarecib
ida.

E
l mé
todop
rinc
ipa
ldees
tac
laseese
l mé
todoexecu
te,e
lcua
lat
iendetan
toreque
rim
ien
tos GET
comoPOST
.

Conex
ionHTTP
.
java
:

152
Paraelcasoqueserea l
iceunreque
rimien
todet ipo GET,secreaunob je
toH t
tpGetconlaur
ljun
to
conlos pa rámet
ros en elformato correspondiente a
l mé todo GET. Para el caso de un
reque r
imiento de tipo POST se creará un ob jeto Ht
tpPost conla u rl ylos parámet
ros
correspondien
tes.Enamboscasosellamaa l métodoexecuteRequestquerecibecomoparámetro
e
lreque rim
ientocorrespond
ien
teal mé
todoe leg
idoyrea l
izalaconexiónalserv
idor
.

Conex
ionHTTP
.
java

153
Creamos uncl
iente HTTPdelain terfaz H
ttpClientimplementado po
r De faul
tHttpC
lient.Luego,
creamosunobjetoHt
tpResponsesob reelcualrecibimoselresul
tadodee jecutarlapet
icióncreada
atravésdelc
l
iente HTTP.Sielresultadodelape tic
iónnoesnu lo,convert
imose lcontenidodela
respuestaastr
ingylo guardamos enlava riableresponselacualse ráluegoconsu ltada pa
ra
obtener
lacor
respondien
terespuesta.

Ta
reasensegundop
lano

F
igu
ra8
.28
:Diag
ramadec
lasesA
syncT
ask

Todoslos componentes de una apl


icac
ión Andro
id,tantolas act
ividades
,los serv
ic
ios olo s
recepto
resdeeventossee jecutanenelm ismoh i
lodee jecuc
ión,elllamadohi
loprinc
ipa
l, main
threado GUIthread,quecomoés teúlt
imonomb reindicatambiénese lhilodondeseejecutan
todaslas ope
raciones que gest
ionanlainte
rfaz de usuar
io dela apl
icac
ión.Espo rel
lo, que

154
cua
lquierope rac
iónlargaocos tosaquerealicemosenes tehilovaab loquea rlaejecucióndel
res
todecomponen tesdelaap licac
iónypo rsupuestotambiénlainte
rfaz,p roduc
iendoalusuario
unefectoevidentedelent
i
tud
,b loqueoo malfuncionamien
toengene ral
.Pa raev i
tarestodebemos
e
jecutartareasensegundoplano .Andro
idproporc
ionalaclaseAsyncTaskpa raello
.
Laformabás icadeuti
liza
rlaclaseA syncT
askcons is
teenc rea
runanuevac lasequeextiendade
e
llaysob rescr
ibi
rvar
iosdesus mé todos
.Estos métodossonlossigu
ientes:

● onP reE xecute()


.See jecutaráan tesdelcódigop r
inc
ipaldenues t
ratarea
.Sesue leut
il
izarpara
prepararlae jecuc
iónde latarea,inicia
l
izarlain
terfaz
,etc.
● do InBackg round(
).Con tendráe lcódigopr
incipaldenuestratarea
.
● onP rog ressUpdate(
). See jecutarácadavezquel lamemosa l métodopubl
ishProg
ress(
)desde
e
l mé tododo InBackground().
● onPos tExecute(
). Se ejecutarácuandof inal
ice nuest
rata rea
,o dicho de o
traforma,trasla
f
inalizaciónde l mé
tododoInBackg round (
).
● onCance lled(
).See jecuta
rácuandosecance lelaejecuc
ióndelata reaantesdesufina
lizac
ión
norma l
.

En nues
trocasoimp
lementamos unac
lase abst
racta MuseoA
syncT
askcon e
lcompo
rtam
ien
to
bás
icoquenecesi
tamospa
ralasc
lasesqueextiendadeella
:

Es
taclasecon t
ieneunareferenciaa laact
ividadque loestaejecutandoydeesta manera
podemosu ti
l
izar
laenlos métodosonP reExecute(
)para mostrar
lelaesperaalusuar
ioy
onPostExecute(
)paranoti
f
icarlealaac tiv
idadque latareasehacomp le
tado.El mé
todo
doInBackground(
)deberáimplemen tarselasclasesconcretas,ta
lescomoSe rv
idorAsyncT
asky
Ba
tchImageDown loader
.
Comopodemosve rdef
inimosunt ipoenume rat
ivoTaskelcua lsi
rveparaind
icar
lealAsyncTaskla
tareaquedeseam osejecuta
rlascua lesexplicaremoscon másde tal
leposte
rio
rmente.

MuseoA
syncT
ask
.java

155
Se
rvido
rAsyncTask

Es
taclasese uti
l
iza pa
rareal
iza
rlacomunicac
ióncon e
l se
rvido
r, es dec
ir
, pa
rarea
l
iza
rla
s
pe
tic
ionesco
rrespond
ien
tesalainfo
rmac
ióndel Museo
.

Se
rvido
rAsyncT
ask
.java

156
T
ieneunava r
iab
ledetipoC
lienteHTTPlacua
lseencargadeval
ida
rlaconex
iónain
terne
tyrec
ibi
r
larespues
tadelob
jetoConexionHTTPqueexpl
icamosante
rio
rmen
te.

C
l
ien
teHTTP
.
java

157
Lacomp robacióndelestadodelaredserea lizaatravésde l mé
todohayConexion(
)elcualut
il
iza
e
lse rvicio CONNECT IVITY_SERVICEpa raob tenerel ob
jeto Connect
ivi
tyManager
. At
ravés de
este objeto podemos consulta
rs i es
ta conec tado o se es
ta conectando u
ti
l
izando e
l método
isConnec tedO rConnect
ing(
).
Enels iguien
teapa rtado,a medidaqueexp liquemoscadaunadelaspan ta
l
lasdelaap l
icac
ión,
expl
icaremoslos mé todosqueejecutaestaclase .

Ba
tch
ImageDown
loade
r

E
stac
laseseu
t
il
izapa
raladesca
rgade
imágenesdesdee
lse
rvido
r.

Ten
iendoencuen taqueseestátrabajandocon memor
ialimi
tada,debemoscargaren memo r
ia
unavers
iónde la imagendebajaresolución
.Lavers
ióndeba jaresoluc
ióndebecoincid
ircone l
tamañode lcomponen tede
interfazdeusuarioquesevisual
iza
.Una imagenconunareso lución
a
ltanop ropo
rcionaningúnbenefic
iovisib
leyocupa mucha memoria.Esporeste mo
tivoque
debemosdecod i
ficar
imágenesdeg rantamañosinexcederell
ímitede memor
iade laaplicación
med
iantelacargadeunave rsión máspequeñaen memo ria
.

Ba
tch
ImageDown
loade
r.
java

158
Ba
tch
ImageDown
loade
r.
java

La clase Bi
tmapFacto
ry propo
rciona va
rio
s métodos de decod
if
icac
ión (decodeB y
teArray()
,
decodeFi
le(
),decodeSt
ream()
,etc
.)paracrearunobjeto B
itmapapar
tirdediversasfuentes. En
nuest
ro caso ut
i
lizamos e
l método decodeSt
ream(
) para pode
r pasar
le como pa rámetro el

159
Inpu tStreamque ob tenemos derea liza r unreque rim
ien toalau rl delaimagen que de seamos
desca rgar.
Cada mé tododedecod if
icación menc ionadoan teriormen tein tentaas igna r memo r
iapa rae lobjeto
B
itmapc readoypo rlotan topuedede r
iva rfác i
lmen teenunaex cepciónjava .lang.OutO fMemo ry
.
Paraev itarestolos mé todosdedecod i
ficac iónpe rmitenespec if
ica ropc ionesdedescod if
icacióna
través dela c lase B itmapFac tory.Op t
ions .A justandola p rop iedadinJus tDecodeBound s como
verdade raev i
talaas ignac iónde memo r
ia ,devo lv
iendounva lo rnulopa rae lob je
to Bitmap ,pero
estableciendolasp ropiedadesou tWidth,ou tHeightyou tM imeT ype.E s
tatécn icape rm i
telee rlas
d
imens ionesy e ltipo delos da tos delaimagen an tes delacons trucciónyla as ignación de
memo riade lobjeto Bitmap . En
tonces ,pa raevitarlaex cepc iónjava .lang.Ou tOfMemo rydebemos
comp roba rlasdimens ionesde lB itmapan tesdeladecod i
ficaciónydec idi
rs ilaimagencomp le
ta
puedese rcargadaen la memo riaos idebemos mod if
icare ltamañodela m isma .
Paradec ir
lealdecod i
ficado rque mod if
iquee ltamañodelaimagenyca rgueunave rsión más
pequeña enla memo r
ia , se debe a jus tare ltamaño dela mues tra at ravés dela p ropiedad
inSamp leSizede lobjetoB itmapFac tory.Op t
ions.S isees tableceunva lor>1 ,pidea ldecod if
icador
modif
ica rlaimagen o riginal
, devo lv
iendo unaimagen más pequeña pa ra aho rrar memo ria.E l
tamañodela mues t
raese lnúme rodep íxe
lesenambasd imens ionesqueco r
respondenaun
únicop íxelene lB i
tmapdescod ificado .Po rejemp lo,inSamp leS ize==4devue lveunaimagenque
es1 /4de lancho /a
lturadelao r
ig inaly1 /16e lnúme rodep íxe les .Aquíse mues t
rae l métodopa ra
calculare lva
lorde ltamañode la mues traenbasea lanchoya ltu rade laimagen :

Ba
tch
ImageDown
loade
r.
java

Para ut
i
liza
r este método
,p r
imerola decodi
f
icacióninJus
tDecodeBounds se estab
lece en
verdade
ro,seob t
ienenlasprop
iedadesdelaimagenyluegosedecod if
icanuevamentecone l
nuevovalorinSampleS
izeestab
lec
iendolaprop
iedadinJustDecodeBoundsenfalso
,obteniendo
deesta manera
laimagenquese mostra
ráa
lusua r
io.

8
.2.5Imp
lemen
tac
ióndeloscomponen
tesdelaap
licac
ión

160
Ante
rio
rmente hemos exp
licado e
l compo
rtamiento bás
ico quetendránlas ac
t
ividades que
ex
tenderándelasclases MuseoAc
tiv
i
tyy MuseoListA
ctiv
i
ty.Acont
inuac
iónexpl
ica
remosdequé
maneraseimplementancadaunadelaspan ta
l
lasdelaap l
icac
iónut
il
izandoes
tasclasesolas
c
lasesdebasequep ropo
rcionaAndro
id.

1
.In
iciodelaap
licac
ión

F
igu
ra8
.29
:Sp
lashAppA
ct
iv
ity

Sp
lashAppAct
ivi
tyeslaac tiv
idaddebienven
idadelaapl
icac
ión
,tienecomoob jet
ivo most
raruna
imagenyp resentarlaapl
icac
ión m
ient
rasquepordet
rásserecuperanlos museosregis
tradosen
e
lsistema
. Porlotan to,laimagen depresen
tac
iónse most
rarálacantidaddet iempo quese
demoreenrecupe rares
tainfo
rmac
ión.

V
istadelaac
tiv
idad

sp
lash_
layou
t.xm
l

161
Lavis
tat ienebás icamen teunL inearLayou tconteniendounImageV iew.Loslayou tssonelemen tos
novisualesdes t
inadosacon t
rolarlad is
tribuc
ión ,posiciónyd imensionesdeloscon tro
lesquese
inser
tanensuin terior
.E stoscomponen tesex tiendenalac lasebase V iewG roup,como muchos
ot
roscomponen tescon tenedo res,esdec ir
,capacesdecon tenerao t
roscon tro
les. Hayd ist
in tos
t
iposdelayou t,en t
relosqueencon tramos ,elF rameLayou t,LinearLayou t
, Relat
iveLayout,e tc.El
L
inearLayou tap i
launodet rasdeo trotodo ssuse lemen tosh i
josdefo rmaho r
izonta
love r t
ical
segúnsees tablezcasup ropiedadand ro
id:or
ientation.
Los e lemen tos con tenidos en un L inearLayou t pueden es tablecer sus p ropiedades
andro
id:layout_wid thyand roid:layout_heightpa rade terminarsusd imensionesden trodellayou t.
En el caso de un L inea rLayou t,tendremos o tro paráme tro con el quejuga r
,la p ropiedad
andro
id:layout_we ight.E s
ta p ropiedad nosva a pe rmi
tir dar alos elemen toscon ten
idos en e l
layoutdimens ionesp ropo rciona lesentreellas
.
E
lcon t
rolImageV iewpe rm ite mos t
rarimágenesenlaap l
icación.Lap ropiedad másin te
resan tees
andro
id:src,quepe rmiteind icarlaimagena mos t
rar
.Lono rmalse ráindicarcomoo r
igendela
imagen e l iden tif
icado r de un recu rso de nues tra ca rpeta /res/drawable, por e jemp lo
andro
id:src=”@d rawab le/app_ icon ”
.

Imp
lemen
tac
ión

Laimp
lementacióndelaclase SplashAppA
ct
iv
itycons
ist
ióenextende
rlac
lase MuseoA
ct
iv
ityy
sob
reesc
rib
irlos mé
todosnecesa
riosparacump
lire
lobje
tivode
la m
isma.

Sp
lashAppA
ct
iv
ity
.
java

162
E
l objet
ivo de estaclase es ob
tene
r unl
istado de museosregis
trados en e
l museo pa
ra que
pos
terio
rmen te el usuar
io pueda e
leg
ir con cua
linterac
tuar
. Para el
lo,ut
il
izamos unata rea
as
incrónicaSe rv
ido
rA syncTaskpa
racomunica
rnosconelse rv
idor
,alqueleindicamosquee jecute
e
lreque r
imiento GET_MUSEOS .

163
Se
rvido
rAsyncT
ask
.java

Lata
reasimp
lemen
terea
l
izalapet
icióna
lCl
ien
teHTTPygua
rda
larespues
taenunHashMappa
ra
quepuedase
rconsum
idaposte
rio
rmentepo
rlaac
t
ividad
.

C
l
ien
teHTTP
.
java

Ene l métodoge tMuseos (


)delac lase Cl
ienteHTTPc reamosunob jeto Conex
ionHTTPconlau rl
MuseumWeb /museo/ recupe
ra rDatosMuseos.do,correspondien
tea lrequer
im ien
toquedevue lveun
objeto MuseoHTTP .E s
teobjetocon t
ieneuncód igodee r
roryun mensa jeencasodequeocu rra
a
lgúne rro
renlacomun icacióncone lse rv
idoryunl istadode museos ,quese ránlosquesele
mostraránalusua r
ioenlas iguienteact
ividad. Comolarespues taquerec ibeesdet ipoJSONes
necesa r
iorealizar unconve rsión asurep resentación en objetosJAVA . Pa
ra el
lo ut
il
izamosla
l
ib rer
ía Gson.
Unavezqueob tenemoslarespues tadelrequerimiento,lata
reaSe rvido
rA syncTasklenot
if
icaala
act
ividadque latareasehacomp letado
.

MuseoA
syncT
ask
.java

164
Laac t
iv
idadSplashAppAc
tiv
i
tycuandorec
ibelarespues
ta,atravésde
l métodorec
ibi
rRespues
ta(
),
va
lidae lcód
igodee rro
rquerecib
ióyenbasea lmismoe jecu
taelcódigocorrespond
ien
te.Los
códigosdeerrorquepuederec
ib
irenestecasoson:

● ErrorCode.NO_HAY_
INTERNET:es
tecódigonosind
icaqueeld
ispos
it
ivonotieneaccesoa
in
ternetydebemoscomunicá
rse
loa
lusua
rioparaquear
reg
lelas
i
tuac
ión.Parae
l
lo,le mos
tramos
e
lsiguien
tediálogo
:

F
igu
ra8
.30
:Er
rordeconex
ión

● Er
ro rCode
.ERROR_SERV IDOR: este cód
igo nosind ica que se produjo un e
rro
r enla
comunicac
iónodep rocesam
ientoenelserv
idor.Estas
ituacióntamb
iénse lein
formaalusua
rio
atravésdeund
iálogoalcualleseteamosel mensa
jequev ieneenlarespuesta
.

● Er
rorCode.RESPUESTA_CORRECTA:po rúl
timotenemoselcódigodeerro
rquerea lmente
nosinte
resa
,elquenosindicaquelarespues
tarecib
idaesco
rrec
ta.Enestecaso
,inic
iamosla
ac
tiv
idad MuseosL
istA
ct
iv
ityyleenv iamoslalis
tade museosquerecib
imosat ravésdeun
ob
jetoInten
tyfina
l
izamoslaact
ividad.
2
.Listadode museos

165
F
igu
ra8
.31
: MuseosL
is
tAc
ti
vi
ty

Comodij
imosanter
iormen
telaac
tiv
idad MuseosL
istAc
tivi
ty muest
rae ll
istadode museosquese
encuen
tranreg
ist
radosenels
is
tema.Elusuariodebee leg
irentrelos museoscualeselquevaa
empezararecor
rer
.Enestecaso
,sóloseencuentraregist
radoe l MuseodeF ís
ica
,quese mues
tra
juntoasuícono
.

V
istadelaac
tiv
idad

museos
.xm
l

Lavis
taes tácompuestaporuncon tenedorL
inearLayou
t,queexp
licamosenlaac t
ividadante
rio
r,
a
lque leincorpo
ramostrescomponentes:elencabezado
,unFrameLayoutyelp
iedepág ina
.
E
lencabezadoyp iedepáginafue
ronde f
in
idosenuna rch
ivoxmlseparadode maneratalquenos
pe
rm i
tainclu
ir
loentodaslasvis
tasquenecesitemos.

166
heade
r.xm
l

Paraelencabezadou t
il
izamosuncon tenedor Re
lat
iveLayoutquepe rmi
teespec i
ficarlaposic
ión
decadae lementodeformarela
tivaasue lementopadreoacua lquiero
troelemen toinclu
idoenel
prop
iolayout. Deestaforma,alinc
lui
runnuevoe lemento Xpod remosindicarpore jemploque
debecolocarsedebajodelelemento Yyalineadoalade rechadellayou
tpad re.Enes tecasose
incorpo
róunaimagenat ravésdeunImageV iewyunalíneavert
icalasude rechaat ravésdeun
componen tebásicocomoeselV iew
.

foo
ter
.xm
l

E
lpiedepág inaes muys
imp
le,cons
tadeunLinearLayou
tquecon
t
ienedosTex
tView
,elcua
lse
u
ti
l
izapa ra mos
tra
runtex
todete
rminadoa
lusuar
io.Eltex
tode
lcont
rolsees
tab
lece med
ian
tela
p
ropiedadandro
id:
tex
t.

Enlavis
tadelaac t
ividad menc
ionamostamb iénqueinc luimosunF rameLayout
.É s
teese l más
s
impledetodosloslayoutsdeAndroid.UnFrameLayou tcolocatodossuscontro
leshi
josa
lineados
con su esqu
ina super
iorizqu
ierda
, deforma que cada con t
rol queda
rá ocu
lto po
rel contro
l
s
iguien
te(a menos que és te ú
lt
imotengat ransparencia)
. Los componentesinclu
idos en un
FrameLayoutpod
ránes tab
lece
rsusp rop
iedadesand roid:
layout_wid
thyand ro
id:
layou
t_he
ight
,que
167
podrántoma rlosva lo
res“f
il
l_pa rent
”(para que e lcontro
lh i
jotomela d imensión desulayou
t
contenedor)o“w rap_conten
t”(paraquee lcon tro
lhijotomeladimensióndesucon ten
ido)
.
Enes tecaso ,ut
ilizamosun F rameLayou tpa ra mostra
runL istV
iewoun P rogressBar(ba
rrade
progreso)
.E sdeci r
,mien
trassees tátrans
fi
riendola info
rmaciónsevisua
lizalaba r
radep rog
resoy
unavez quesecomp letó d
ichat rans
ferenciase mues tra e
llis
tadoconlosda tosrecib
idos
.El
ProgressBarloincorporamosat ravésdellayou tcargando.xm
l

ca
rgando
.xm
l

I
mplemen
tac
ión

MuseosL
istA
ct
iv
ity
.
java

168
Es
taac t
ividadtienecomoob je
tivo most
rarell
istadode museosqueseob tuv
ieronenlaactiv
idad
ante
rior
,espo re l
loqueex tiendedelaac t
iv
idad MuseoListAct
iv
ity. Enes
telis
tadose mues t
rael
iconode l museojuntoasunomb reyu t
il
izamoslatareaas inc
rónicaBatchImageDownloaderpara
descargarlasimágenes co rrespondientes acada uno de estosiconos. Una vez quese han
descargadotodas lasimágenes,sep rocedea mostra
rell
istadoalusua r
io.

169
MuseosL
istA
ct
iv
ity
.
java

Para manejarla selecc ión de un elemen


to delal is
ta se debeimp lementarel mé todo
onList
ItemC
lick
().Es
te mé todorec
ibecomopa rámet
rolapos iciónde lelemen
toseleccionadola
cualnosperm i
teaccede ralelementodent
rodeladapte
r.E sestecaso ,cuandoseseleccionauno
delos museosdelal is taguardamoseliddel museoenlasp re
ferenc
iasdelaap l
icaciónpara
saberentodo momen tosob requé museoestáinte
ractuandoe lusua r
io.Luego
,llamamosala
ac
tividadde
l menúprincipal.

MuseosL
istA
ct
iv
ity
.
java

3
. Menúp
rinc
ipa
l

170
Figu
ra8
.32
: MenuP
rinc
ipa
lAc
ti
vi
ty

Atravésdelaactiv
idad MenuP r
inc
ipalAc
tiv
i
tyimplementamosel menúp r
incipaldelaap
licación
.
Conlasopcionesquesep resentan,podemosaccederalasact
ividadesprincipa
lesqueofrecela
ap
licac
ión
, delascua les hablaremos más ade
lante
. Aho
ra noscen t
raremos en exp
l
ica rcómo
implementamosestaactiv
idad.

V
istadelaac
tiv
idad

dashboa
rd_
layou
t.xm
l

f
ragmen
t_layou
t.xm
l

171
Parala v is
ta de es ta act
ividad debemosimp lementare l pat
rón“T ab
le ro de opciones
” que
expl
icamosene lcap8 .1.
En el caso que neces i
temos c iertafuncional
idad que no es tá presen
te enlos componen tes
estándar de And roid, nos vemos en la neces idad de c rear nuestros propios cont
role
s
personal
izados,d iseñadosa med idadenues trosrequis
itos
.
Androidadm i
tec rearcon t
rolespe rsona
lizadosype rm i
tehace r
lodediferen
tesformas:
1 E x
tendiendo lafuncional
idaddeuncon tro
lyaex is
tente.
2 Comb inandova rioscon t
rolespa rafo rmarotro máscomp le
jo.
3 D iseñandodesdece rounnuevocon trol
.

Paraestecaso ,noso
trosdiseñamosuncomponen tellamado Dashboa rdLayoutqueext
iendedela
c
laseV iewG roupcomoe lrestodelosLayoutquep roveeAnd roid
.E stenuevocomponenteperm
ite
d
ispone r enforma decuad rícu
lalas d
iferentes opciones del menú , adap
tándose a
ltamañoy
or
ientac
ióndecadapan tal
la.Cadaunadees tasopc ionesestáfo rmadapo runcomponenteBut
ton
e
lcua lrepresentaaunbo tónenlapan ta
lla.At ravésdelasp ropiedadesd rawab
leTopytextsele
as
igna unaimagen defondo untex torespec t
ivamen te. Conla p rop
iedad onCl
ick de
fin
imos e
l
nomb redel métodoa
lquesel lamacadavezquee lbo tónesse lecc
ionado.E s
tos mé
todosdeben

172
def
ini
rse en la ac t
iv
idad co
rrespond
iente a la v
is
ta, en es
te caso la ac
tiv
idad
MenuPrinc
ipa
lAc
t
ivi
ty
.java

Imp
lemen
tac
ión

Comopodemosverenestac
laseseimp
lemen
tancadaunodelos mé
todosquefue
rona
signado
s
alosbo
tonesde
lavis
ta.

MenuP
rinc
ipa
lAc
t
ivi
ty
.java

Comod ij
imosan teriormen te
,cuandounusua riohaceclicenelbo tón,elsistemaAndroidllamaa l
métododelaac tiv
idadnomb reMe todo(View).Paraquees tofunc
ione,el métododebeacep ta
runa
v
istacomoún icopa rámetro.E s
tavistaco r
respondealwidgetquefuese leccionado.
La c reac
ióny ac t
ivac ión de una ac t
ividades un proceso as
íncrono queserea l
iza usandolas
funcioness tartA c
tivi
tyos tartAct
ivi
tyFo rResu
lt
,heredadasdelasupe rc
laseyquesed iferenc
ianen
que laúlt
imape rm
iteob tenerunresu l
tado.
E
l mé todoonC lick
()delosbo tonesse ráe lenca
rgadode manda runobjetodet ipoIn
tenthac iala
act
ividadquel lamamosquesede finecomosegundopa rámet
roene lconstruc
toral momen tode
crearlo. Después ,conayudadepu tExtra
()pasamoscadaunodelosva loresqueque remosque
recibala ac t
ividad .E s
te mé todorec ibecomo primer parámetro unaclave quese u ti
liza enla
segundaac t
ividadpa rarecupe ra
rla informac
ión,quecorrespondealsegundopa rámet
ro.
173
Ene lcasode l métodoverElemento(View )comoneces itamosrec ib
irlainformac ióndelaac t
ividad
a la quel lamamos y rea l
izara lgo conlos da tos que rec ibimos llamamos a l mé todo
star
tAct
ivityForResu l
t(
). En caso de que no espe remos a lguna respues ta dela ac t
ividad
secundaria,ún icamenteu t
i
lizar
íamose l métodos tar
tA c
tiv
ity
()
,comoloh icimoscone lrestodelo s
métodos.
Porúlt
imo ,pa raquepodamosrec ibi
rsa t
is
fa c
tor
iamentelarespues tadelaac t
iv
idadsecunda r
ia,
sobreescribimose l métodoonA c
tiv
ityResu l
t()queseu ti
lizapararecupe raruncód igoderespues ta
yrea l
izarlo queco rresponda de acue rdoalarespues tarecib
ida.E l mé todo onA ct
iv
ityResult
()
recibecomop rimerparáme t
rounreques tCodequeesuniden t
if
icado rquesede f
iniól
íneasa rr
iba
enlaac t
iv idadp r
incipalyquenoss irvepa rad i
ferenc
ia rquéIntentyquéac tividadeslaquese
l
lamó .Elsegundopa rámetroesunresu ltCodequesede f
ineenlaac tiv
idadsecunda r
ia. Puede
toma relva lorde RESULT_OKencasodequetodohayaidob iena l momen todep rocesarla
informaciónoRESULT_CANCELEDs ilaac tiv
idadnohaob tenidoalgúnresu ltadoos ialgofal
ló.

In
teg
rarlal
ibre
ríaZx
ing

Vamosaexp lica
rcomocon f
igurarnues
troento
rnodedesa r
rol
loparaquenosseapos ib
letraba
jar
con cód igos QR.Hicimos uso de unalib
rer
íallamada ZX ing[71], un p
royecto open source
implementadoenJava ,quecen t
rasucapacidadene lusodelacáma radelosd isposi
t
ivospara
escanea r y decod
if
icar cód
igos de bar
ras di
rectamente en eld ispos
i
tivo sin necesidad de
comun icarseconelserv
idor
.
Estal
ib rer
íaesla máspopu la
rynosfac i
l
ita muchointegrarlalec
turadecód igosat ravésdeun
Inten
t.

1 Desca rgar la l ibrería XZ ing: Nos desca rgamos el a rch


ivo ZX ing
-2
.0.z
ip desde
ht
tp:
//code.google.com/p/zxing
/downloads/
l
ist
. Lo descomp r
imimos en a
lgún di
rec
tor
io dent
ro de
nuestrodiscorígido. Detodoslosd irec
tor
iosqueencon tramosenlalib
rer
ía,losquenosa yudana
trabaja
rconap licacionesAnd ro
idsone ldi
recto
rio/andro
idy/core.

2 C rearlalibrería ZX ing: Comolave rs ión2 .0nosp roveee larchivoco re.


jarnoesnece sar
io
generarlocomos íhac íafaltaenve rs
ionesan ter
iores
. Entoncesp rocedemosac rea
re lproyec
to
parapode rcrearlalibreríaquepos ter
iormen teincorpo
raremosanues t
rop royecto.Se
leccionamos
laopc iónF
ile>New>And roidProject,se leccionamoslaopc iónCreateprojectfromexis
tingsource
ycone lbo
tónB row se…navegamoshas tae ldirec
tor
iodondedescomp r
imose la rch
ivodeZX ingy
selecc
ionamos e ld i
rec tor
io android que esun p royec
to And ro
id.E l nomb re quele pusimos a
l
proyectoesZxingL ib
.Damosc l
icenF in
ish .

174
F
igu
ra8
.33
:Es
truc
turade
lproyec
toZx
ingL
ib

Hastaes
te momento,nuest
roproyec
toaúnneces
itaimpor
tarlalib
reríaqueese larch
ivo core
.ja
r
que se encuen
tra en e
ldirec
tor
io/core
. Damos cl
ic derecho sobre e
lp royec
to ZxingL
ib >
Prope
rt
ies>JavaBu i
ldPath>AddEx te
rna
lJARs…yse lecc
ionamose la
rchivocore
.ja
r.

F
igu
ra8
.34
:Impo
rta
rlib
rer
ía

Luegodebemosind
icarqueestep
royec
toesunalibre
ría
.Pa rae
l
lohacemosc
l
icde
rechosob
ree
l
proyec
toZx
ingL
ib>P rope
rt
ies>Andro
idyt
ildamoslaopciónIsL
ibra
ry.

175
F
igu
ra8
.35
:Ind
ica
rqueesunal
ibre
ría

3 Incorpora
rlalibrer
íaa nuestro p
royec
to:Unavezquetenemosc readalalib
rer
íayala
podemosinco
rporaranues
troproyec
to.Pa
rae l
lodamosc l
icde
rechosob
reelMuseumMob i
le
>P rope
rt
ies> Andro
id yenlaseccióndelibrer
íasdamoscl
icsobreelbotónAdd.
.. dónde
deberemosve
rlaopcióndeZxingL
ibylaseleccionamos
.

176
F
igu
ra8
.36
:Inco
rpo
rar
lal
ibre
ría

Tambiéntenemosqueañad
ire
lco
re.
jara
lbu
i
ld-
path
,comoh
ic
imoscone
lproyec
todelal
ibre
ría
ZXing
.

Luego en e
l even
to de
l bo
tón que que
remos que e
jecu
te es
tal
ibre
ría debe
remosreal
iza
rlo
s
iguien
te:

Intent
intent=newIntent
("com
.goog
le.zx
ing
.c
lien
t.and
roid
.SCAN
")
;
intent
.putExt
ra(
"SCAN_MODE ","QR_CODE_MODE ")
;
star
tAct
ivi
tyForResu
lt
(in
tent
,0)
;

EnAndroidcuandohay másdeunaap licac


iónqueresuelvelaacciónquefuelanzada, enes te
casoseríacom.goog
le.zx
ing.c
lien
t.android
.SCAN,le muestra a
l usua
rio unlis
tado de opc
iones
paraqueel
ijaunadeellas. Comonoso trosqueremosev
itarestasi
tuac
ióndec id
imoscamb iar
leel
nombrealaacciónylallamamosin fo
.unlp.museum.SCAN.Porloquee leventoseejecutarádela
s
iguien
te mane
ra:

MenuP
rinc
ipa
lAc
t
ivi
ty
.java

177
Luego enla misma ac
tiv
idad, como exp
l
icamos an
ter
iormente cuando u
ti
lizamos e
l mé
todo
s
tartA
ct
ivi
tyFo
rResul
t,neces
itamoshace
rlosigu
ien
tepararecupera
rlosresu
ltados:

Además,paraqueestofuncioneco
rrec
tamen
tetenemosqueañad
irenelarch
ivode man
if
ies
tode
laap
licac
iónlain
formaciónsobree
lSCANdeZX ingyelperm
isoparau
t
il
izarlacáma
ra:

178
Comonosotros modif
icamoselnombredelaacc
iónneces i
tamos modif
icartambiénelarch
ivode
man
if
ies
tode lalib
reríaZx
ingL
ibparaquepuedaatender
laaccióninfo
.unlp.museum.SCAN.
Contodos estos pasosrea
l
izadosya d
isponemos dent
ro de nuest
ro proyecto de unlec
tor de
cód
igos QR
.

4
.Sob
ree
l Museo

F
igu
ra8
.37
:Sob
reE
lMuseoA
ct
iv
ityy MapaMu
seoA
ct
iv
ity

E
lob je
tivodees tasac
tiv
idadesescontaralgoacercade
l museoyvisua
l
iza
run mapainte
rnodel
m
ismo . Para e
lloimplementamos dos clases SobreE
lMuseoAc
tiv
ity y MapaMuseoAc
tiv
i
ty.A
con
tinuaciónexpl
icamoscadaunadees tasclases
.

Sob
reE
lMuseoAc
tiv
ity

179
Es
taclaselaut
il
izamospara mos
tra
runtex toenelcua
lsedesc
ribelah
isto
riade
l museoyun
bo
tónatravésde
lcualaccedemosal mapain
terno
.

V
istadelaac
tiv
idad

sob
re_e
l_museo
.xm
l

Cuandotraba
jamosenespac iospequeñoscomolosonlaspan tal
lasdeloste léfonos
,debemos
presen
tarlainfo
rmac ión a
l usuario de unaformacómoda ,atrac
tivay prác
ticas inimportarlo
l
im i
tadoqueseae lespac
iocone lquecon temos. Unafo
rmadeconsegu irestoese lusodelsc ro
ll
,
que nos pe
rmite mostra
rsó lo una parte delainformaciónto
tal que nosin
te resa most
rarle a
l
usuar
ioyloqueres tase mostrarácon fo
rmee lusua r
iosedesp lacehaciaarribaohac iaaba jo
,
segúnseaelcaso.
Aquíut
il
izamoselS c
rollV
iew,queese lcon tenedo
rqueo freceunaba r
radedesp lazamien
topa rael
conten
idoquepongamosden t
rodeé l.E s muyút
ilenloscasosenlosquee ld iseñopuedase r
180
demasiado grande para algunas panta
llas. La so
lución se
rá envo
lver es
te con
ten
ido en un
Sc
rol
lView.Loquepasa rádespuésesquee lusuar
iosóloverápar
tedeldiseñoalavez,yelres
to
es
tarádisponib
leatravésde ldesp
lazamiento.
E
lrestodeloscomponen tesqueuti
l
izamosyalosexpl icamosconanter
ior
idadporloqueomi
timos
suexpl
icaciónenestecaso .

Imp
lemen
tac
ión

Es
taclaseext
iendedelac
lase MuseoAct
iv
ity.Enel mé
todoin
ic
ial
iza
rpodemosve
rquese
teamos
unf
lagsobrelaven
tanadelaapl
icac
ión.ElflagqueseteamosesFLAG_KEEP_SCREEN_ONque
nospermi
te man
tene
rlapanta
l
ladeldispos
it
ivoencendidaybr
il
lan
te.

Sob
reELMuseoA
ct
iv
ity
.
java

Luegoene
l mé
todo OnDes
troydebemose
l
imina
rlade
las
igu
ien
te mane
ra:

Sob
reELMuseoA
ct
iv
ity
.
java

Pa
ralacomun
icac
iónconelse rv
idor
,u t
i
lizamoslatareaasincrón
icaServ
idorAsyncT
aska
llacua
l
leso
lic
i
tamoslain
formac
iónde l museoconlaopc ión GET_MUSEOalaqueledebemospasa r
comoparáme
troe
liddel museoquee lusuar
ioseleccionóalinic
iarlaap
l
icación
. Comoes
teidlo
181
tenemos almacenado enlas p
refe
renc
ias dela ap
l
icac
ión selo so
l
ici
tamos ala c
lase
SharedP
refe
rence

Se
rvido
rAsyncT
ask
.java

Lata
rearea
l
iza
lape
t
icióna
lCl
ien
teHTTP
jun
tocone
lidMuseoquerec
ib
ióde
laac
t
ividad
.

C
l
ien
teHTTP
.
java

Ene l mé
todoge tMuseo()delac lase ClienteHTTPc reamosunob jeto Conex
ionHTTPconlau r
l
MuseumWeb /museo /sob
reElMuseo .do,co rrespond ien
tea lreque rimientoquedevuelveunob je
to
SobreElMuseoHTTP .E s
teobjetocon tieneuncód igodee rroryun mensa jeencasodequeocu rra
a
lgún e r
ror enlacomun icacióncon e lse rv
idory un ob jeto detipo Museo ,elcua
lcontienela
h
istor
iay laurldel mapa
.Nuevamen tecomolarespues taquerec ibeesdet ipoJSONesnecesa rio
real
izarunconve rs
iónasurep resentaciónenob jetosJAVA .
Unavezquerea lizólapetic
iónalata reaas incrónicaveri
ficae lresultadodelarespues
ta.Encaso
quehayaa lgúne rrorsecompo r
tadela m isma mane raqueexp l
icamosenlaimp lementaciónde
c
lasesan ter
iores. Enelcasoquelarespue staseaco rrectase teamose ltextodelavis
tacone l
conten
idode lahistor
iadel museoyse la mos tramosa lusua r
io.

Sob
reELMuseoA
ct
iv
ity
.
java

182
Comodi
jimosan
ter
iormentelavis
tatamb
iéncon
tieneunbo
tón
.Eleven
toquesee
jecu
tacuando
lo
se
lecc
ionamoseselsigu
iente
:

Sob
reELMuseoA
ct
iv
ity
.
java

At
ravésdees
teeven
tol
lamamosalaac
tiv
idad MapaMuseoA
ct
iv
ityylepasamoslau
rlde
l mapa
de
l museo
.

MapaMuseoAc
tiv
ity

Es
taclasese
limitaavisua
l
izarel mapade
l museopo
rloque
lav
is
tacons
is
tep
rinc
ipa
lmen
teenun
ImageViewu
ti
lizadopara mos
tra
rlaimagen.

V
istadelaac
tiv
idad

mapa_museo
.xm
l

183
Imp
lemen
tac
ión

Es
tac lasetamb ién ex
tiende delaclase MuseoA c
tiv
i
ty, pero aquí necesi
tamos uti
liza
rlatarea
as
incrónicaBatchImageDown loaderparaob tene
rlaimagendesdee lse rv
idorqueco r
respondeala
ur
lquerec ibiódelaac tiv
idadanter
ior. Comohemos menc ionado,pa rasolic
i
ta runaimagenala
tareaseu t
i
lizalaopción GET_IMAGENESalaque ledebemosind icarlau r
lye ltamañoconelque
queremosquesev isualice
.Enes tecasose ráeltamañodelapan tal
la,quelosob tenemosatravés
de
lob je
toD isp
layquenosp roveeel manejadordeventanasdeAnd ro
id.

Una vez querecib


imoslarespues
ta delata rea se
teamos e
lBi
tmap querec
ib
imos en e
l
componenteImageViewdelav
is
tapara mos
trá
rselaa
lusuar
io.

MapaMuseoA
ct
iv
ity
.
java

184
5
.Exp
lora

185
F
igu
ra8
.38
:Elemen
toMuseoA
ct
iv
ity

Podemosdec irqueés taeslapan ta


llap r
incipaldelaap licaciónquejun tocone l Menú Princ
ipal
nos perm i
tenllevar acabo e lproceso de Rea lidad Aumen tada . Como exp l
icamos en el Menú
Pr
incipal,cuandoe lusua r
ioseleccionelaopc iónE xplorade l menúsee jecutarálata
readed icadaa
lalectu radelcódigo QR . Unavezqueleyóe lcódigop rocesamose lresu ltadoquerecibimosdela
lectura,lacualrepresen taelidde lobjetosob reelcua les táinteractuandoe lusuar
io. Unavezque
obtenemos esain formación desdela c la se MenuP r
incipalActiv
ityl lamamos ala ac tiv
idad
E
lemen toMuseoA ct
ivityalacuallepasamoses tosda tos.
A con t
inuación explicamos el compo rtamiento dela c lase E lemen toMuseoA c
tiv
ity ytodoslo s
componen tesqueinc luyeloscualesnospe rmitenexp lorarelob jetoyconoce r másdetallesacerca
dees te,talescomosunomb re
,ca tegoríaalaquepe r
tenece ,sudesc r
ipción,imágenes ,v
ideosy
juegos.

V
istadelaac
tiv
idad

Lavis
tadees taact
ividadademásdecon tenere lencabezadoypiedepáginacomoe lrestodelas
ac
tiv
idades,estácompuestapordospartesprincipa
les
:
● Unencabezadopa rae
lobje
to,dondese indica e
lnomb reylacatego
ríadelmismo.
● Pestañas, que como d
ij
imos ante
riormente nos permiten d
iv
idi
r en d
ife
rentes secc
ionesla
in
formación.

e
lemen
to_museo
.xm
l

186
Para mostrarelnomb reylaca tegoríasimplementeuti
lizamosunL inearLayoutquecon t
iene dos
TextView. Paralaimp lemen tación delas pes tañas o secciones uti
l
izamoslos componen tes
TabHos t
,T abW idgetyFrameLayou t
.
Lade fin
ic
ióndeunT abHostescon tenedorparaunav istadeven tanasconpes tañas
.E s
teobjeto
t
iene dosh i
jos : unconjunto dee tiquetasenlas que e l usuar
io haceclic pa
rase lecc
iona
runa
pestañaespec íficayunob jetoFrameLayou tque muestrae lcontenidodees tapestaña.
E
lT abHostese le lementoraízop rincipa
ldellayoutdelaac tiv
idadp r
inc
ipal,elcualestad
ivid
ióen
2pa r
tesp r
incipalesype rsona
lizables,lap r
imeraesdondees taránlaspes tañasquevamosa

187
ut
i
lizarennues traapl
icación,lacualsel lama T abW idget.Lasegundapa rtep r
inc
ipalesdonde
estaráelcon tenidoquerea l
izacadapes tañaye lcualesunF rameLayout.
UnT abW idgetesuna tr
ibutoque mues traunal is
tadelase t
iquetasdelapes tañaquerep resen
ta
cadapág ina.Elob je
tocon tenedordees te WidgetesT abHos t
. Cuandoelusua r
ioselec c
ionauna
pestaña,es teob je
toenv íaun mensa jea lcon tenedorp rincipa
l,TabHost,paraindica
rlequedebe
camb iarlapág ina mostrada. Porlogene ralnoseu til
izan muchos mé todosdirectamen
teenes te
obje
to .El contenedo rT abHos tse u
til
iza para ag rega retiquetasy gest
ión de devoluciones de
l
lamada .
As
íquebás icamen teunT abWidge
tesune lemen toquecon t
ienelaspestañasconlascua lesse
interactúacuando laap
licaciónestacorriendo.
Porú lt
imo ,yacomen tamos que un F rameLayou t está diseñado pa
ra bloquear un área enla
pantal
lapa ra mos t
rarunso loelementoalavez .

Imp
lemen
tac
ión

Parapode rimp
lemen
tarlaspestañaslaclase E
lemen
toMuseoAc
tiv
itydebeextenderdelaclase
TabAc
tivi
ty
. Comotambiénneces
itamosreal
izarcomun
icac
iónconelserv
idordeberáimplemen
tar
lain
terfazI_Ac
tiv
i
tyT
ask.

E
lemen
toMuseoA
ct
iv
ity
.
java

Loprimeroquedebemoshace renestaac
tiv
idadesob
tenerlosdatosdelob
jetoqueelusua
riose
encuent
ra exp
lorando
. Para el
lolereal
izamosla pe
tic
ión BUSCAR_ELEMENTO alata rea
as
incrón
icaServ
idorAsyncTaskylepasamoscomoparámetrolosdatosqueobtuv
imosdelcód
igo
QR.

E
lemen
toMuseoA
ct
iv
ity
.
java

188
E
lSe
rvido
rAsyncT
askrea
l
iza
lape
t
icióna
lCl
ien
teHTTPde
las
igu
ien
te mane
ra:

Se
rvido
rAsyncT
ask
.java

Luego,enel métodogetObjetoMuseo(
)de lac laseCl
ienteHTTPc reamosunob je
toConexionHTTP
conla url MuseumWeb /museo /
recuperarDatosObje
to.do, cor
respondiente alrequerim
iento que
devue
lveunob jetoRespuestaHTTP.E steobjetocont
ieneuncód igodee r
roryun mensa jeencaso
dequeocu r
raa lgúnerro
renlacomun icacióncone lservidoryunob jetodet ipo Ob
jetoMuseo,el
cualcon
tieneelnomb rede lobjeto
,suca tego r
íayellistadodelos ma ter
ialesqued ispone,ta
les
comountextoqueco rrespondea ladescripcióndelobjeto,audio,imágenes
,v ideosyjuegos.

C
l
ien
teHTTP
.
java

Unavez querec ibelarespues ta del se


rvido
rp rocedemos acrearlas dist
intas pestañas que
correspondenacadaunade lassecc ionesyse teamoslosvalo
rescorrespondientesalnomb reyla
categoríaenlosTex
tViewrespectivos
.
Además ,guardamoslosdatosde lobje
toat ravésde SharedPre
ferencepa ratenerd ispon
iblela
informacióndelob
jetoenelrestode lasact
ividades.

189
Paracadaunadelaspes
tañasdebemosind
ica
relInten
tqueuti
l
izaremosencadacaso,esdec
ir
,a
quéactiv
idaddebemosl
lamarcadavezquee l usuar
iose
lecc
ioneunapestaña. Acon
t
inuac
ión
expl
ica
remoslafunc
ióndecadaunadeestaspes
tañas:

5
.1Tex
to

Es
ta sección seimplemen
tó conla c
lase T
extoA
ct
iv
ity
, quet
iene como ob
jet
ivo mos
tra
rla
desc
ripc
ióndelobje
toencuest
ión
.

V
istadelaac
tiv
idad

190
Lavis
tadelaac
t
ividadcons
is
tesimp
lementeenunTex
tViewcon
ten
idoporunS c
rol
lViewpa
ralos
casosen
losqueeltex
tonoentracomp
letamen
teen
lapan ta
l
lade
ldispos
i
tivo
.

Imp
lemen
tac
ión

Comoenestaclasenodebemosreal
izarunacomun
icac
iónconelse
rvido
ryaquedisponemosde
ladescr
ipc
ióndelobje
toenlasp re
ferenc
iasdelaapl
icac
ión
,simp
lemen teex
t
iendedelaclase
Ac
tiv
i
ty.

T
extoA
ct
iv
ity
.
java

191
Enes taactiv
idadtambiénhacemosusode lf
lagFLAG_KEEP_SCREEN_ONe lcua
llepermi
ti
ráal
usua r
ioleercómodamen teeltex
tosinque lapan
tal
lase leapague.
F
ina lmenteloquerea l
izamosenes taclaseesobtenerlainformac
iónde lobjetogua
rdadoenlas
preferenc
iasdelaaplicación
,buscamose l ma
ter
ia
lco r
respondien
tea ltex
tode lmismoyseteamos
suva lorene lcomponen teTextV
iewpa raqueseav is
iblealusua r
io. Encasodequee ltextono
existese muestraunvalo rpo
rdefectoind
icándo
lealusua r
ioquenosed isponedeladescr
ipc
ión
delob je
to.

5
.2Aud
io

192
F
igu
ra8
.39
:Aud
ioA
ct
iv
ity

Enes
tasecc
ióne
lusua
riopuedeescucha
rladesc
ripc
iónde
lob
jetoat
ravésdelarep
rodu
cciónde
unaud
io.

V
istadelaac
tiv
idad

Lavistaladiv
id
imosentresseccionespr
inc
ipa
les
:unaba r
radep rog
reso,pa
raindica
relprog
reso
delaudio,unasecc
iónparalosbotonesderep
roducc
iónyunaba rraparaaumentarodism
inu
irel
volumen.
Paraimplementa
rlabarradep rogreso
,tan
toparaelprogresodelaud
iocomopa raelvo
lumen,
ut
i
lizamoselcomponenteSeekBa r
.

aud
io.xm
l

Un SeekBa
r der
iva delac lase P
rogressBa
ryle agrega unindicador(thumb) de pos
ic
ión.E l
usua
riopuedeselecc
iona
re lind
icado
rya rra
stra
rhac
ialaizqu
ierdaohac ialaderechaparaajus
tar
e
lniveldeprog
resoactual
.Loquenospe rmi
tíaenes
tecasoade lanta
rore trasa
rlapis
tadeaud io
oaumentarobajarelvo
lumen .

193
Imp
lemen
tac
ión

Pa
raimplemen
tar es
ta act
iv
idad u
ti
lizamoslac
lase Aud
ioA
ct
iv
ity que a
ligua
l quela a
ct
iv
idad
an
ter
iorex
t
iendedelaclaseAct
iv
ity
.

LasdosAP I
’squeAnd ro
idp roveeparatraba
jarconson idossonSoundPoo ly MediaPlaye
r.
Podemosu t
i
lizar SoundPoolpa rareproduci
rpequeñasp istasdeaud io. Conestaclasepodemos
repet
i rlarep roduccióndeson idosyhas tareproduci
r múltip
lessonidosde mane rasimul
tánea. Un
datoimpo rtantequehaytoma rencuentacuandoset rabajaconestac lase,esquelosa rch
ivosde
sonidoquesequ ierareproduci
rnodebensob repasar1 MBdetamaño . Pe
rocuandoque ramos
trabajarconp is
tasdeaud io máslargasdebemosu t
il
izarlaclase MediaPlayer
.
Enel mé todoonC reate
()delaac t
iv
idadinic
ial
izamoscadaunode loscomponen tes
.

Aud
ioA
ct
iv
ity
.
java

ParaelcasodelSeekBarin
ic
ia
lizamoslabar
radep rog
resoenceroyleas ignamoselescuchador
seekBarChangepa
raquea t
iendaeleventocadavezqueelusuar
io mueveelind
icadordelabarra
hacia
laizqu
ierdaoderechayactua
l
iceelreproduc
tora
laposic
ióncorrec
ta.

Aud
ioA
ct
iv
ity
.
java

194
Leindicamos alos bo
tones de
lreproduc
tor pa
ra que at
iendanlo even
tosinic
iar
, ade
lanta
ro
ret
rasarla p
ista de aud
io. Depend
iendo de
l botón que es se
lecc
ionado a
tenderá e
l even
to
adecuado.

Aud
ioA
ct
iv
ity
.
java

195
Luegoin
ic
ial
izamos e
lreproduc
torcreando unainstanc
ia dela c
lase Med
iaP
laye
r,al quele
as
ignamosunescuchadorencasodequeo cur
raalgúnerroryot
roparaquecuandoelaudiose
hayacomp
letadopodamosre
inic
iare
lreproduc
tornuevamente.

Aud
ioA
ctiv
i
ty.
java

Porúl
timo
, para con
tro
larel vo
lumen de
l audiolo hacemos através delains
tanc
ia del
Aud
ioManage
r ala quelesol
ici
tamoslosvalo
res de
lvolumen ac
tualyvolumen máx
imo pa
ra
in
ic
ial
iza
rel SeekBarenca
rgadode mane
jarelvolumen
. Enestecaso
,cadavezquee lusua
rio

196
mueveelind
icado
rdelaba
rraseac
tua
l
iza
ráe
lvo
lumenat
ravésde
l mé
todose
tSt
reamV
olume
()
de
lAudioManager
.

Unavezquetenemosloscomponen tesinicia
l
izadosyelusuarioinic
iaelaudiodebemosp reparar
e
lrep roductorconlau r
lqueseco rrespondea laudiode
lob jeto
. Paraello
,u t
il
izamose l mé
todo
setDataSource()alquelepasamoscomopa rámet
rolaurl
,p reparamose lrep roduc
tordeforma
síncronaatravésdel métodoprepa
re()elcualpuededurarunossegundosypo rúlt
imoledecimos
a
lrep roduc
tor que com
ienceconlarep roduccióncon e
l mé todo sta
rt
(). Una vezinic
iado, se
actual
izaeltextoconladurac
ióntotalyle ind
icamosalseekBarladu rac
ión máxima.

Aud
ioA
ct
iv
ity
.
java

E
l métodoupda tePos i
t
ion()seuti
lizaparaactual
iza rlaba r
radep rog
resoye ltextoparaindicarla
durac
iónac tuala med idaquee laudioavan za.Elob je
to Handlernospe rmi
tee jecu
tartareasen
segundo plano de una mane ra muysenc il
la. Para quelo en tendamos me jor un handle
r es e l
puentequehayen treunh i
losecunda r
io(thread)ye lh
iloprinc
ipal(aplicac
ión). Comonoso tros
deseamosquet ranscurr
idoscier
totiemposeac tualiceautomá t
icamen teelp rog
resodelaud ioen
lainter
fazde lusuario
,leind
icamosa lobjetoHand le ratravésdel métodopos tDelayedquee jecute
un obje
to Runnab leconc ier
taf recuenc
ia.E l ob
je to Runnables implementevue lve allama ral

todo upda tePosit
ion()
, logrando de es
ta mane ra quelain te
rfazseac tual
iceconstantemen te
hastasufinal
ización
.

Aud
ioA
ct
iv
ity
.
java

Enel mé
todostopP
lay(
)p r
inc
ipalmen
teloquehacemosesde
tene
rlarep
roducc
iónde
laud
iocon
todo
loqueelloimp
licaylore
inic
iamos.
197
Aud
ioA
ct
iv
ity
.
java

Porúl
timo,esimpo
rtan
tequeene l mé
todoonDes
troy
()delaac t
iv
idadlibe
remoslosrecu
rsos
ocupadospo
relrep
roduc
tor
.Es
tolohacemosat
ravésdel mé
todore
lease
()
.

Aud
ioA
ct
iv
ity
.
java

5
.3Imágenes

198
F
igu
ra8
.40
:ImagenA
ct
ivi
tyyFu
l
lSc
reen
ImageA
ct
iv
ity

Atravésdees tasecc ióne lusuariopuedev isua


lizaruncon jun
todeimágenesasoc iadasalob jeto.
Enlap rimerapan tal
lapuedeve rellistadodeimágenesenlaquese mues traunimagenpequeña
juntoalnomb reyunab revedescripcióndela m isma.Cuandoe lusua r
ioselecc
ionaunadee llas,la
imagensev isua
lizaentamañocomp le
toypod ránavega rhacialaizquierdaoderechaen trelas
imágenesd ispon
ibless innecesidaddevo lverall
istado.
Comolaac t
ividadImagenA c
tiv
ity,queesunl istadodeimágenes ,tieneelm ismocomportam iento
quela ac tividad enla que se mues t
ra e llis
tado de museos exp licada an
ter
iormente, nos
enfocaremos p r
incipa lmente en exp licar la imp lementac
ión de la segunda ac tividad,
Fu
llS c
reenImageA ct
ivitylacualesl lamadadesdelaac tiv
idadImagenA ct
ivi
tycuandoseselecc iona
unelemen todela lista.

V
istadelaac
tiv
idad

fu
l
l_image
.xm
l

199
Comohemoshechoeno trasac
tiv
idades,enes tavis
tatambiéninc
lu
imose llayou
tpa raind
icar
leal
usuar
ioqueestamoscargandolaimagen.
Perolo másimportan
te que debemos expl
ica r en es
tavis
ta esla ut
il
ización de
l componente
ImageSwitche
r.Estecomponentenospe rm
ite mostrarunimagenentamañocomp letoyes muyú t
i
l
paracambiarent
redosimágenesyp ropo
rcionafo rmasdetrans
icióndeunoao t
roat ravésde
animac
ionesaprop
iadas.Acont
inuaciónexpl
icamoscómoseimp lementadichocomponen te
.

Imp
lemen
tac
ión

Loqueh ic
imosen toncesescrea
runac lasequenosó loext
iendade MuseoAct
ivi
tysinotambién
queimplementelainte
rfazV
iewFacto
ry.ViewFactoryesunainte
rfazquecrealavis
taquenecesita
ser most
rada en el componen
teImageSw itcher
.T iene un método makeV
iew() que debemos
implementar
.

Fu
l
lSc
reen
ImageA
ct
iv
ity
.
java

200
Ene l mé
todo makeV iew()simplemen tec reamose lcomponenteImageViewdondeque remosque
sevisual
icela imagenco r
respondiente.
Lop r
imeroquedebemoshace rene l mé todoinic
ia
liza
rdelac lase Ful
lScreenImageA c
tiv
ityes
obtenerellistado de ma ter
ia
les del objeto que se cor
responden alasimágenes quefue ron
enviadosdesde laactiv
idadImagenA c
tivi
tyatravésdeunIn ten
t.Dichos ma
ter
ialescont
ienenlau rl
delasimágenespa rapode rdescargarlasdesdeelse rv
ido
r.Desdelaactiv
idadan te
rio
rtamb iénse
envíalaposicióndelaimagense leccionadapa rasabercuáleslaimagende llis
tadorecib
idoque
debemosv isual
izarpo rp
rimeravez.

Fu
l
lSc
reen
ImageA
ct
iv
ity
.
java

Unavezhechoes
to,debemosin
ic
ia
liza
relcomponen
teImageSw
i
tche
r.

Fu
l
lSc
reen
ImageA
ct
iv
ity
.java

201
Aes tecomponen teademásdeind icarlequean imacióndeseamosquerea l
icecadave zquela
imagenen treosa lgadelapan ta
lla,at ravésdelos mé todosse t
InAnima t
ionyse tOutAnimation
respectivamente,debemosas ignar
leunescuchado rpa raeven tostácti
lquesep roduzcanenla
pantal
la. Dees ta mane rapodemosin terpreta
rcuandoe lusua r
iohaceunges tocone ldedode
izquierdaade recha ,dede rechaaizqu ierdaos implemen tetocalapan tal
la.Pa ralosdosp rimeros
casos,s ign
if
ica que e l usuar
io quiere navega rsobrela ga ler
íayreco rrerlasimágenes hac ia
adelanteohac iaa trásrespectivamen te. Encamb iocuandotocalapan talla,loquehacemoses
mostra
ruocu l
tarladesc r
ipcióndela imagen .
Para obtenerlaimagen av isual
izaru ti
l
izamosla pos ic
ión actual, obtenemosla u rl dent
ro del
l
istadode ma teria
lesye jecu
tamoslata reaasincrónica Batch
ImageDown loaderpara descargar
d
ichaimagen desde e l serv
idor
. Una vez quetenemoslaimagen debemos as ignársela a
l
ImageSw i
tcherat ravésdel métodose tImageD ra
wableyac tual
izarladesc r
ipciónde la m
isma .
Fu
llS c
reenImageA ct
ivi
ty
.java

202
Guardamoslaimagenenunacachéparatener
ladispon
ib
leencasoquee
lusua r
ioquie
ragi
rarla
panta
lla pa
ra ve
rlaimagen en ot
ra posic
ión y de es
tafo
rma nos ev
itamos comun
icarno
s
nuevamenteconelse
rvido
r.

5
.4V
ideos

203
F
igu
ra8
.41
:VideoA
ct
iv
ityyFu
l
lSc
reenV
ideoAc
ti
vi
ty

Atravésdees tasecciónelusuar
iopodráve rd
ist
intosvideosrelac
ionadosa
lobje
to. Pa
rael
lo,
deberáselecc
iona
runode losvideosde
ll
istadoypodrávisua
liza
re lmismoenpan
tal
lacomple
ta.
Como en e l caso an ter
ior nos cen tra
remos en exp l
icar la segunda ac t
iv
idad
Fu
llScreenVideoA
ct
iv
ity.

V
istadelaac
tiv
idad

Exis
tendosfo rmasdec rearin
terfacesdeusuar
ioenand ro
id.Unafo
rmaesdeclara
tivaylaot
rae s
medianteprogramación.
Lac reación deinte
rfacesdeusua r
iodec
larat
ivaserea l
izaconcódigo XML
, dondesede finen
como se ve ránlos componen tes enla panta
llas y es comolo ven
íamos hac
iendo has
ta el
momen to
. Pe ro para este caso, nos parec
ió me jo
rla segunda opción
,c rearlainterfaz
programá t
icamente.

Imp
lemen
tac
ión

E
stac
laseex
t
iended
irec
tamen
tedeA
ct
iv
ity
.

Fu
l
lSc
reenV
ideoA
ct
iv
ity
.
java

204
En el método onCrea
te(
)indicamos que no queremos quese mues
trela ba
rra detí
tulo dela
apl
icaciónut
il
izandoel métodoreques
tW indowFeatu
reyse teamose
lFLAG_FULLSCREEN,pa ra
ut
i
lizareltamañocomp le
todelapan ta
llayFLAG_KEEP_SCREEN_ON ,para man
tenerlaventana
v
isib
lea lusuar
io.

Laforma más simp


le que d
isponemos en And
roid pa
ra v
isua
l
iza
rvideos es at
ravés de
l
componen
teVideoV
iew.

Fu
l
lSc
reenV
ideoA
ct
iv
ity
.
java

A
lVideoViewleasignamosuncomponen
te Med
iaCon
tro
lle
r.E
stecomponen
teesunavistaque
con
tieneloscon
tro
lesdeunrep
roduc
torde mu
lt
imed
ia. No
rma
lmen
tecont
ienelosbo
tonescomo

205
in
iciar
, pausa
r, adelantar
,e tc.y una bar
ra de p
rogreso
. Se ocupadelas incron
izac
ión delos
cont
rolescone lestadodelarep roducc
ión
.El MediaCont
rol
lerc
rearáunconjuntopredete
rminado
deloscontro
lesylospond ráenunaven tanaf
lotan
teencimadelaap l
icac
ión
.E stosdesaparece
rán
s
isede jainac
tivadu rantetressegundosyvuelvenaaparecercuandoelusua
riotocalapantal
la.

Lain formaciónqued isponemosde lv ideoquee lusua riose leccionóese lidde lv ideodeyou tube .
Pore jemplo,enlau r
lh t
tp:
//www .you tube .com/watch?v=Z i
lvl9tS0Oge lidesZ i
lvl9tS0Og.Entonces ,
parapode rrep roducirestev ideo,debemosaccede ra la rchivoxm lconalain formaciónquese
corresponde a ese id . Pa ra e l
lo, you tube nos p rovee de la u r
l
ht
tps :
//gdata.youtube.com/feeds/api/videos /
. Dentro de es te archivo xml encon tramosla u rl del
v
ideoconfo rmato 3gpe lcua lsopo rta e
lcomponen te VideoV iew . Pa
ra pode r parseare lxm ly
reco rre
rlo u
ti
l
izamos las clases javax.xm l
.pa rse
rs.Documen tBu
ilderFactory
,
javax .xml
.pa rsers
.Documen tBui
lde ryo rg.w3c
.dom .Documen t.
Unavezqueencon tramoslau rlselase teamosa lV ideoV iewat ravésdel mé todose tVideoURIy
una vezl is
to pa rarep roduc i
rsein iciarálarep roducc ión delv ideo at ravés de l escuchado r
OnP reparedListenerasignadodu rante la in
icia
l
ización
.

Fu
l
lSc
reenV
ideoA
ct
iv
ity
.
java

Una vez que se comp


letólarep
roducc
ión
,el escuchado
r OnComp
let
ionL
istene
rfina
l
iza
rála
ac
tiv
idad
.

5
.5Juegos

206
F
igu
ra8
.42
:JuegoA
ct
iv
ity

Enestasección
,elusuariopodráaccederadosjuegosre
lac
ionadosalob
jetopa
raquepueda
demost
rarloqueaprendióut
i
lizandoelres
todelosrecu
rsosd
isponib
les
.Es
tosjuegoscons
isten
enenunatriv
iayununirconf
lechas.

5
.5.1T
riv
ia

E
l desa
rro
l
lodees tejuegoconsisteenresponderuncon jun
todepregun
tasselecc
ionandolas
opc
ionesquee
lusua r
iocons
idereco rrec
tas. Ena
lgunaspregun
tasdebese
lecc
ionarunao más
opc
ionesyeno
trasdebeopta
ren trelarespues
tassíono.

F
igu
ra8
.43
:Tr
iv
iaA
cti
vi
ty

V
istadelaac
tiv
idad

207
t
riv
ia.xm
l

Lat
riv
iaesdinámica,esdecir
,varíadeacuerdoa
lobjetoquee lusua r
ioseencuentravisua
l
izando
yademáslaspreguntasquesepuedenu t
il
izarpa
rac rearlat
riv
iapuedense rdedist
intot
ipo,como
mult
iplecho
iceodeles t
iloS
í/No.E spo
reste mo
tivo
,quelosd ist
intoscomponentesuti
l
izadospara
rep
resenta
rlaspreguntasyrespues
tasdelatr
iv
ia,sec reand
inám icamenteal
inic
iarlaact
iv
idad.

Imp
lemen
tac
ión

La clase que ut
i
lizamos pa
raimp
lementa
r es
tejuego es T
riv
iaAc
tiv
i
ty,la cua
l ext
iende de
MuseoA c
tiv
ity
,yaquedebemosob
tener
losda
tosdelat
riv
iaquesecor
respondea
lobjeto
.

T
riv
iaA
ct
iv
ity
.
java

Pa
ra buscar la triv
ia que se corresponde al ob
jeto u
ti
l
izamos la tarea as
incrón
ica
Se
rvido
rAsyncTask
,alaquelereal
izamose lreque
rim
ien
to GET_MODELO_TR IVIAylepasamos
comoparámet
roe l
iddelobje
toco
rrespond
iente
.

T
riv
iaA
ct
iv
ity
.
java

208
Luego
lata
rease
laso
l
ici
taa
lCl
ien
teHTTP
.

Se
rvido
rAsyncT
ask
.java

Enel métodogetModeloTr
ivia()delaclase C
lienteHTTPcreamosunob jeto Conex
ionHTTPconla
ur
l MuseumWeb /museo/recuperarModeloT
riv
ia.do,cor
respond
ientealrequer
im ien
toquedevuelve
unobje
toT r
iviaHTTP
.E s
teobjetocontieneuncód igodeerro
ryun mensa jeencasodequeocu r
ra
a
lgúne r
rorenlacomun icacióncone lserv
idoryunob jetodetipoTr
ivia
,elcualcon t
ienee
ll
istado
depreguntasyrespuestasde lat
riv
ia.

C
l
ien
teHTTP
.
java

Unavezquerec
ibimoslarespues
tadesdeelserv
ido
ryveri
ficamosquenohayaocu
rr
idon
ingún
er
rorp
rocedemosagenerarlaencues
taenbasealosda
tosrecib
idos
.

T
riv
iaA
ct
iv
ity
.
java

209
Enel mé
todo mos
tra
rMode loTr
iv
ia(
),podemosverqueenbasealtipoderespues
tasegenerala
v
istacor
respond
ien
te. Cuandoesdetipo“Sí-
No”generamoscomponen
tes Rad
ioBu
ttonycuando
esdet
ipo“Mult
ip
leChoice”ut
il
izamoscomponentesCheckBox
.

Unavezquee lusua
riorespondelat
rivia
,seva
l
idalacan
t
idadderespues
tasco
rrec
tasquerea
l
izó
yselas mos
tramosatravésdeund iálogo
.

T
riv
iaA
ct
iv
ity
.
java

5
.5.2Un
irconf
lechas

E
ldesarro
llodeestejuegoconsisteenrelac
iona
runconcep todelacolumnaizquie
rdaconunode
lacolumnaderecha
.Pa rael
lo,elusuariodebeselecc
ionarunconceptodealgunadelasco
lumnas
paraact
ivarlaf
lechaya rras
trarla mismahaciae lconcep
todelao t
racolumnaquee lusua
rio
cons
idera que se co
rresponde.E ljuegotermina cuandologre un
ir co
rrec
tamentetodoslos
concep
tos.

210
F
igu
ra8
.44
:Un
irF
lechasA
ct
iv
ity

V
istadelaac
tiv
idad

Como so
lo se pe
rmi
ten cuat
ro opc
iones entota
l po
rjuego
,la v
is
ta dela ac
t
ividad cons
iste
s
implementeendosL
inearLayou
tquecontienenuncon
jun
todecua
trobo
tonescadauno.

Imp
lemen
tac
ión

Laclase UnirF
lechasA
ct
iv
ityex
t
iendedelac
lase MuseoA
ct
ivi
tyyademásimp
lemen
talain
ter
faz
OnTouchLis
tener
.
Un
irFlechasAct
iv
ity
.
java

Comoene lcasoan ter


iordebemosut
il
izarlata
reaSe
rvido
rAsynT
askparasol
ic
ita
rlee
lconjun
tode
pregun
tasyrespues tasqueseco r
respondenalob
jetoqueestávisua
l
izandoelusua
rio
. Enes
te
caso,u
ti
lizamoslatarea GET_UNIR_CON_FLECHAS.

211
Un
irF
lechasA
ct
iv
ity
.
java

Se
rvido
rAsyncT
ask
.java

C
l
ien
teHTTP
.
java

Unavezquerecib
imoslosdatos,cargamoscadaunadelasp regun
tasenlacolumnadebotones
izqu
ierda
, carga
moslas respues
tas enla co lumna de
recha y mezclamoslas re
spuesta
s
a
leato
riamen
te.Estolohacemosatravésde
l métodoshu
ff
ledelaclaseCo
llec
t
ions.

Un
irF
lechasA
ct
iv
ity
.
java

212
Paradetectarlosdife
renteseven tosquep roducee lusua r
iocuandotocalapan tal
laya rras
tra,lo
hacemos at ravés delain te
rfaz OnT ouchListener, enlacua l debemosimp lementare l método
onTouch(Viewv , Mot
ionE ven
t event). En e s
te mé todo med iante el ob
jeto event ob
tenemosla
coordenadaxeydondee lusua r
ioseleccionócone ldedo,en toncespodemosiden t
if
icarsise
encuentraonopos ic
ionadosob reunodelo sbo tones.Ene lcasoquees téposic
ionadosob reun
botónseac tivarálaflechayse man tendráenesees tadohas taquee lusuar
iosue l
tee ldedo.
Cuandosue l
tae ldedo,debemosve r
if
icarsiloh izosob reot
robo tónys i,esasí
,debemosva l
idarsi
es
tebo tónco r
respondea larespuestaco r
recta.

Un
irF
lechasA
ct
iv
ity
.
java

213
Cuandoe
lusua
riounetodos
losconcep
tosco
rrec
tamen
te,se
le mues
traund

logo
ind
icandoes
ta
s
ituac
ión
.

5
.6Ca
tego
ría

214
F
igu
ra8
.45
:Ca
tego
ríaA
ct
iv
ity

Cuandoselecc
ionamose lnomb
redelaca tegor
íaquese mues traene lencabezadodelobjeto
,le
permi
teaccederalusua r
ioaladescr
ipcióndela m isma.Además,podemosve rsugerenciasde
ob
jetosalosquepodemossegu i
rrecor
riendo.Dichosobjetospuedenserdela m ismacategor
íao
deotrasqueseencuen t
reenexpos
ic
iónene l museo.
Comoe lcomportamien
toessimi
laralaac t
iv
idadSob reElMuseoAct
iv
ityomit
iremoslaexplicac
ión
desu imp
lementación
.

6
.Encues
ta

215
F
igu
ra8
.46
:Encues
taA
ct
iv
ity

E
l objetivo de esta actividad esquee l usuariocomp leteunaencues ta.Luego,e l personal del
museotend ráaccesoalosresu ltadosat ravésde ls
itio Web,loquelespe rmi
t
irásaca rd ist
intas
conclusionesconrespec to alav is
ita querealizó e
l usuar
io. Comola encues ta es p ropia del
museo,esdec ir,cada museogene rasup ropiaencuesta,lacargade laencuestaenlaac tividadse
real
izad inámicamen tealigualquehac íamosene lcasode lat r
iv
ia.Paraestecaso,ad iferenciade
latrivia, se permitenrespues ta detipote x
to para que el usuario puedaingresar su p ropia
respues ta
.O tradiferenciaquetenemosconrespec toalat riv
iaesqueaqu ínohayrespues tas
cor
rectas ,sino que simp lemen te
, se envíanlosresu ltados al serv
idor pa
ra que puedan se r
a
lmacenadosyconsu ltadospos ter
iormente.

7
.Ayuda

216
F
igu
ra8
.47
:AyudaA
ct
iv
ityyA
yudaVa
lueA
ct
iv
ity

Es
taac
tiv
idadsi
rvedeasis
tenc
iaalusuar
io,esdec
ir
,lepe
rmi
tea
lusua
rioap
rende
rau
t
il
iza
rcada
unade
lasopcionesqueseof
recenenlaapl
icac
ión
.

V
istadelaap
licac
ión

ayuda
.xm
l

Parala vista dela ayuda ut


i
lizamos e l componente E
xpandableL
istV
iew,el cual nos pe
rmi
te
imp lementarelpatróndediseñoe legidopa raestecaso
.At ravésdeestecomponen tepodemos
organiza
rlainformaciónengruposyc rearunalis
tadedosn iveles
.Elgruposeco r
respondeacada
opcióndel menúp r
incipa
ldelaap l
icaciónyene lsegundon ivelsev
isua
lizanlasaccionesquese
puedenrea l
izarencadaunadee l
las.

217
Imp
lemen
tac
ión

Paraimplementa
r es
ta ac t
iv
idad debemos extende
r delac lase Expandab
leLis tAc
t
ivi
tyyc rea
r
nuest
roprop
ioadaptado r
.Aligua
lquecone lListV
iewdebemosc rearunadap tadorquegest
ionela
co
lección de da tos que mos t
raremos. En es te caso c reamos uno l lamado
MyExpandab
leLis
tAdapter el cual ex t
iende de la c lase BaseE xpandableLis
tAdapte
r e
implementamoslos métodosnecesar
ioparaquelavistase muest
recorrec
tamen te
.

A
yudaA
ct
iv
ity
.
java

Cuando e
l usuar
io se
lecc
iona un elemento de
l segundo nivel
, sellama ala act
iv
idad
AyudaV
alueA
ct
iv
ityenlaquese mues
traladesc
ripc
ióncor
respondientea
laopc
ióneleg
ida
.

A
yudaA
ct
iv
ity
.
java

Conestaúl
timaac
tiv
idadhemoscomp
letadoladesc
ripc
ióndeloscomponen
tesquefo
rmanpa
rte
delaapl
icac
ión
.

8
.2.6In
ternac
iona
lizac
ión
218
EnAnd roidesa lgo muysenc
il
loimplementarunaapl
icaciónquesopo rteva r
iosidiomas.Pa rael
lo
debemos u ti
l
iza re larch
ivost
rings
.xml quese encuent
ra ene ldirecto
riores/values denues t
ro
proyec
toAnd roid.Elarch
ivost
rings
.xmlalmacenatodaslascadenasdetex tou t
i
lizandoelformato
XML pa ra su de fin
ic
ión y pa
ra que nos sea senc
i
llo acceder a cadarecu rso y ut
i
lizar
los en
cualqu
iera rchivoxm locódigoandroid
.E stearch
ivonosfaci
li
talatraduccióndeunaap l
icacióna
d
istin
tosidiomas

res
/va
lues
/st
ring
.xm
l

E
le lementora ízdees terecu rsoes <resou rces></
resou
rces>. Cadavezqueneces itemosdef
in
ir
unanuevacadenadetex todebe remosag regarune lemento< s
tr
ing>conuna t
ributonamecuyo
valordebeserun ident
if
icadorde lacadena .
S
iemp requesequ ieraas
igna rcadenasdetex toauna rchivodelayout,nosposicionaremosenel
at
ributoandroid:
tex tdelwidge tdenues trointerésyenluga rdede f
in
i re
ltextoes tát
icovamosa
ut
i
lizarelformato @s tr
ing
/[textodelat
ributonamequede f
inimospa rae
ls t
ring
].
Lainternac
iona l
izacióndeunaap l
icaciónenAnd ro
idseresue lveimplementandova riosa
rch
ivos
st
rings.xml
,unopo rcadaid iomaqueneces i
temosimp lementar
.

Comovamosapub l
icarlaaplicaciónendosid iomas:inglésycas te
l
lanotenemosquec rearuna
carpetares
/value-en,copiarela rchivos t
rings
.xmlqueten íamosenres /va
luesdesdelac reación
de
lp royec
toyt raduci
rcadava lo ralidiomainglés.Dejaremoslascadenasenespaño l(quese ráel
id
iomapo rdefecto)ene larchivolocalizadoenlaca rpetares/values
/st
rings.xml
,ylascadena sen
inglésenres/values-
en/s
tr
ings.xm l
.Aqu íestamosusandoe lsuf
ijo'en'deIng lésparalascadena s
detextoenes teidioma.T ambiénhaysu f
i
jospo rid
iomaypo rregiónopa ís,comosones- AR
,es-
ES,e tc
.A s
ís ireque r
imost raducirla ap l
icac
ión a ot
rosid iomas ,tendremos queinc lu
irtantos
d
irector
iosva
lues- [cód
igoDe l
Idioma ]comoseannecesa rios
.
Porúlt
imo,cabe menc ionarques ie lidiomade ldispos
it
ivoene lqueseins talenuestraapl
icación
co
incidecone lcódigodea lgunodelosd irec
tor
iosdeidiomaqueanexamos ,eseserátomadopo r
de
fau l
tparadesplegarlaaplicación.

res
/va
lues
-en
/st
ring
.xm
l

219
220
Cap
ítu
lo9
.Aná
lis
isdeusab
il
idad

En e
lcap í
tulo an
terio
r hemosv is
to deta
lles delaimplementac
ión de
lp ro
tot
ipo móv
il
. En es
te
capí
tuloveremoscuest
ionesrespectoalaná l
is
isdelausabil
idadqueseh izosobrelaexpe
rienc
ia
delvis
itan
te del museo usandola ap
licación móv
il
. Se de
tal
laránlosperf
i
lesde usuar
iosyse
expondránlasconclus
iones.

9
.1A
rmadodeAmb
ien
te

E
lanális
isdeusabi
lidaddelaaplicac
ión móv
ilfuellevadaacaboene lcontex
todel Museode
Fís
ica
.Parael
lo,secreóe
lambientedeproduccióndelsistema. Comoservido
rparalaap
licac
ión
Webseuti
l
izó
laPCqued ispon
íaal

,lacua
ltenía lass
iguientescarac
ter
íst
icas:

Procesador
:In te
lcore2duoCPU2
.33GHz
Memo r
ia: 1 GBdeRAM
S
istema Ope ra
tivo
:WindowsXP

Luego,seconectounrou terinalámbr
icopa raquelossma rtphonesut
ilizadosparalap
ruebase
puedanconec
ta r aInternety de esa mane ratengan acceso ala información de
lse
rvidor de
l
Museo.
Unavezqueseencon trabatodoloan ter
iorfuncionandocor
rectamentesep roced
ióalacargade
datosdeunob je
toenpa r
ticu
larenlaap licac
ión Web ,seimprimióel QRyseexpusof rentea l
ob
jetoencues
tión.
Porúl
timo
,seinstaló
laap licación móv
i
len lossiguien
tessmartphonesdisponib
les
:

● Samsung Ga
laxySI
I,Vers
iónAndro
id 4.0
.3
● Mo
toro
la M
iles
tone
,V e
rsiónAnd
roid2.3
● HTCNexus One,Vers
iónAndro
id2.3

9
.2 Ob
jet
ivo

Deb
idoaquela Rea l
idadAumentadaesuna tecno log
íaeme rgente,todavíanofo rmapartedela
v
idacot
idianadelosusuar
ios.Porlotan
to,el museoesunainteresanteopo rtun
idadparaint
roduc
ir
aunpúbl
icova r
iadoala Real
idadAumen tada.Elestud
iodelain teracciónen t
relosvis
i
tantesde
l
museoye ldispos
it
ivoenunen tornonatural
,pe rocontro
lado,perm i
teiden t
if
ica
rlassituac
iones
donde
laRAesú t
ilyre
levante
.

Enlosúlt
imosaños, másy máses
tudioshancombinadola RAylos museos
.Sinembargo,es
tos
es
tudiossehancen t
radoenlaevaluac
ióndelosdispos
it
ivosde RAoenexam ina
rlosbenef
ic
ios
delainvers
iónenRAene lcampocultu
ral
,peronuncadescr
ibencómolaRApuedet rans
forma
rla
ac
tiv
idaddev is
i
tarun museo
.

Paraestudia
re lpape
ldela RAdu ranteunav is
i
taaun museo,sedebees tab
leceryde f
ini
run
modelodeactiv
idadesyu t
i
lizarun marcoteó
ricoparainteg
rarunaher
ramien
tacomounagu íade
museoaumen tada
.
E
ltes tt
ienedosobjet
ivosp r
inc
ipa
les,porunlado ,observa
rdequé maneraimpactala RAenuna
v
isitaaun museoypo rotro
,comproba rquelaap l
icac
iónseafác
ildeusarparalosusuariosysi
esteescapazdeob tener
losresul
tadosdeseadosdeuna mane rasenc
il
la.

9
.3Pe
rf
ilesdeusua
rios
221
Laeva
luac
iónse
llevóacaboconusua
riosc
las
if
icadosen
loss
igu
ien
tesg
rupos
:

Grupo A
: Conexper
ienciaenelusodecelularesyconexpe r
ienciaenelusodeap l
icacionesde
RA
GrupoB: Conexpe
rienciaene
lusodecelularesysinexpe
rienciaenelusodeap
licacionesdeRA
GrupoC:Sinexper
ienciaenelusodece
lularesyconexpe r
ienciaenelusodeapl
icacionesdeRA
GrupoD:Sinexper
ienciaenelusodece
lularesysinexper
ienciaenelusodeapl
icacionesdeRA

9
.4Encues
ta

Comopa r
tedeltestdeusabi
l
idaddelaapl
icac
ión móv
ilseinv
i
tóaung rupodepersonasalaque
seleexpl
icóelobjet
ivodelaap
licac
iónyselesen
tregóuncuest
iona
rio
,elcua
lestabad
iv
ididoen
lasigu
ientespa
rtes:

ParteA:Pe rf
ildelUsuar
io
Cadape rsonateníaquecompletarsusdatospe rsona
leseindicarcuá
lerasuexperienciaene luso
deteléfonoscelula
resy suexpe rienc
iaene lusodeap l
icacionesdereal
idadaumen tada.Estas
preguntas nos perm
it
íaiden
tif
icar a qué grupo de usua
rios delos menc
ionados anter
iormente
pertenec
ía.
E
lc ri
ter
ioqueu t
il
izamosparade te
rminarquienespe r
tenec
íanacadaunode losgruposfue:

● Aque llosquerespond íanquenoten íance lularosilopose íanperosuexpe r


ienciaensuuso
era bás
ica o noten ían; o nunca accedieron aIn te
rnet oredessoc iales desdesuce lularlos
cons
ideramoscomo“s inexpe r
ienciaenelusodece lu
lares”
.
● Losquerespond íanqueu t
il
izabane lcelularcon muchaf recuenciayacced íanaIn terne
ty
redessocia
lesloscons ideramoscomo“conexpe rienc
iaene lusodece lulares”
.
● Conrespec toa laexpe r
ienciaenap l
icacionesde RA ,consideramoscomo “conexpe r
ienciaen
e
lusodeap l
icacionesde RA ”aaque l
losqueind icaronquehab íanu t
il
izadounaap licac
iónde RA
a
lgunavezy“s inexpe r
ienciaene lusodeap licac
ionesdeRA ”ene lcasocon t
rar
io.

Par
teB :Sobrelastareasrealizadas
Lasta
reasquesel levaronacabofueronde menorcomp
lej
idada mayorcomplej
idadysebasa
ron
enelreconoc
imientodelaopciónquedebíanselecc
iona
rparacompletarlata
reaenformaráp
ida
.
Lasta
reasarealizarsonlass
iguien
tes:

Tarea1:Cuén tanosalgoace
rcadel museo.
Consis
te en accede
r alainformac
ión que hay sob
re e
l museo
, acced
iendo desde e
l menú
pr
incipa
l.

Tarea2:Exp
loraunob
jetode
l museo
.¿Quécarac
ter
íst
icast
iene?
Consis
teenaccede
ralaopc
ión“Exp
lora
”ylee
relcód
igo QR pa
raaccede
ralain
formac
iónde
l
ob
jeto.

Tarea3:Buscarimágenesdelm ismoobjeto
.¿Teayuda ronacomp render máselob
jeto?
Consis
teenverlasimágenesquetienee
lobje
to.Parae
llo,puedecon
tinuardesdeeles
tadoene
l
queseencuentradelata
reaante
rior
,acced
iendoalapestaña“
Imágenes”delobje
to.

Ta
rea4
:Escucha
rlaexp
licac
iónde
lob
jeto
.¿Quépud
isteap
rende
r?

222
Consis
teenescucharelaud
ioquehaysob
ree
lob
jetoexp
loradoacced
iendoa
lapes
taña“Aud
io”y
ut
i
lizarelrep
roduc
tordeaud
io.

Tarea5 :El
ijeunvideode
lobjetoyobservasufuncionamien
to.¿Quéteparec
ió?
Consisteenselecc
iona
runvideo,den
trodell
istadodevideosenlasecc
ión“Videos
”de
lob
jeto
explorado
.

Tarea6:Eli
jeeljuegoque mástegus te
.¿Quépun ta
jesacaste?
Consis
teenseleccionaralgunadelasact
iv
idadesqueseencuent
ranenlasecc
ión“Juego
s”,como
latriv
iaoe lunirconf lechasydemos t
rarloquepudoaprenderconlainfo
rmaciónqueestuvo
observandoenlastareasanter
iores
.

Pa
rteC:Sob reop in
ionesysuge renc
ias
Es
tapartenospe rmiteconoce
rlasop
in
ionesquetienee
lencues
tadoconrespec
toalaap
l
icac
ión
yasípoderobtenertanto
losaspec
tospos
it
ivoscomonegat
ivosdela m
isma
.

9
.5Aná
lis
isdelosresu
ltados

Can
tidaddepa
rt
ic
ipan
tespo
rpe
rf
il:

Conexper
ienc
iaene
lusode S
inexperienc
iaenelusode
ap
licac
ionesdeRA ap
licac
ionesdeRA
Conexpe
rienciaene
lusode G
rupoA GrupoB
ce
lula
res 3 4
S
inexper
ienciaenelusode G
rupoC GrupoD
ce
lula
res 0 6

Po
rcen
tajederea
l
izac
iónpo
rpe
rf
ildeusua
rio
s:

Ta
rea1 Ta
rea2 Ta
rea3 Ta
rea4 Ta
rea5 Ta
rea6
G
rupoA 3(100%) 3(100%) 3(100%) 2(66%) 3(100%) 3(100%)
G
rupoB 4(100%) 4(100%) 4(100%) 4(100%) 2(50%) 4(100%)
G
rupoD 6(100%) 6(100%) 6(100%) 5(83%) 4(66%) 6(100%)

Observac
iones: Latareade menorpo
rcenta
jederea
lizac
iónfuelata
rea5ysedebióaprob
lemas
enlaconexióna Wi-
Fi
,perotodoslospar
t
icipan
tesencont
raron
lasecciónre
fer
idaa
lata
rea.

9
.6Conc
lus
iones

Encuantoa
lp r
imerobje
tivodel tes
t,sepuededec irquelaguía RApuedecons t
i
tuirunobstáculo
encuantoaquepuedegene rarundistanciam ien
toent
reelvis
itanteyelobje
toquesee xponeen
e
l museo.Porot
raparte
,algunascaracte
rísticasdelaapl
icac
iónen r
iquec
íanlavis
ita,enpar
ticu
la r
at
ravésdelconten
ido mul
timed
iaqueseo frecíaydondesepod íaaprec
iarin
formaciónquenoe ra
v
is
ibleenlarea
lidad
.

E
ltestponede mani
fies
tolaidoneidaddela RApa radarunadesc
ripciónprec
isadelob
jetodel
museoy ayuda
ralosvisitan
tesaana l
iza
re lm
ismodeuna maneralúdica,g
raciasa
laexplorac
ión
delain
formac
ión mu
lt
imediaylosjuegospropo
rcionados
.

223
Un c
ri
ter
ioimpor
tante paralos v
is
itantes
,fue aprec
iar pa
ra pode
r confron
tar y compara
rla
in
formac
iónpropo
rcionadaporlaguía RAylareal
idad.Era muyimpor
tanteparalospart
ic
ipante
s
se
rcapacesdeencontra
rlain
formaciónpert
inen
tesobreelob
jetoasimplevis
ta.

En cuanto alafac
il
idad de uso,elresul
tado deltestfue muyfavorable
,la mayo ría delos
pa
rt
icipanteslog
raronrea
liza
rtodaslasta reas enformasimpleyráp ida. Para e
lcaso delas
pe
rsonasquenopose íaexper
ienciaenelusodece lu
lar
,necesi
taronas
istenciaparaelusobásico
de
lcelular
,perounavezqueap rend
ieronsuuso,laap
licac
iónlesresul
tóintu
itivayfác
ildeuti
l
izar
.

Losaspec tosnegativosdelaap l
icaciónquefueronencont
radospo rlospar
tic
ipantessebasa
ron
pr
inc
ipalmen teenelcon ten
idode lainfo
rmaciónde
lobje
toquev is
i
taron.
Encamb io,losaspectosposit
ivosde laapl
icac
iónsebasaronpr
incipalmen
teen lafac
il
idaddeuso
,
prac
t
icidadyenlain te
ractiv
idad delaap l
icac
ión
, además dela posib
il
idadde accedera más
info
rmac iónsobrelosob je
tosdel museo.

224
Cap
ítu
lo10
.Conc
lus
iones

Enelcapítu
loanter
iorsehizounaná l
is
issobrelausabi
lidaddelpro
tot
ipo móv
il
.Enes teapartado
daremosunrepasogene raldelproyec
to,presen
tandolasconclus
ionesf
inalesenfuncióndelo s
resu
ltados ob
tenidos eindica
remos posib
lestraba
josfu tu
ros que puedan presen
tarse como
consecuenc
iadeés te
.

10
.1Cump
lim
ien
todelosob
jet
ivosin
icia
les

Pa
racomp roba
rquee lproyec
tohaobten
idolosresu
ltadosespe
rados
,bas
taconve
rquesehan
a
lcanzado
losobje
tivosquesepauta
ronalin
ic
iodelproyecto
.

La ofer
ta de sma
rtphones es cada vez más grande
. Loste
léfonos móv
iles mode
rnostienen
capacidadesqueloshacenidea lespa radesa
rro
llosdeapl
icac
ionesin
teract
ivas
.Lallegadade
sensorescomo GPS ,brúju
lase
lec t
rónicas
,bandaanchaylaa l
tacapacidadcomputac
ional
,han
convert
idoalosce
lularesenelperfec
tocampodejuegopa ra
lasapl
icac
ionesdeRA .

Latecnolog
íade RAesuncampodeexp lo
rac
ióncon muchofu
turo
.Suspos ibi
l
idadesdeofrece
r
con
tenidoy una expe
rienc
ia de a
ltaca
l
idad en e
l ámb
itocul
tura
l y educa
tivoson va
riadasy
numerosas.

Alola rgode todoe lpresenteproyectosehaconsegu idoob tenerunconocimien


toamp l
iode l
s
istema ope rat
ivo Andro
id. Su arqu
itectura, sus componen tes yca rac
ter
íst
icas
,asícomoe l
func
ionam ien toy posib
il
idades o
frec
idas p or unsis
temacomo And roidse hanidoconoc iendo
grac
ias p r
incipa
lmente ala ex tensay , en general
,comp leta documentac
ión que Goog
le ha
puesto a d ispos
ición delos desar
rol
lado res
.E specia
lmen te en las p r
imeras fases
, es ta
documen tación esúti
lyfácildeasimi
lar,loquepe rmi
teace rca
rsepocoapocoalasfo rmasyla
tecnologíadees tanuevap la
tafo
rma.

Andro
idinc luyetodo e lsof
tware para quefuncione unte léfono móvil
, perosinlos obs
táculos
prop
ietar
iosquehanimped idolainnovaciónene lteléfono móvil
.E lresul
tadoenú l
t
imains tancia
será unr i
tmo deinnovac ión másráp ido y me jor que proporcionará alos cl
ientes móviles
apl
icac
iones y capac idades has
ta aho ra d
if
íciles de consegu ir
. And ro
id es una e s
trategia
importante para acercarn
os a
l ob
jet
ivode p roporcionar acceso alain formac
ión alosusua r
ios
dondequieraquees tén.

10
.2Resu
ltadosob
ten
idos

Alola rgo de es tetrabajo deinvestigac


ión hemos expues to d
ist
intos concep
tos ytemas
re
lacionados a ap l
icaciones móv
iles y real
idad aumen tada
.T ambién hemos realizado una
int
roducción alas p r
incipa
les ca
racter
íst
icas dela platafo
rma Android
, su API y entorno de
desar
rol
lo pr
incipal
, paraluegoconc lu
ircon el desa
rrol
lo de un protot
ipo de ap
licación pa
ra
d
isposi
tivos móv
iles.

E
lp ro
tot
ipocuentacon un adm inis
trador Web quefo rma par
te del backend dela ap
licac
ión,
actuandocomopa rteservido
rdelaa rqui
tec
tura.E s
tádesarro
l
ladoenJavasob reelFramewo rk
Spring
.Eladmin
istrador Webpermi
teing resa
rlainformac
iónrespect
ivaal museo,alosobjetosdel
museo,asícomotamb iénverlasencuestasrespondidaspor
losvis
itantesdel museo
.

225
Enlaapl
icación móvi
lseuti
l
izandi
ferentescomponen tesbásicosdelapla
tafo
rmaAnd ro
id,como
sonlasact
ividades
.Además,setrabajóconinter
facesdeusua rios
,conex
iones HTTP
,declarac
ión
de man
if
iestodeaplicac
iónyun mane
jodere cursostantoin
ternoscomoremotos
.

Desde e
l punto devis
ta del usuar
io de
l museo,la aplicac
ión hasido defácil uso,in
tuit
ivay
a
ltamenteresponsiva
. E l usuario ha pod
idorealiza
rtodaslas ac t
ividades quele o f
recela
ap
licac
iónsin mayoresinconvenien
tesyhapod ido mejorarsuexperienc
iaap rendiendodeuna
manerain
teract
ivay modernosa. Median
teelfeedbackdevue l
toenlasencuestas,losv is
itantes
m
ismoshancamb iadola maneraenquee l museolosveae llos m
ismos.

Desdeelpuntodevistadel museo mismo,laimp


lemen tacióndelsis
temaderea l
idadaumentada
inic
io un p
roceso de mode
rnizac
ión de susrecursostecno lóg
icos muy necesa
rio desde hace
t
iempo.Eln uevos
is
temadein formaciónpermi
tereg
istrarinfo
rmacióndevi
talimportanc
iasobreel
museocomosonlosob je
tosyla mul
timediaasoc
iadaaés te
.

Sehalog radodesarro
lla
runaap l
icac
iónde RAene lámb itodel museodefís
ica
.Laap l
icaciónes
parametr
izable y ex
tendib
le a va
rios museos. Se ha ana
lizadola usab
il
idad dela apl
icac
ión
median
tetests parave rcómo eralaintera
cciónconlos usua r
ios. Apar
t
ir de es
te aná
lis
isse
obtuv
ieronresu
ltadossatis
fac
tor
iossobreeldesempeñode lsis
tema.

Enconc
lus
ión
,hemosdesa
rro
l
ladounp
roto
t
ipoes
tab
leyfunc
iona
l.

10
.3Eva
luac
iónde
lproyec
to

Comoresu
ltadodelaspruebasdeusab
il
idadvimosquelosvis
i
tantesdel museose mos
tra
ron muy
cómodosut
il
izandolaap
licac
ión.Comoyahemosexplicadoenelcapítu
loan te
rio
r,seace
rca
ron
deuna manerasenc
il
laeintu
it
ivaa
lconceptoderea
l
idadaumen tada
.

Po
rpa r
tede
l museolaevaluac
iónfue muysa
tis
fac
tor
ia.A
lpregun
tar
lesqueopinabansobrela
implemen
tacióndeestenuevosis
temadeinformac
iónel
losse m
ost
raroncon
formesyagradecidos
yaquetambiénentend
ieronelva
lorag
regadoquesesumaalaexpe rienc
iadevis
i
taal museo
.

10
.4T
raba
jofu
turo

Quedan muchas mejo


rasquesepuedenhacersob reestep ro
tot
ipo,aconoce
rdesdelaacep
tac
ión
delosusuariosynecesidadesdenegoc
ioespec
íficas.
Laimplemen tac
ióndeestaprime
ravers
ióndelproto
tipohade jadoverpun
tosdéb
ilesquedebe
rían
ser me
joradosoañadidosquegenerar
íannuevosaspec tosfunciona
lesde
lmismo
:

● Refactor
izac
ióngene ralde
lcódigo : Hemospues toempeñoenladesa r
rol
larfunc
ionalidadesen
e
lp rotot
ipode jandodeladoa lgunosde ta
llesestét
icosdecódigofuen
te.Po rlotantocreemos
quesepod r
ía mejora
rlaimplementación.
● Nuevasfunciona l
idadesenlaap l
icación móvi
l:sepod ríaagrega
rlaopciónpa ra marcarcomo
favo r
itoa
lestilo“megusta”deFacebook .
● Me
jo rareladm in
ist
rador Web:Sepod ría mejo
rarlaefic
ienc
iagenera
ldelaap l
icac
iónu ti
l
izando
unacachépa raalmacenarlosobjetos.Asíseevitar
íandemasiadosaccesosa labasededa tos
.

E
lc rec
imientoquees tánteniendolastecno
logíasdereal
idadaumen tadaenel me
rcadodelas
ap
licac
iones móvi
leshadadoluga ralnac
imientodestar
tupsyemp resasdedesar
rol
lo.Espores
to
queestetipodeaplicac
ionessepe r
fi
lancomop romoto
resdel ma
rketing móv
i
l.Suapl
icac
ióncub
re
var
iossectores
,tantopúbl
icoscomoemp resar
iales
.
226
Cap
ítu
lo1
1.B
ibl
iog
raf
ía

[1
]FrankH
.P.F
itzek
,FrankRe
iche
rt
. Mob
i
lePhoneP
rog
ramm
ingandI
tsApp
l
ica
t
ionto W
ire
less
Ne
two
rking
.Sp
ringe
r,2007
[2
]Fl
ingB
rian
. Mob
i
leDes
ignandDeve
lopmen
t.1
°Ed
ic
ión
,O’Re
i
lly Med
ia,Inc
.2009
[3
]AjayR
.Mish
ra.Ce
l
lula
rTechno
log
iesfo
rEme
rging Ma
rke
ts:2G
,3GandBeyond
.John W
i
ley&
Sons
,Ltd
.20120
[4
]Zheng
,Lione
lNi
.Sma
rtPhoneandNex
t Gene
rat
ion Mob
i
leCompu
ting
.Elsev
ierInc
.2006
[5
]Da
toses
tad
íst
icos
.[en
línea
]<h
ttp
:/
/goog
leb
log
.blogspo
t.com
.ar
/2012
/05
/new-
resea
rch
-show
s-
sma
rtphone-
grow
th-
is.h
tml
>
[6
]JAVA ME[enl
ínea
].<h
ttp
:/
/www
.
java
.com
/es
/down
load
/faq
/wha
tis_
j2me
.xm
l>
[7
]BREWMP[en
línea
].<h
ttps
:/
/www
.brewmp
.com
/>
[8
]Window
sPhone
.[en
línea
].<h
ttp
:/
/www
.window
sphone
.com>
[9
]Limo[enl
ínea
].<www
.
limo
founda
tion
.org>
[10
] WebOS[en
línea
].<h
ttp
:/
/www
.openwebosp
rojec
t.o
rg/>
[1
1]B
lackbe
rry[en
línea
].<h
ttp
:/
/ar
.b
lackbe
rry
.com
/>
[12
]iPhone[en
línea
].<h
ttp
:/
/www
.app
le.com
/es
/iphone
/>
[13
]Michae
lJ.J
ipp
ing
.Symb
ian OSCommun
ica
t
ionsP
rog
ramm
ing
.Ed
ito
ria
lWi
ley
,2002
[14
]Frank M
cPhe
rson
.HowtoDoE
very
thingw
i
th W
indow
s Mob
i
le.Ed
ito
ria
lMcG
raw
-H
il
l,2006
[15
]SaadZ
.As
if
.Nex
t Gene
rat
ion Mob
i
leCommun
ica
tionsE
cosys
tem
:Techno
logy Managemen
t
fo
r Mob
i
le.
[16
]iOS
.[en
línea
].<h
ttps
:/
/deve
lope
r.app
le.com
/>
[17
]Licenc
iaApache
.[en
línea
]<h
ttp
:/
/www
.apache
.org
/
licenses
/LICENSE-
2.0
.htm
l>
[18
]And
roid
.[en
línea
]<h
ttp
:/
/deve
lope
r.and
roid
.com>
[19
] Geo
rgeH
.Fo
rmanyJohnZaho
rjan
.TheCha
l
lengeso
f Mob
i
leCompu
ting
.IEEECompu
ter
Soc
iety
,Vo
l27
[20
]And
reiC
ris
t
ianSpa
taru
.Ag
i
leDeve
lopme
nt Me
thodsfo
r Mob
i
leApp
l
ica
t
ions
.
[21
]Adam We
rte
rsk
iyo
tros
. Me
todo
log
íadedesa
rro
l
loág
i
lpa
ras
is
temas móv
i
les
.In
trodu
ccióna
l
desa
rro
l
loconAnd
roidye
liPhone[en
línea
].<h
ttp
:/
/www
.adamwes
tersk
i.com
/wp-
con
ten
t/
fi
les
/docsCu
rsos
/Ag
i
le_doc_T
emasAnv
.pd
f>
[22
]Azuma
,R.(1997
)“ASu
rveyo
fAugmen
tedRea
l
ity
”.P
resence
:Te
leope
rato
rsandV
ir
tua
l
Env
ironmen
ts,6
(4)
,pp355-
385
.
[23
]Azuma
,R.
;Ba
i
llo
t,Y
.
;Beh
ringe
r,R
.; Fe
ine
r,S
.; Ju
l
ier
,S. and Mac
Inty
re,B
.(2001
)“Recen
t
Advancesin Augmen
ted Rea
l
ity
”.IEEECompu
terG
raph
icsandApp
l
ica
t
ions
,21
(6)
,34-
47.
[24
] Ma
ríaJoséAbaso
lo.Cap
ítu
lo3
.Rea
l
idadaumen
tada
.Cu
rsoPos
tgradoFacu
ltadde
In
formá
tica(UNLP
).Sep
t
iemb
re2012
.
[25
]ART
oolK
i
t.[en
línea
]<h
ttp
:/
/www
.h
it
l.wash
ing
ton
.edu
/ar
too
lk
it
/>
[26
] Ma
ríaJoséAbaso
lo.Cap
ítu
lo1
.Rea
l
idadaumen
tada
.Cu
rsoPos
tgradoFacu
ltadde
In
formá
tica(UNLP
).Sep
t
iemb
re2012
.

227
[27
]Zhou
,F.
;Dhu
,H.an
dBi
l
linghu
rst
,M.(2008
)“T
rends
inAugmen
tedRea
l
ityT
rack
ing
,In
terac
t
ion
andD
isp
lay
:ARev
iewo
fTenY
earso
fISMAR
”Proceed
ingso
f7thIEEE
/ACMIn
terna
tiona
l
S
ympos
iumon M
ixedandAugmen
tedRea
l
ity(
ISMAR2008
),pp193-
202
.
[28
]Ka
to,H
.andB
i
ll
ing
hurs
t,M
.(1999
)“Ma
rke
rTrack
ingandHMDCa
l
ibra
t
ionfo
rav
ideo-
based
Augmen
tedRea
l
ityCon
ferenc
ingS
ystem
.”P
roceed
ingso
fthe2ndIn
terna
t
iona
l Wo
rkshopon
Augmen
tedRea
l
ity(
IWAR99
),pp85-
94.
[29
]ART
ag[en
línea
]<h
ttp
:/
/www
.ar
tag
.ne
t>
[30
]ART
oolk
i
tPlus[en
línea
]<h
ttp
:/
/handhe
lda
r.
icg
.tug
raz
.at
/ar
too
lk
itp
lus
.php>
[31
]Th
run
,S.
;Liu
,Y.
;Ko
l
ler
,D.
;NgA
.andDu
rran
t-
Why
te,H
.(2004
)“S
imu
ltaneousLoca
l
isa
tion
and Mapp
ingw
i
thSpa
rseE
xtendedIn
forma
tionF
i
lte
rs”
,In
terna
t
iona
lJou
rna
lsonRobo
t
ics
Resea
rch
,23
(7-
8)
,pp693-
716
[32
] QRcode[en
línea
].<h
ttp
:/
/www
.
itsc
.org
.sg
/pd
f/syn
thes
is08
/Th
ree_QR_Code
.pd
f>
[33
]Denso WaveCo
rp.Documen
tat
iono
fthe QRCodes<h
ttp
:/
/www
.denso-
wave
.com
/qrcode
/index-
e.h
tml>
[34
] OpenHandse
tAl
l
iance
,[en
linea
]<h
ttp
:/
/www
.openhandse
tal
l
iance
.com
/>
[35
]Ga
rgen
ta Ma
rko
. Lea
rningAnd
roid
.1°Ed
ic
ión
,O’Re
i
lly Med
ia,Inc
.201
1
[36
]Dis
tr
ibuc
ióndeV
ers
ionesAnd
roid
.[en
línea
]
<h
ttp
:/
/deve
lope
r.and
roid
.com
/abou
t/dashboa
rds
/index
.htm
l>
[37
]Fundamen
tosdeunaa
p
licac
iónAnd
roid
.[enl
inea
]
<h
ttp
:/
/deve
lope
r.and
roid
.com
/gu
ide
/componen
ts/
fundamen
tals
.htm
l>
[38
]In
ten
tsyIn
ten
tsF
i
lte
rs.[en
línea
]<h
ttp
:/
/deve
lope
r.and
roid
.com
/gu
ide
/componen
ts/
inten
ts-
f
i
lte
rs.h
tml>
[39
]ProcesosenAnd
roid
.[en
línea
]<h
ttp
:/
/de
velope
r.and
roid
.com
/gu
ide
/componen
ts/p
roce
sses
-
and-
threads
.htm
l>
[40
]Ins
talac
ionSDKAnd
roid
.[en
línea
].<h
ttp
:/
/deve
lope
r.and
roid
.com
/sdk
/ins
tal
l
ing
.htm
l>
[41
]Emu
lado
rAnd
roid
.[en
línea
]<h
ttp
:/
/deve
lope
r.and
roid
.com
/too
ls/dev
ices
/emu
lato
r.h
tml>
[4
2]DDMSAnd
roid
.[en
linea
]<h
ttp
:/
/deve
lope
r.and
roid
.com
/too
ls/debugg
ing
/ddm
s.h
tml>
[43
]ADBAnd
roid
.[en
línea
].<h
ttp
:/
/deve
lope
r.and
roid
.com
/too
ls/he
lp/adb
.htm
l>
[44
]ISO9241
-11
.[en
línea
]<h
ttp
:/
/www
.usab
i
li
tyne
t.o
rg/
too
ls/
r_in
terna
t
iona
l.h
tm#9241-
11>
[45
]Vos
,Tan
ja. Mode
losde Madu
rezdeUsab
i
lidad
.
[46
]Jona
than G
ladden
.Resea
rchPape
rAr
t894x12
.His
toryo
fCompu
terG
raph
ics
[47
]In
ter
facesháp
t
icas
.[en
línea
].<h
ttp
:/
/www
.usab
i
li
tyf
irs
t.com
/glossa
ry/hap
t
ic-
inte
rface
/
>
[48
]In
ter
faces moda
les
.[en
línea
].<h
ttp
:/
/www
.usab
i
li
tyf
irs
t.com
/glossa
ry/moda
l/>
[49
]Se
rgio O
rtegaSan
tama
ría
.In
troducc
ióna
lausab
i
lidadysueva
luac
ión
.Un
ive
rsi
tat Obe
rtade
Ca
talunya
.201
1
[50
]Sopo
rtede mú
lt
ip
lespan
tal
las
.[en
línea
]
<h
ttp
:/
/deve
lope
r.and
roid
.com
/gu
ide
/prac
t
ices
/sc
reens_suppo
rt
.htm
l>
[51
]Fe
rnándezZumaque
ro,S
. Mé
todosdeeva
luac
iónde
lausab
i
lidadpa
raen
tornosdeRea
l
idad
V
ir
tua
l,Rea
l
idadAumen
tadayS
istemasUb
icuos
.
[52
]JSON
.[en
línea
].<h
ttp
:/
/www
.
json
.org
/>
228
[53
]Pos
tgreSQL
.[en
línea
].<h
ttp
:/
/www
.pos
tgresq
l.o
rg/>
[54
]Framewo
rkSp
ring
.[en
linea
]<h
ttp
:/
/www
.sp
ringsou
rce
.org
/>
[55
]Hibe
rna
te.[en
línea
]<h
ttp
:/
/www
.h
ibe
rna
te.o
rg/>
[56
]JQuey
.[en
línea
].<h
ttp
:/
/jque
ry.com>
[57
]Inve
rsióndeCon
tro
l.<h
ttp
:/
/sta
t
ic.sp
ringsou
rce
.org
/sp
ring
/docs
/2.5
.3/
refe
rence
/beans
.htm
l>
[58
]AOP
.[en
línea
].<h
ttp
:/
/sta
t
ic.sp
ringsou
rce
.org
/sp
ring
/docs
/2.5
.5/
refe
rence
/aop
.htm
l>
[59
]Sp
ring MVC
.[en
línea
]
<h
ttp
:/
/sta
t
ic.sp
ringsou
rce
.org
/sp
ring
/docs
/cu
rren
t/sp
ring-
framewo
rk-
refe
rence
/htm
l
/mvc
.htm
l>
[60
]Sp
ringSecu
ri
ty
.[en
línea
]<h
ttp
:/
/www
.sp
ringsou
rce
.org
/sp
ring
-secu
ri
ty>
[61
]Pa
tronesAnd
roid
.[en
línea
]<h
ttp
:/
/www
.and
roidpa
tte
rns
.com
/>
[62
]Pa
trónded
iseño
:Tab
lerodeopc
iones
.[enl
ínea
]
<h
ttp
:/
/www
.and
roidpa
tte
rns
.com
/uap_pa
tte
rn/dashboa
rd-
%E2%80%93-
fea
tures>
[63
]Pa
trónded
iseño
:Lis
taes
tát
ica
.[en
línea
]<h
ttp
:/
/www
.and
roidpa
tte
rns
.com
/uap_pa
tte
rn/s
tat
ic-
l
ist>
[64
]Pa
trónded
iseño
:Pes
tañas
.[enl
ínea
]<h
ttp
:/
/www
.and
roidpa
tte
rns
.com
/uap_pa
tte
rn/modu
le-
tabs
>
[65
]Pa
trónded
iseño
:Expand
iryocu
lta
rtec
lado
.[en
línea
]
<h
ttp
:/
/www
.and
roidpa
tte
rns
.com
/uap_pa
tte
rn/so
ft-
keyboa
rd-
pan-
scan>
[66
]Pa
trónded
iseño
:RuedadeP
rog
reso
.[enl
ínea
]
h
ttp
:/
/www
.and
roidpa
tte
rns
.com
/uap_pa
tte
rn/p
rog
ress-
whee
l
[67
]SQL
ite
.[en
línea
]<h
ttp
:/
/www
.sq
l
ite
.org
/docs
.htm
l>
[68
]Sha
redP
refe
rence
.[en
línea
]
<h
ttp
:/
/deve
lope
r.and
roid
.com
/re
ference
/and
roid
/con
ten
t/Sha
redP
refe
rences
.htm
l>
[69
]Camb
iosent
iempodee
jecuc
iónAnd
roid
.[en
línea
]
<h
ttp
:/
/deve
lope
r.and
roid
.com
/gu
ide
/top
ics
/re
sou
rces
/run
t
ime-
changes
.htm
l>
[70
] GSON
.[en
línea
]<h
ttp
:/
/code
.goog
le.com
/p/goog
le-
gson
/>
[71
]Lib
rer
íaZX
ing
.[en
línea
]<h
ttp
:/
/code
.goog
le.com
/p/zx
ing
/>

229

También podría gustarte