Sie sind auf Seite 1von 6

CURSSO DE DESA

ARROLLO DE APLICACI ONES ANDROID   
 
 


 
   

dulo de De
Mód esarrollo de Aplicaciones An
ndroid 

FAQ
Q General 
 

 
 
MÓD
DULO DE DEESARROLLO
O DE APLICA
ACIONES AN
NDROID 
 

FAQ
Q General
 

Envíío de casoss prácticoss

Para  que  los  cassos  prácticoss  sean  evaluuados,  será  necesario  en


nviar  el  cód igo  fuente  de 
d los 
proyeectos de Eclipse, en form mato comprim mido. 

Cuando  se  tengaa  que  enviarr  una  captu ra  de  pantaalla,  se  hará  como  archiivo  adjunto.  Si  se 
n las imágen
pegan nes directammente en el ccuerpo del m mensaje, este pierde leggibilidad, o b bien la 
imageen se corrom
mpe. 

Prob
blema con la codifica
ación CP12
252 al gua
ardar los archivos en
n Eclipse

Para  resolver  estte  problema de  codifica ción  que  im mpide  guardaar  los  archivoos  Java  o  XM
ML  en 
Eclipsse, se deberáá acceder al menú Winddow > Prefereences. Se exp pandirá la caategoría Gen neral y 
se  acccederá  a  laa  subcategorría  Workspaace.  En  la  op
pción  Text  File 
F Encodin g  se  seleccionará 
Otherr: UTF‐8. 

A con
ntinuación, se deberá reiniciar Eclipsee y se proced
derá a volverr a guardar loos archivos. 

Si estta opción no funciona, exxiste otro méétodo.  

Se acccederá al m
menú Window w > Preferennces > Conten nt Types. Ahí se podrá eestablecer UT TF‐8 a 
cada  extensión  de 
d archivo  necesaria 
n (enn  principio,  se  cambiará
án  solo  los  aarchivos  *.xm
ml;  se 
recommienda que lla codificació
ón de los arcchivos *.java sea cp1252)) 

Prob
blema con la ubicaciión de la SD
DK

Si  Ecllipse  muestrra  un  mensa aje  indicandoo  que  no  conoce  la  ubiccación  (locattion)  de  la  SDK  de 
Andro oid, se acced derá al menú Window >> Preferencess, se seleccio onará a la izzquierda la o opción 
Andro oid  y,  a  la  derecha, 
d SDK
K  Location  teendrá  que  apuntar 
a a  la carpeta    anndroid.sdk  que 
q se  
habráá generado een el directorio raíz dondde se haya instalado SDK Manager. 

   

CURSSO DE DESAR
RROLLO DE A
APLICACIONEES ANDROID
D  2 
 
MÓD
DULO DE DEESARROLLO
O DE APLICA
ACIONES AN
NDROID 
 
Arch
hivos con e
extensión .OUT.XMLL

Si en  algún momento aparecce un archivoo con extenssión .out.xml. implica quue previamen nte se 


ha  ejjecutado  la  aplicación  en 
e Eclipse,  ddesde  el  arcchivo  origina
al  .xml.  Ecli pse  ha  intentado 
ejecu
utar ese archivo XML generando el arrchivo con exxtensión .outt.xml.  

Las aplicaciones A deben ejecu tar en Eclipsse sin que haya un archiivo XML abierto y 


Android se d
con eel foco. 

Si acccidentalmente se genera
a un archivo  con extensión .out.xml, se deberá bborrar para q
que el 
proyeecto pueda sser compilado. 

Com
mbinacione
es de teclas útiles en
n Eclipse

Para  tabular  el  código  de  forma  que  sea  más  legible,  se  utilizará 
u el  atajo  de  te
eclado 
Mayúscula+FF  sobre  un
Ctrl+M n  archivo  JJava  o  XM
ML  abierto.  Esto  hará   que  se  tabule 
t
autommáticamentee. 

Para  organizar  de  forma  auttomática  loss  "import"  de 


d una  clase
e,  añadiendoo  los  que  falten  y 
eliminando los qu ue sobren, se
e pulsará Ctrrl+Mayúscula a+O. 

Cuando aparecen n errores de compilaciónn en Eclipse, si se posicio ona el punterro del ratón sobre 


las  equis  en  rojo
o  (o  el  texto
o  subrayadoo  en  rojo),  Eclipse 
E indiccará  la  causaa  del  error.  Si  se 
posicciona el cursoor sobre el ttexto subrayyado en rojo o, el error, y  se pulsa Ctrrl+1, aparece erá un 
menú ú que ofrecerá posibles ssoluciones, s iendo la prim mera, en general, la que rresolverá el error.  

Conv
venciones JAVA

Por  cconvención  en 


e Java,  los  nombres  dee  las  clases  comienzan  con  mayúsccula,  así  com mo  los 
consttructores  dee  las  misma as.  Las  instaancias  de  las  clases  (los  objetos),,  y  los  méttodos, 
comieenzan  por mminúscula. No suelen llevvar guiones  medios  ni b bajos en los  nombres (y  no es 
recom mendable uttilizar la letra
a “ñ”), y cadda palabra que contenga an comenzarrá por mayú úscula. 
Es deecir: 
 
