Avançar para a área de conteúdo

ir para o conteúdo principal

developerWorks Brasil  >  Software livre  >

Crie Aplicativos BlackBerry com Ferramentas de Software Livre, Parte 2: Construindo um Leitor de RSS

developerWorks
Ir para a página anteriorPágina 2 de 9 Ir para a próxima página

Opções de documento

Código de amostra


Classificar este tutorial

Ajude-nos a melhorar este conteúdo


Really simple syndication

Esta seção mostra um resumo do histórico de RSS, sua construção e possíveis usos. Após entender o formato dos dados, você pode se aprofundar na construção do aplicativo.

Princípios Básicos do RSS

Really simple syndication (RSS) é uma estrutura de dados XML utilizada para transportar conteúdo da Web. O formato dos dados vem evoluindo desde a década de 90, já que diferentes equipes trabalharam nisso. Dave Winer é visto como uma pessoa extremamente importante na liderança de formatos de RSS com o passar dos anos, com contribuições de equipes da Netscape e outras. (Consulte Recursos para conhecer os marcos históricos do formato RSS.) O que importa é que hoje o RSS é um formato de dados totalmente estável que é útil para a publicação de notícias ou dados organizados.

Dados que são publicados periodicamente — como atualizações de blogs, informações sobre notícias ou dados de catálogos — são ideais para o formato RSS. Leitores de RSS estão presentes na maioria dos navegadores da Internet, que fornecem suporte integrado para a manipulação de feeds RSS. Um comportamento típico para um navegador é criar um indicador que contenha um link para cada item no feed RSS. Feed às vezes é utilizado porque dados de RSS normalmente são entregues por um servidor da Web, como um arquivo XML estático entregue direto do sistema de arquivos do servidor da Web, ou como uma origem de dados gerada dinamicamente a partir de um banco de dados no servidor da Web.

A próxima seção examina a estrutura do RSS V2.0, que é o nível de especificação atual.

Estrutura de Dados

A especificação do RSS V2.0 inclui duas entidades necessárias abaixo da tag de RSS de nível superior. Podem existir várias entidades de item em um determinado feed RSS, além da entidade channel. A Listagem 1 mostra um exemplo (consulte Recursos para obter mais informações).


Listagem 1. Feed RSS de Amostra Tirado de harvard.edu

<?xml version="1.0"?>
<rss version="2.0">
   <channel>
      <title>Liftoff News</title>
      <link>http://liftoff.msfc.nasa.gov/</link>
      <description>Liftoff to Space Exploration.</description>
      <language>en-us</language>
      <pubDate>Tue, 10 Jun 2003 04:00:00 GMT</pubDate>
      <lastBuildDate>Tue, 10 Jun 2003 09:41:01 GMT</lastBuildDate>
      <docs>http://blogs.law.harvard.edu/tech/rss</docs>
      <generator>Weblog Editor 2.0</generator>
      <managingEditor>editor@example.com</managingEditor>
      <webMaster>webmaster@example.com</webMaster>
      <item>
         <title>Star City</title>
         <link>http://liftoff.msfc.nasa.gov/news/2003/news-starcity.asp</link>
         <description>How do Americans get ready to work with Russians
 	  aboard the International Space Station? They take a crash
 	  course in culture, language and protocol at Russia's <a
 	  href="http://howe.iki.rssi.ru/GCTC/gctc_e.htm">Star
	  City</a>.</description>
         <pubDate>Tue, 03 Jun 2003 09:39:21 GMT</pubDate>
         <guid>http://liftoff.msfc.nasa.gov/2003/06/03.html#item573</guid>
      </item>
      <item>
         <description>Sky watchers in Europe, Asia, and parts of Alaska
	  and Canada will experience a <a href="http://science
	  .nasa.gov/headlines/y2003/30may_solareclipse.htm">
	  partial eclipse of the Sun</a> on Saturday, May
	  31st.</description>
         <pubDate>Fri, 30 May 2003 11:06:42 GMT</pubDate>
         <guid>http://liftoff.msfc.nasa.gov/2003/05/30.html#item572</guid>
      </item>
      <item>
         <title>The Engine That Does More</title>
         <link>http://liftoff.msfc.nasa.gov/news/2003/
	  news-VASIMR.asp</link>
         <description>Before man travels to Mars, NASA hopes to design
	  new engines that will let us fly through the Solar System
	  more quickly.  The proposed VASIMR engine would do
	  that.</description>
         <pubDate>Tue, 27 May 2003 08:37:32 GMT</pubDate>
         <guid>http://liftoff.msfc.nasa.gov/2003/05/27.html#item571</guid>
      </item>
      <item>
         <title>Astronauts' Dirty Laundry</title>
         <link>http://liftoff.msfc.nasa.gov/news/2003/
	  news-laundry.asp</link>
         <description>Compared to earlier spacecraft, the International
	  Space Station has many luxuries, but laundry facilities are
	  not one of them.  Instead, astronauts have other
	  options.</description>
         <pubDate>Tue, 20 May 2003 08:56:02 GMT</pubDate>
         <guid>http://liftoff.msfc.nasa.gov/2003/05/20.html#item570</guid>
      </item>
   </channel>
