Un lector de RSS sencillo para Blackberry -  Jorge Urdaneta @jorgeu
Upcoming SlideShare
Loading in...5
×
 

Like this? Share it with your network

Share

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

on

  • 1,661 views

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

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

Statistics

Views

Total Views
1,661
Views on SlideShare
1,500
Embed Views
161

Actions

Likes
0
Downloads
3
Comments
0

1 Embed 161

http://refreshmaracaibo.org 161

Accessibility

Categories

Upload Details

Uploaded via as OpenOffice

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

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

  • 1. Un lector de RSS sencillo para Blackberry OS 5
  • 2. Contenido
    • Introducción
    • 3. Parser XML del RSS
    • 4. Muestra de elementos en pantalla
  • 5. Introducción
    • Crear un lector del RSS del sitio http://refreshmaracaibo.org en smartphones Blackberry
    • 6. Facilitar el acceso a las últimas noticias del Blog
    • 7. Impulsar el “Branding” del evento
    • 8. Ofrecer una aplicación de ejemplo para principiantes
  • 9. Parser XML del RSS
    • Noticias contenidas en <item> … </item>
    • 10. Atributos a leer
      • <title> acá el título </title>
      • 11. <content:encoded> contenido </content:encoded>
    • SAX Parser
      • Se procesan los tags a medida que se van leyendo
      • 12. Ideal para XML que vienen de conexiones lentas
      • 13. No se carga el documento en memoria como DOM
      • 14. Se complica el procesamiento de tags en documentos XML complejos
    • Dirección del RSS: http://refreshmaracaibo.com/feed/
  • 15. 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( &quot;item&quot; )) act= new Noticia(); else { titletag=qName.equalsIgnoreCase( &quot;title&quot; ); contenttag=qName.equalsIgnoreCase( &quot;content:encoded&quot; ); } } 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( &quot;item&quot; )) agregarNoticia(act); } };
  • 16. Muestra de elementos en pantalla Banner con imagen del evento Listado de títulos de noticias Al dar click mostrar contenido
  • 17. 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, &quot;&quot; ); 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( &quot;img/banner.png&quot; ); setBanner( new BitmapField(cap.getBitmap(),BitmapField.FIELD_HCENTER)); add(contenedor); actualizarNoticias(); }
  • 18. Muestra de elementos en pantalla
  • 19. Gracias por su atención ¿Preguntas?