EstoEsUn naClase.jav va   → Nombre e de clase y dde archivo .jaava (coincideen) 

public E
EstoEsUnaCl
lase() → Constru
uctor de la cla
ase 

estoEsUn
naClase   → Instanciia de la clase
e, u "objeto" 

estoEsUn
nMetodoDeUn
naClase() → Nombre
e de método

CURSSO DE DESAR
RROLLO DE A
APLICACIONEES ANDROID
D  3 
 
MÓD
DULO DE DEESARROLLO
O DE APLICA
ACIONES AN
NDROID 
 
USO de LOG en
n aplicacio
ones Andro
oid

Como o toda aplicaación Java, e está disponibble System.o out.println() p para depura r manualme ente la 


aplicaación.  La  sallida,  no  obsttante,  está  rredirigida  a  la  consola  Lo
ogCat.  En  veez  de  utilizar  este 
arcaicco  método  para  trazarr  alguna  accción  a  nivel  de  consola,  es  mejorr  utilizar  la  clase 
andro oid.util.L Log  que  perm mite  inform ar  en  la  con nsola  especíífica  de  Anddroid,  LogCat,  con 
difereentes  niveles  de  log  (error,  waarn,  info,  debug...),  a  a través  dde  los  méttodos: 
Log.e(TAG_Stri ing, String g), Log.w(. ..), Log.i(...), etc.

Duplicado de IINTENT‐FIILTER en eel manifiessto de la ap


plicación

Cuando  se  copiee  la  porción  de  código  ddel  manifiestto  para  declarar  una  nuueva  activida
ad,  se 
deberá  prestar  atención 
a parra  no  copiarr  accidentalm
mente  los  in
ntent‐filter  qque  contengaa.  Por 
ejemplo, si se coppia el intent‐‐filter de la aactividad principal (LAUNNCHER‐MAIN N), se provoccará la 
creacción de dos icconos de accceso a la apliicación en el menú launccher del dispoositivo. 

Requ
uisitos mín
nimos del ordenado
or

La  raapidez  de  caarga  depend


de  fundamenntalmente  de 
d la  versión  de  Andro id.  Grosso  modo, 
m
cuantto más alto ssea el nivel d
de API, más ttardará en caargar (la exce
epción, el m ás lento de ttodos: 
Andro oid 3.0). 

Tambbién  influye  la  cantidad  de  hardwaare  que  es  emulado. 


e Se
e  deberán  crrear  AVDs  con 
c el 
mínim
mo hardwaree necesario. 

En  ccuanto  al  PC, 


P sus  características   determinaarán  la  velocidad  de  carga  del  AVD, 
fundaamentalmen nte.  

Con uun P4 2.4 GH
Hz, 1 GB RAM
M y WXP 32 bbits, un AVD con Android
d 2.2 tarda enntre 4 y 5 miinutos 
en caargar compleetamente, mientras que uun AVD con A
Android 1.6 tarda 1 minuuto. 

No obstante, es rrecomendab menos un doble núcleo a 2.4 GHz, 3  GB de RAM  y W7 


ble usar al m
(32 o 64 bits).  

Para  que  el  AVD


D  arranque  un 
u poco  máás  rápido  se  puede  seleccionar  el  pproceso  emu
ulator‐
arm.eexe en el Administrador de Tareas y,, con el botóón derecho, establecer laa afinidad a todos 
los prrocesadores disponibles (en caso de  disponer de procesadore es con más dde un núcleo o). 

CURSSO DE DESAR
RROLLO DE A
APLICACIONEES ANDROID
D  4 
 
MÓD
DULO DE DEESARROLLO
O DE APLICA
ACIONES AN
NDROID 
 
Dism
minución d
del tiempo
o de arranq
que de los AVDs

Existeen diversas fformas de aggilizar las pruuebas de las aaplicaciones en los dispoositivos Andrroid. 

Se puuede conectaar vía USB cu ualquier disppositivo Android a un PC C, como un m móvil o una ttablet, 


y  activar  en  el  menú 
m Ajustess  >  Opcioness  de  desarrollo,  la  opción  Depuracióón  USB.  Se  deberá 
tenerr instalados een el PC los d drivers correespondientess del fabrican nte del móvi l o tablet. Unna vez 
conecctado el disp positivo vía U
USB, Eclipse  lo detectaráá como un A AVD más, y ppodrá ser utilizado 
para  lanzar  direcctamente  lass  aplicacionees  sobre  diccho  dispositivo,  desde  EEclipse  e,  incluso, 
depurarlas. 

