un lector de rss sencillo para blackberry - jorge urdaneta @jorgeu

9

Click here to load reader

Upload: refresh-maracaibo

Post on 03-Jul-2015

1.189 views

Category:

Technology


2 download

DESCRIPTION

Un lector de RSS sencillo para Blackberry - Jorge Urdaneta @jorgeu

TRANSCRIPT

Page 1: Un lector de RSS sencillo para Blackberry -  Jorge Urdaneta @jorgeu

5to Refresh Maracaibo20 de agosto de 2011

Jorge UrdanetaLicenciado en Computación

Un lector de RSS sencillo para Blackberry OS 5

Page 2: Un lector de RSS sencillo para Blackberry -  Jorge Urdaneta @jorgeu

2

Contenido

IntroducciónParser XML del RSSMuestra de elementos en pantalla

Page 3: Un lector de RSS sencillo para Blackberry -  Jorge Urdaneta @jorgeu

3

Introducción

Crear un lector del RSS del sitio http://refreshmaracaibo.org en smartphones Blackberry

Facilitar el acceso a las últimas noticias del BlogImpulsar el “Branding” del eventoOfrecer una aplicación de ejemplo para principiantesOfrecer una aplicación de ejemplo para principiantes

Page 4: Un lector de RSS sencillo para Blackberry -  Jorge Urdaneta @jorgeu

4

Parser XML del RSS

Noticias contenidas en <item> … </item>Atributos a leer

<title> acá el título </title><content:encoded> contenido </content:encoded>

SAX ParserSe procesan los tags a medida que se van leyendoIdeal para XML que vienen de conexiones lentasNo se carga el documento en memoria como DOMSe complica el procesamiento de tags en documentos

XML complejos

Dirección del RSS: http://refreshmaracaibo.com/feed/

Page 5: Un lector de RSS sencillo para Blackberry -  Jorge Urdaneta @jorgeu

5

Parser XML del RSS

DefaultHandler handler = new DefaultHandler() {    Noticia act=null;    boolean titletag=false, contenttag=false;    public void startElement(String uri, String localName, String qName... {        if(qName.equalsIgnoreCase("item"))            act=new Noticia();        else {            titletag=qName.equalsIgnoreCase("title");            contenttag=qName.equalsIgnoreCase("content:encoded");        }    }    public void characters(char[] ch, int start, int length) ... {        if(act==null) return;        if(titletag) {            act.titulo=new String(ch,start,length);            titletag=false;        }        else if(contenttag) {            act.contenido=new String(ch,start,length);            contenttag=false;        }    }    public void endElement(String uri, String localName, String qName) ... {        if(qName.equalsIgnoreCase("item"))        agregarNoticia(act);    }};

Page 6: Un lector de RSS sencillo para Blackberry -  Jorge Urdaneta @jorgeu

6

Muestra de elementos en pantalla

Banner con imagen del evento

Listado de títulos de noticias

Al dar click mostrar contenido

Page 7: Un lector de RSS sencillo para Blackberry -  Jorge Urdaneta @jorgeu

7

Muestra de elementos en pantalla

void agregarNoticia(final Noticia noticia) {    UiApplication.getUiApplication().invokeLater(new Runnable() {     public void run() {        contenedor.add(new LabelField(noticia.titulo,Field.FOCUSABLE) {          protected boolean navigationClick(int status, int time) {              Screen content=new MainScreen();              BrowserField browser=new BrowserField();              browser.displayContent(noticia.contenido,"");              content.add(browser);              UiApplication.getUiApplication().pushScreen(content);              return super.navigationClick(status, time);          }        });        contenedor.add(             new SeparatorField( SeparatorField.LINE_HORIZONTAL));     }    });}

public PantallaInicial() {    EncodedImage cap=        EncodedImage.getEncodedImageResource("img/banner.png");    setBanner(         new BitmapField(cap.getBitmap(),BitmapField.FIELD_HCENTER));    add(contenedor);    actualizarNoticias();}

Page 8: Un lector de RSS sencillo para Blackberry -  Jorge Urdaneta @jorgeu

8

Muestra de elementos en pantalla

Page 9: Un lector de RSS sencillo para Blackberry -  Jorge Urdaneta @jorgeu

9

Gracias por su atención

¿Preguntas?