Pular para o conteúdo principal

Postar no Twitter com programa escrito em Java

Depois de ter usado um pouco a API do Google, resolvemos usar também a do Twitter.

Estava procurando na internet se alguém já tinha feito integração com uma aplicação Java e recebi 3 resultados de bibliotecas open source escritas em Java usando a API do Twitter:
Escolhi a Twitter4J por ser a mais usada e atualizada, além de ter muito mais resultados nas buscas, inclusive com exemplos e tutoriais.
No começo exitei um pouco e deixei para testar quando tivesse um tempo livre porque normalmente a gente
não consegue colocar alguma coisa para funcionar usando biblioteca de terceiros em pouco tempo.
Mas fiquei admirada com a facilidade de uso e a rapidez com que eu consegui postar um tweet.
Foi coisa de minutos, o download do arquivo zip demorou mais do que escrever o código e rodar no Eclipse!
Fiz download de um pacote de menos de 2 MB que tem os fontes, exemplos e o arquivo jar (twitter4j-2.0.10.jar), que já tem incluído todas as dependências que ele precisa para executar e que deve ser colocado no classpath da sua aplicação. Depois escrevi 2 linhas de código e ao executar já tinha meu tweet enviado. É muito simples, veja a minha classe de teste:

import twitter4j.*;

public class TwitterTeste {

  public static void main(String[] args) throws TwitterException {

      Twitter twitter = new Twitter("username", "password");
      Status status = twitter.updateStatus("Escreva sua mensagem aqui");

  }

}

Nesta biblioteca, encontramos classes muito fáceis de usar, onde foram encapsulados os acessos à API do Twitter. Além de atualizar o status do usuário, ou seja, criar um post no Twitter, é possível fazer leitura da "timeline" do usuário e dos seus seguidores, listar e enviar mensagens diretas, e muito mais.

Aplicação prática
Claro que todo desenvolvedor gosta de conhecer e testar novas APIs, principalmente relacionado a uma coisa tão na moda como o Twitter. Mas isso tudo não era só um teste de curiosidade, nosso objetivo de negócio era simplificar o post de minicursos gratuitos do usuário Open4Education e por isso resolvemos fazer uma integração com o Global Education System.

E você está usando a API do Twitter para alguma coisa?
Comente, compartilhe, "twite" também!

[]s

Ana Abrantes
http://twitter.com/anabrant

Comentários

Unknown disse…
Muito boa a matéria...despertou minha curiosidade. Vou testar.
IvoReali disse…
Estava precisando de algo assim,
valeu pelo post!!!
Fred Maia disse…
Muito bom! Vou testar também!
Divulguei seu post no meu twitter e publiquei seu post no meu blog tbm! Informando a fonte! Abraços até mais!
Fred Maia disse…
Seus links de APIs não estão funcionando! "/
noone disse…
Estou sim, não tenho uma conta no twitter, mas gosto de "seguir" algumas, desenvolvi uma app para receber as atualizacoes dos status assim que sao postados. Por enquanto é early, mas funciona muito bem ;)
Ana Abrantes disse…
Desculpe, Fred, eu não tinha visto que os 3 primeiros links estavam errados.
Já estão corrigidos agora.

Obrigada,

Ana
Unknown disse…
Eu não sei o que estou a fazer mal, mas eu saquei o jar e adicionei à minha lib no eclipse. Coloquei o código como aqui está mas quando vou a compilar ele queixa-se que não consegue instanciar a classe Twitter ("Cannot instantiate the type Twitter"). Provavelmente eu tou a fazer algo mal só n entendo o que.
Obg

Postagens mais visitadas deste blog

10 reasons why we love JSF

1. One-slide technology: it's so simple that I can explain basic JSF with one slide. 2. Easy to extend: components, listeners, render kit, Events, Controller, etc. 3. Real-world adoption: JBoss, Exadel, Oracle, IBM, ... 4. Architecture model: you can choose between more than 100 different architecture. 5. Open-mind community: using JSF you are going to meet very interesting people. 6. We are using JSF the last 5 years and we found very good market for JSF in Brazil 7. Progress: look to JSf 1.1 to JSF 1.2, JSF 1.2 to JSF 2.0. People are working really hard! 8. Many professionals now available 9. It's a standard. It's JCP. Before complain, report and help! 10. Ed Burns, spec leader, is an old Globalcode community friend! EXTRA: My wife is specialist in JSF. She's my F1 for JSF :) Nice job JSF community! -Vinicius Senger

EJB 3: Uma evolução sob os conceitos do Hibernate e Spring