</rss>

Os campos obrigatórios da entidade channel:

  • Title — Geralmente corresponde ao nome da origem dos dados
  • Link — Um link para o Web site contendo estas informações ou informações relacionadas
  • Description — Uma breve descrição do feed RSS

Enquanto a entidade item não exige nenhum elemento obrigatório específico, um subconjunto típico inclui:

  • Title — O título do item
  • Link — URL para o item; geralmente uma página da Web de histórico de notícias completa
  • Description — Uma sinopse do histórico completo
  • pubDate — Quando estas informações foram publicadas

Os elementos de dados acima são utilizados pelo aplicativo de amostra de leitor de RSS neste tutorial.



Voltar para parte superior


Onde Localizar os Dados

Feeds RSS podem ser localizados em toda a Internet. Se você estiver em um Web site e pensar "Seria bom eu me subscrever para esses dados", provavelmente você não será a primeira pessoa a pensar assim. Talvez você encontre um link para feeds RSS. Muitos sites de hoje oferecem conteúdo de áudio como feeds RSS. Por exemplo, o site do developerWorks e o eWeek oferecem muitos feeds RSS em uma variedade de tópicos. Handango.com, que é uma grande câmara de compensação para aplicativos de software remotos, disponibiliza seus catálogos de produtos como feeds RSS. Em alguns sites, você pode localizar os links de RSS facilmente procurando a imagem na Figura 1.


Figura 1. Imagem de XML Descrevendo feeds RSS
Imagem de XML Descrevendo feeds RSS

A amostra neste tutorial utiliza feeds RSS de várias origens, incluindo:

  • Ziff Davis — DevSource
  • developerWorks da IBM
  • New Yorker
  • Answers in Genesis
  • Handango BlackBerry Best Sellers

Esta lista, que representa uma fração minúscula dos feeds RSS disponíveis na Internet, inclui listas de tutoriais, tópicos de desenvolvimento, históricos de notícias, perspectivas baseadas em crenças e um catálogo de produtos. Existem outros usos para dados de RSS, conforme será discutido a seguir.



Voltar para parte superior


Outros Usos de RSS

Dados de RSS não têm que ser notícias ou informações de catálogos. Eles podem ser qualquer tipo de dado, desde que estejam dentro dos limites da estrutura de dados e do uso desejado dos dados de RSS. Por exemplo, uma alimentação de dados de RSS pode ser utilizada para publicar ordens de trabalho para um técnico remoto ou para representar resultados de procura de um mecanismo de procura. Os dados de canais representam informações de alto nível. Os dados do item podem fornecer detalhes suficientes para informar o usuário sobre cada item individual. O campo de link associado pode ser utilizado para se aprender mais.

Por exemplo, no caso de um aplicativo de mão de obra remota, o title seria o ID de trabalho, description contém uma sinopse do registro de trabalho e link leva o técnico de volta para o sistema de ordem de trabalho para obter mais informações, conforme necessário. Conforme você prossegue neste tutorial, pense em outros tipos de dados que podem ser representados no formato RSS.

É hora de construir o Leitor de RSS BlackBerry. Se quiser construir o aplicativo de amostra, instale uma versão do BlackBerry Java Development Environment caso ainda não tenha instalado.



Voltar para parte superior



Ir para a página anteriorPágina 2 de 9 Ir para a próxima página