En los AVDs existten dos opcio
ones de emuulación, que  aceleran su arranque. LLa primera opción,  
Emulation  Options:  Snapshoot  guarda  uuna  instantánea  de  And droid  que  hhace  que  ell  AVD 
arran
nque  en  poccos  segundos.  La  segundda  opción  (incompatible e  con  la  antterior),  Emu
ulation 
ons: Use Host GPU activa
Optio a la emulacióón por hardw ware OpenGLLES, y dará m mejores resultados 
en función de la p
potencia de lla(s) tarjeta( s) gráfica(s) instalada(s).

En función de la C del PC, estos  métodos serán suficienttes.  


CPU y RAM d

No  obstante,  en  casi  todos  los  AVDs  exiiste  un  cuelllo  de  botella
a  ya  que  Anndroid  trabajja  con 
arquiitectura  ARM
M,  mientras  que  los  PC s  suelen  inccorporar  arq quitectura  x886,  por  lo  que 
q se 
tienen  que  tradu
ucir  las  instru
ucciones  de  una  a  otra  arquitectura a.  Esto  provooca  la  lentitud  de 
ejecu
ución de los AAVDs, una ve ez se han iniiciado (lentittud en la respuesta de cl icks, movimiientos 
abrupptos de los componentess de las panttallas...) 

Para  evitar  ese  cuello 


c de  bo otella  ARM‐xx86,  existe  una u última  posibilidad 
p qque  consiste  en  la 
configguración  e  instalación  de  d VirtualBoox  (máquinaa  virtual  de  Oracle),  conn  una  image en  de 
Andro oid migrado a x86. Estass imágenes sse pueden co onseguir en http://www w.android‐x86 6.org/  
y, en  este link (http://www.n nuxeo.com/bblog/develop pment/2011//10/speedin g‐up‐the‐android‐
emulator/), existee un magnífico tutorial ((en inglés) para configurrar este entoorno. Decir q que es 
una ssolución que no está mal en ciertos ccasos como, por ejemplo, en el caso dde desarrolla ar una 
aplicaación con Bluetooth, ya  que esta caaracterística  aún es difícilmente emuulable en un n AVD. 
Pero,,  por  otro  lado,  exige  unn  poco  más  de  conocimientos  de  Linux.  Ademá s,  al  configu urar  el 
adapttador  de  red d  entre  la  máquina 
m virtuual  y  el    PC,  se  deberá  tener 
t cuidaddo  ya  que  pu
ueden 
surgirr ciertos conflictos con la a conexión w wifi, en caso d de que exista a. 

Por úúltimo, si la p
placa madre del PC es m oderna, exisste la posibilidad de utilizzar tecnologgías de 
virtuaalización  HA
AXM,  que  hacen  que  los  AVDs  con  Android 
A 4.0  y  4.1  sean  m
más  rápidos.  Para 
ello,  se  deberán  consultar  esstos  links:  htttp://stackovverflow.com/questions/99839851/android‐
emulator‐how‐to o‐find‐out‐if‐hhardware‐virrtualization‐feature‐is‐ussed y 
http:///software.inntel.com/en‐us/articles//intel‐hardwaare‐accelerated‐executioon‐manager//  

CURSSO DE DESAR
RROLLO DE A
APLICACIONEES ANDROID
D  5 
 
MÓD
DULO DE DEESARROLLO
O DE APLICA
ACIONES AN
NDROID 
 
Rein
nicio del se
ervicio adb
b.exe y tim
meout en co
onexión co
on AVD

Eclipsse permite reeiniciar el seervicio adb.exxe desde un icono que a aparece en eel menú de la a vista 


Devicces (icono su uperior dereccho, con form ma triangulaar). Para mosstrar esta vissta, se acced derá al 
menú ú  Window  >  > Show  View w  >  Other… …  >  Android d  >  Devices.  Eclipse  tieene,  ademáss,  una 
persp pectiva, DDM MS (menú Wiindow > Opeen Perspectivve > Other… > > DDMS), quue muestra m mucha 
más iinformación  de todos loss procesos aactivos en el  dispositivo o o AVD selecccionado, así como 
sus  ttrazas,  hilos  y  diversas  estadísticas..  Dicha  persspectiva  incluye,  ademáás,  una  vista a  para 
explo hivos  del  AVD.  Existe  unn  plugin  que  se  puede  añadir 
orar  los  arch a a  estaa  vista,  CellO
Object 
SQLitte & XML Bro owser, que p permite exploorar bases de e datos. 

Si  se  lanza  una  aplicación 


a desde  Eclipsee  sobre  un  AVD  y  este  no  está  inicciado  aún,  puede 
p
produ meout  si  el  AVD  tarda  demasiado  tiempo  en  iniciar.  Se  puede 
ucirse  un  errror  por  tim p
aumeentar  el  tiemmpo  de  espe era  de  la  coonexión  con  el  AVD  acccediendo  al  menú  Wind dow  > 
Prefeerences > And droid > DDM MS y establec iendo ADB connection tim meout a 100000, por ejem mplo. 

CURSSO DE DESAR
RROLLO DE A
APLICACIONEES ANDROID
D  6 
 

Das könnte Ihnen auch gefallen