Definitivamente o modelo de componentização definido no Java EE 5 e 6 evoluiu e melhorou muito. Mas, sem dúvida muita dessa evolução se deve às pressões do Hibernate e Spring Framework. Estes dois últimos frameworks nasceram baseados no conceito de POJO, que nada mais é do que a concepção de um modelo de componentização baseado em classes Java sem as regras impostas pelo EJB (curioso, sem o EJB não existiria o Hibernate ou o Spring). A morte dos Entity Beans O Hibernate nasceu da idéia de promover um modelo de persistência mais simples que o proposto pelos EJBs do tipo Entity Beans definido na especificação EJB 2.x. Este foi o primeiro tipo de EJB a sofrer com a evasão de desenvolvedores com o surgimento deste framework e a conscientização sobre os problemas nos Entity Beans. A partir de um modelo baseado em JavaBeans e o uso do JDBC, o Hibernate usa a Reflection API para gerar os SQLs necessários para persistir o estado de beans em diversos banco de dados relacionais, além de defini...

O que é Lógica de programação?

Este é o segundo de uma série de posts voltados aos leitores do blog que estão dando início à carreira de desenvolvimento de software. O assunto de hoje é a lógica de programação. Para ler antes: Entendendo como funciona a programação de computadores: linguagens de programação, lógica, banco de dados A lógica de programação é um pré-requisito para quem quer se tornar um desenvolvedor de software, independente da linguagem de programação que se pretende utilizar. Mas o que é de fato a Lógica de Programação e como saber se eu tenho esse pré-requisito? A lógica de programação nada mais é do que a organização coerente das instruções do programa para que seu objetivo seja alcançado. Para criar essa organização, instruções simples do programa, como mudar o valor de uma variável ou desenhar uma imagem na tela do computador, são interconectadas a estruturas lógicas que guiam o fluxo da execução do programa. Isso é muito próximo ao que usamos em nosso cotidiano para realizar atividad...

JavaOne Brasil, dicas para submissão de palestras

Não quero parecer pretensiosa dando dicas para submissão de palestras para o JavaOne Brasil, mas sim repassar os tantos conselhos e sugestões recebidas pelos vetaranos do JavaOne: Bruno Souza e Leonardo Galvão que revisaram dezenas de submissões para o JavaOne e ajudaram a aprovar tantas palestras, e também misturar um pouco da minha experiência na seleção de palestras nos eventos realizados pela Globalcode e SouJava . 10 anos de JavaOne: http://www.globalcode.com.br/noticias/Globalcode10AnosNoJavaOne Os palestrantes ganham a entrada! A submissão pode ser feita em português! O passo mais importante para ser aprovado como palestrante no JavaOne é sem dúvida nenhuma submeter pelo menos uma palestra. Então, independente de qualquer coisa, participe, arrisque, divulgue.  Mas, se quiser aumentar as suas chances...   1) Leve a sério: peça para amigos fazerem uma leitura crítica do texto, e claro uma boa revisão ortográfica. 2) Submissão de várias palestras ou variações do ...

Parceria Globalcode no projeto Samsung Ocean

Já faz algum tempo que a Globalcode e a Samsung tem uma parceria no projeto "Samsung Ocean". Esse é um projeto muito interessante com o objetivo de divulgar e difundir o uso de tecnologia, principalmente associado a dispositivos móveis como celulares e relógios inteligentes (smart watches). No projeto são oferecidos diversos treinamentos e workshops gratuitos . Alguns dos treinamentos oferecidos são: Desenvolvimento de aplicações Android Desenvolvimento de aplicações para wearable Tópicos em desenvolvimento ágil Introdução aos jogos digitais Para a maioria dos cursos, o material e instrutores são fornecidos pela Globalcode. Atualmente nosso grupo de instrutores do projeto conta com excelentes profissionais como: Thiago Moreira Heider Lopes Luis Palma Taynã Bonaldo Thais Andrade O centro de treinamentos está localizado na Escola Politécnica da USP e atualmente estão abertas as inscrições para um dos programas mais bacanas do projeto. É o programa de pré-a...

NIO.2 do Java 7: uma nova API do Java para file system

Uma das novidades mais importantes e aguardadas do Java 7 foi a NIO.2, a nova API para a manipulação I/O com Java. A NIO.2, também conhecida como JSR 203 , disponibiliza um conjunto de novos componentes, projetados para melhorar caracterísiticas de I/O com Java como por exemplo: uma nova API para o acesso e manipulação de conteúdo do file system (sistema de arquivos); outra API para operações assíncronas com I/O; e a atualização da API para comunicação via sockets ( channel sockets ).   O Java, antes da versão 7, tratava a manipulação do sistema de arquivos de forma primitiva. O programador tinha de trabalhar com a classe File para representar arquivos e/ou diretórios, com um número escasso de funcionalidades. Uma operação simples como copiar um arquivo demandava um código relativamente grande. Outras funcionalidades triviais, como por exemplo o uso de links simbólicos, não eram suportadas. Esses são alguns dos motivos para justificar o uso de bibliotecas terceiras...