Académique Documents
Professionnel Documents
Culture Documents
Programacindedispositivos
mviles
JavaMe
J2ME
CDC
CLDC
MIDP
OBJETIVO
Desarrollarsolucionesdesoftware
utilizandoprogramacinconcurrente,
programacindeeventos,quesoporte
interfazgraficaeincluyadispositivos
mviles
TEMAS
5.1.Introduccin
5.2.Dispositivosmviles
5.3.Clasificacinyaplicacionesdelos
dispositivosmviles
5.4.Ambientesdelasaplicaciones
5.5.ProtocolodeInterfazentre
aplicaciones
5.6.Programacindetelfonosmviles
,PDAyMultimedia
5.1.Introduccin
Losdispositivosmvilessonaquellosaparatoselctricos
suficientementepequeosparasertransportadosy
empleadosdurantesutransporte.Normalmentese
sincronizanconunsistemadeescritorioparaactualizar
aplicacionesydatos
Algunasdelascaractersticasquehacenqueestos
dispositivosseandiferentesdelasPCs son:
Funcionalidadlimitada
Nonecesariamenteesextensibleyactualizable
Enpocosaoselusuariodeber cambiarlo
Msbarato!!!
Menoscomplicadoensumanejo
Fcildeaprendersuoperacin
Noserequierenusuariosexpertos
5.2Dispositivosmviles
Lostelfonosmvilessondelosaparatosmvilesms
sofisticadosqueencontramosenlaactualidad.Se
utilizanparacomprimirydescomprimirseales
digitalescodificadas,procesanmillonesdeclculospor
segundo.Noobstante,secomponendeapenasalgunos
componentes:
Unmicrfonomicroscpico
Unaltavoz
UnapantallaLEDoLCDoplasma
Unteclado
Unaantena
Unabatera
Unaplacadecircuitosquecontienecmara,GPS,Chipde
conexin,Memoriabaseyextendida
Telfonosmviles
Cmoseproducelacomunicacin?
Laoperadoradetelefonamvilreparteelreaenvariosespacios,
envariasclulas,normalmentehexagonales,laredestacompuesta
deunainmensareddehexgonosoclulas.
Encadaclulaexisteunaestacinbasetransmisora,unaantena
retransmisora.Cadaclulautilizavarioscanales,loquedala
posibilidadquevariasdecenasdepersonassecomuniquen
simultneamenteporella.
Cuandounapersonasemuevedeunaclulaparaotra,pasaa
utilizarlafrecuenciadelanuevaclula,dejandolibrelaclula
anteriorparaserusadaporotrapersona
Telfonosmviles
Sistemasdetelefonamvil:
Primerageneracintransmisinanalgica;grandesdistancias
pocacapacidaddetransmisin(motorola)
Segundageneracin.En1998elETSI(European
Telecommunications StandardsInstitute),desarrollaelsistema
GPRS,velocidadde177.2Kbps,incompatibilidadentre
dispositivos
Protocolosdetercerageneracin;GSM(GlobalSystem Movl,2G
y3G)yElUMTS(UniversalMobileTelecommunication System)
convelocidadeshastade2Mbps
SiguientegeneracinGSM4GyUMTSWCMDA(WideCode
Multiple Division Access),compatibilidadentresistemas
Wifi (80211bg(54Mbps)n(300Mbp))
WiMax (5Km,500Mbps)
ElmercadodelasPDAyTablets
ElPersonalDigitalAssistant (PDA),escomosu
propionombreindicaunorganizadordigital,
ofrececalendarios,blocks denotas,agendaspara
telfonos,calculadorasyrecientementeaccesoa
internet
Unatablet PCotableta(PCentableta)es
prcticamenteunaPCportatil conpantallatctilo
multitctil.Elusuariopuedeutilizarunapluma
stylus olosdedos
5.3FamiliadeSistemasOperativos
Mviles
Amedidaquelostelfonosmvilescrecenen
popularidad,lossistemasoperativosconlosque
funcionanadquierenmayorimportancia.
Lacuotademercadodesistemasoperativosmvilesen
elao2011eraelsiguiente:1
Android 35,3%
Symbian OS31%
iOS 16,2%
BlackBerry OS14,6%
WindowsPhone 3,1%
Otros3%
Bada
MeeGo
MeeGo (2010)
MeeGo eslaunindelossistemasoperativosMaemo yMoblin,con
elqueIntelyNokiapretendencompetirconelsistemaAndroid de
Google.
EsundesarrollodeLinuxFoundation ypermiteutilizarlesistemaen
smartphone,netbook,tv,pda,gps,estereos deautomviles,etc
Consoportepara:
VoIP
Mensajerainstantnea
Correoelectrnicoycalendario
RedessocialescomoFacebook ytwitter
Serviciosdelocalizacin
SincronizacinCloud Computing
Aplicacionesdemedios
Cmara
Soportedegestos
Familiawindows:
WPhone 7(2010),WMobile,WCE
DesarrolladoporlaalianzaMicrosoftyNokia,yesdistribuidoentelfonos
Nokia,entreotros
Caractersticas:
Accesodeescritorioremotomejorado9
Desarrolloydistribucindeaplicacionesmsrpidoymsfcil.
SoporteVoIP
WindowsLive
Bluetooth deMicrosoft
Cifradodelatarjetadealmacenamiento
Smartfilter parabuscarmsrpidamenteemails,
MejoradeInternetSharing
OutlookMobile
ExchangeServerAddress Book.
SoporteAJAX,JavaScriptyXMLDOM
SoporteGeneric AccessNetwork(UMA)
.NETCompactFramework
SQLServerCompactEditionenlaROM
Office2007mobile
AppleIOS5(2011)
Paralosdispostivos mvilesiPod touch,iPhone eiPad
Est basadoenunavariantedelMachkerneldeMacOS
X
ITunes mejorado
Redessociales
AppStore
Touch mejorado
Mapas+GPS
Safari
IPhone SDK
Sencillezyfacilidaddeuso
Look and Feel compatibleIPAD
GameCenter compatible
Android 4(Google2005)
Android esunsistemaoperativobasadoenelncleoLinux
diseadooriginalmenteparadispositivosmviles,tales
comotelfonosinteligentes,peroqueposteriormentese
expandi sudesarrolloparasoportarotrosdispositivos
talescomotablet,reproductoresMP3,netbook,PC,
televisores,lectoresdeebook eincluso,sehanllegadoa
verenelCES,microondasylavadoras
DesarrolladoinicialmenteporAndroid (Google2005)
OpenHandset Alliance
ProgramasenJava
DesarrolladoenC,C++yJava
Interfazmejorada
IniciacomounclonedeIPhone
S.O totalmenteabierto
Symbian OS(BelleyCarla)
Symbian esunaS.O.quesureg delaalianzadeNokia,
SonyEricsson,Psion,Samsung,Siemens,Arima,Benq,
Fujitsu,Lenovo,LG,Motorola,MitsubishiElectric,
Panasonic,Sharp,etc.
SusorgenesprovienendesuantepasadoEPOC32,
utilizadoenPDA's yHandhelds dePSION
Symbian fuecreadoparacompetirconPalmO.S.,
WindowsPhone yahoraAndroid,iOS yBlackBerry OS
SoporteDolby
Mejorademultimedia
Soporteparadoblencleo
Mejoreswidgets
5.4.Ambientesdelasaplicaciones
JavaMe yJ2ME
JavaME/J2MEpresentadosconfiguraciones:
CLDC.Laprimerasededicaadispositivosconestrictas
limitacionesdememoria,capacidaddeclculo,consumoy
conectividaddered
CDC.Por otrolado,CDCseencargadedispositivosconms
potencia
CLDCesunsubconjuntodeCDC,porloquelaportabilidadde
aplicacionessepuedeconseguircuandonosmovemosdeun
entornomsrestringidoaotromsrico
CDC/CLDC
ElAPIdeCLDesunsubconjuntodeJ2SE:
java.lang
Bolean,Byte,Character,Class,Integer,Long,Math,Object,
Runnable,Short,String*,System,Thread,Throwable,
java.util
Calendar,Date,Enumeration,HashTable,Random,Stack,
Timezone,Vector
java.io
ByteArrayInputStream,ByteArrayOutStream,DataInput,
DataInputStream,DataOutput,DataOutputStream,
InputStream,InputStreamReader,OutputStream,
OutputStreamWriter,PrintStream,Reader,Writer
CLDCElimina
InterfaznativodeJava(Java Native Interface JINI)(Mquina
virtual).
Cargadoresdeclasesdefinidasporelusuario(Mquinavirtual).
Gruposdehilosehilosdemonios(Mquinavirtual).
Finalizacin(lenguajeJava).
Referenciasdbiles(Mquinavirtual).
Reflexin(Mquinavirtual).
Tiposdedatosdepuntoflotante(lenguajeJava).
AlgunosaspectosdeseguridadyAPIs (Mquinavirtual).
Verificacindeficherosdeclases(Mquinavirtual).
Poseealgunaslimitacionesenlasgestionesdeerrores(lenguaje
Java).
Limitacionesdehardware:
De160a512Kbytes dememoriadisponibleparaelentornodeJava.
Unprocesadorde16o32bits.
Consumodeenergabajo(generalmenteutilizanbateras).
PermitenconectividadaunaredbandabajoGPRSyGSMenmviles
MIDP MIDLets
MIDP MIDlets.LasaplicacionesMIDPsedenominan"MIDlets",
UtilizantantolasfacilidadesaportadasporMIDPcomolasAPIs queMIDP
heredadeCLDC,peronuncaaccedendirectamentealsistemaoperativo
subyacenteportables
UnMIDlet consisteenunaclaseJavaderivadadelaclaseabstractaMIDP, yque
seejecutanenunentornodentrodelamquinavirtual,lacualproveeunciclo
devidabiendefinidocontroladomediantemtodosdelaclaseMIDlet quecada
MIDlet debeimplementar
UngrupodeMIDlets queestnrelacionadossesuelenagruparenunMIDlet
suite
TodosestosMIDlet seempaquetan,instalan,desinstalanyborrancomouna
nicaentidadycompartenrecursostantoentiempodeejecucin(seejecutan
enlamismamquinavirtual),comoestticos(elalmacenamientopersistente
segestionaenelniveldesuite).
MIDPnecesita128KBdeRAM.
CLDCrequiere32Kbytes paraalmacenarlapiladelaaplicacin,tamaoque
obligaalprogramadoratenerbastantecuidadoalahoradedisearlas
aplicaciones.
Adems,losdispositivosMIDPcuentancon8Kbytes comomnimodememoria
novoltilqueseutilizacomoalmacenamientopersistente,quenoseborratras
apagarelaparato(problemadelcambiodebatera)
EstadosdeunMIDlet
Prctica8.ElaborarunMIDLet con
unCanvas grficoyquepermita
interaccinconelusuario
JavaMeSDK3.0
TeoradeCDC/CLDC
ClasesMIDP
Desarrollodeunpelotagrficaquerebota
5.5.ProtocolodeInterfazentre
aplicaciones
LasaplicacionesqueutilizanCLDCyelperfil
MIDPsepuedendividirendosgrandesgrupos
1. Interfazdeusuariodealtonivel;secomponede
botones,cajasdetexto,formulariosymens
queofrecenlosdispositivosmvilespordefecto
2. Interfazdeusuariodebajonivel;setieneun
controltotaldeloquesedespliegaenpantalla,
ofrecenuncontroltotaldelosrecursosdel
dispositivomvil;controldelteclado,del
display,comunicaciones,engeneraltodo
hardwaredeIOdisponible
InterfazdeBajoNivel..
MtodosdelaclaseDisplay
DisplayPantalla=Display.getDisplay(this);
ClaseDisplayable
Laclaselcdui.game.*
GameCanvas.Proporcionalabaseparaunainterfazde
usuariodeljuego
Layer.Unacapaesunaclaseabstractaquerepresenta
unelementovisualdeunjuego.
LayerManager. Gestionaunaseriedecapas
(elementos)
Sprite.Esunelementobsicovisualquesepuede
representarconunodevariosfotogramas
almacenadosenunaimagen,almostrarcadauno
permiteanimarelSprite
TiledLayer.Esunelementovisualcompuestoporuna
cuadrculadeceldasquepuedeserllenadoconun
conjuntodeimgenesamododeazulejos
javax.microedition.media
MMAPI
MMAPIconstadetrespaquetes:
javax.microedition.media.Proporcionalasinterfaces
necesariaparalareproduccion demediosofrecece;
manejodeexcepcionesyelmanagerlaclase.Elmanager
eselpuntodeaccesoparaobtenerrecursosdelsistema,
talescomoPlayers paraelprocesamientomultimedia.
javax.microedition.media.control.Definelostiposde
controlquesepuedeutilizarconunPlayer:
VolumeControl ,VideoControl entreotros.
javax.microedition.media.protocol.Definelos
protocolosparaelmanejodeloscontroles
personalizados.Porejemplo,seincluyeelDataSource de
clase,queesunaabstraccinparamanipularlosmedios
decontrol.
Prctica9
Comunicacinsocket
javax.microedition.io yjava.io
Utilizandolacomunicacinsocket
ElaborarunejemplodeunaconexinTCPentre
dostelfonos
Considerarelenvodetresparmetrosentreel
clienteyelservidor;posiciny,IPorigen ycolor
IntegrarelcdigoenlaaplicacinpelotaMIDP
5.6.Programacindetelfonosmviles,
PDAs yMultimedia
Componentesdeunsistemamultimedia
Formatos dearchivomultimedia
Creacinymanipulacindeobjetosconformatosde
archivogrficocomunes(GIF,TIFF,JPEG,WMF)
Creacinymanipulacindeobjetosconformatosde
animacinyvideocomunes(AVI,QUICKTIME,MPEG,
GIFanimado)
Creacinymanipulacindeobjetosconformatosde
audio(compresindesonido,MIDI,MP3,etc.)
Integracindeloselementosmultimedia
Multimedia
Multimediaseutilizaparareferirseacualquier
objetoosistemaqueutilizamltiplesmediosde
expresin(fsicosodigitales)parapresentaro
comunicarinformacin.Deall laexpresin"multi
medios".Losmediospuedenservariados;texto,
imgenes,animacin,sonido,videoynuevas
formas
Tambinsepuedecalificarcomomultimediaalos
medioselectrnicos(uotrosmedios)quepermiten
almacenarypresentarcontenidomultimedia.
Multimediaessimilaralempleotradicionalde
mediosmixtosenlasartesplsticas,peroconun
alcancemsamplio
[ Wikipedia ]
Multimedia
Componentesdeunsistemamultimedia
Unaaplicacinmultimediaesaquellaqueproduce,reproduce,
procesaomanejaunoovarioscontenidosmultimedia.
Uncontenidomultimediaesaquelqueest compuestode
diversosmedios,comopuedenseraudio,video,texto,
sonido,etc.
Decimosqueuncontenidomultimediaest basadoenel
tiempoentantoquecadaunodesusmedioscambia
Uncontenidomultimediarequiereserproporcionadoy
procesadoenunascondicionestemporalesestrictas
Porejemplocuandosereproduceunvideo,silosdatos
multimedianopuedenserproporcionadoslosuficientemente
rpidopuedenproducirsepausasyretardosenla
reproduccin;porotroladosilosdatosnopuedenserrecibidos
yprocesadoslosuficientementerpidoelvideosereproducea
saltosentantoquesedesechancuadroscomomediopara
mantenerlatasadereproduccin.
componentes
Cadaunodelosmediosdelosquesecomponeuncontenido
multimediasedenominapista (uncontenidomultimedia
puedecontenerunapistadeaudioyotradevideo)
Sedicequelaspistasestnmultiplexadas,alprocesode
extraccindelasdistintaspistasquecomponenuncontenido
multimediaseledenominademultiplexacin
Existendistintostiposdepistasenfuncindeltipodedatos
quecontienen,comoaudioy/ovideo;asuvezcadapista
poseeunformatoquedefinecomoestnestructuradoslos
datosqueformanpartedeella.Losdistintosformatosse
distinguenenfuncinde:
La calidadqueproporcionan
Su exigenciaderecursosdeCPUparaserprocesados
Lacantidaddeanchodebandarequeridaparasu
transmisin
JMFdeSun
JavaMediaFramework(JMF)proporcionaalos
appletsyaplicacionesJavalacapacidadde
reproducir,capturarytransmitir/recibiren
tiemporealaudiovideoyotroscontenidos
multimedia
Proveedeunaseriedecodificadoresy
decodificadoresparalosformatosmultimedia
msrelevantessiendocapazadems,derealizar
transcodificacinentredichosformatos
http://java.sun.com/javase/technologies/deskto
p/media/jmf/
FormatossoportadosporJMF
Formatos multimedia soportados por JMF y sus caractersticas
Formato
Calidad
Cinepak
Media
Bajo
Alto
PCM
Alta
Bajo
Alto
MPEG 1
Alta
Alto
Alto
Mu-Law
Baja
Bajo
Alto
H.261
Baja
Medio
Medio
Media
Medio
Medio
H.263
Media
Medio
Bajo
JPEG
Alta
Alto
Alto
ADPCM
(DVI,
IMA)
Indeo
Media
Medio
Medio
MPEG 1 Alta
Alto
Alto
MPEG 1 Alta
Layer 3
Alto
Medio
GSM
Baja
Bajo
Bajo
G.723.1
Media
Medio
Bajo
AplicacionesMultimedia
sobremviles
MMAPI
http://developers.sun.com/mobility/midp/articles/mmapio
verview/
LWUIT
LWUIT_1_5from oracle,suitedeherramientaspara
desarrollo
APISextendidasdejavaMepropuestasporlos
usuarios
LosJSR(JavaSpecification Request)sonrevisionesal
plataformaypermiteextendernuevasAPISsobre
dispositivosmvilesdenuevagenracin
Jini Surrogate
Existeunagranvariedaddedispositivosmviles
queofrecenunainfinidaddecomponentesy
bibliotecasparasuprogramacin
Cadaproveedorofrecesupropioprotocolode
conexin
Jini Surrogate,permiteinterconectarhardware
nosoportadoconAPIs dejavaMeyJ2SE
Sebasaenelconceptodeinterconexin
medianteprotocolos
Otrasplataformasdedesarrollo
Android SDK
IOS5SDK
BlackBerry SDK
WindowsMobileSDK,.net
MobileLinuxSDK
SYMBIANSDKs,Nokia
OPENSense SDK,HTC