Vous êtes sur la page 1sur 37

UNIDAD5

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

UnaaplicacinenJavaMe podr ejecutarseenJ2SE


normalmente,salvoqueseutilicenlasbibliotecas
especficasdeJ2ME
CDCyCLDCseacompaandeunaseriedeherramientas
paracomunicacinGCF(Generic Connection
FrameWork)

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

Uso CPU Ancho


de
banda

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

Vous aimerez peut-être aussi