2008-09-15 3 views
6

He buscado en vano un buen ejemplo o punto de partida para escribir una aplicación para Facebook basada en Java ... Esperaba que alguien aquí supiera de una. Además, escuché que Facebook ya no admitirá su API java. ¿Es verdad y si es así, eso significa que ya no deberíamos usar Java para escribir aplicaciones de Facebook?¿Cómo escribo aplicaciones de Facebook en Java?

+0

Ni siquiera voy a molestarme en aprender la API de Java para FB. Supongo que no habrá muchos tutoriales y libros que me ayuden con el desarrollo de Java. En cambio, aprenderé el lenguaje más popular y compatible para escribir aplicaciones FB. ¿Es JavaScript? –

Respuesta

6

Facebook dejó de admitir la API oficial de Java el 5 de mayo de 2008 según su developer wiki.

De ninguna manera significa que no deba usar Java más para escribir aplicaciones de FB. Hay varios enfoques alternativos de Java descritos en la wiki.

Es posible que también desee comprobar this project; sin embargo, solo salió hace unos días así que YMMV.

6

Hay un proyecto de comunidad que tiene como objetivo mantener actualizada la API de Facebook de Java, utilizando el antiguo código oficial de Facebook como punto de partida.

You can find it here junto con una guía de introducción y algunos bits de código de muestra.

0

Es posible que desee probar Spring Social. Puede ser limitado en términos de características de Facebook, pero también te permite conectarte a Twitter, LinkedIn, TripIt, GitHub y Gowalla.

El otro lado de las cosas es que a medida que Facebook agrega características algunas de las viejas API podrían romperse, por lo que usar una API simple FB más simple (que puede actualizar cuando las cosas no funcionan) podría ser una buena idea.

1

BatchFB ofrece un moderno API Java que le permite optimizar fácilmente su Facebook llama a un conjunto mínimo:

http://code.google.com/p/batchfb/

Aquí está el ejemplo tomado de la página principal de lo que se puede hacer de manera efectiva en una sola solicitud FB:

/** You write your own Jackson user mapping for the pieces you care about */ 
public class User { 
    long uid; 
    @JsonProperty("first_name") String firstName; 
    String pic_square; 
    String timezone; 
} 

Batcher batcher = new FacebookBatcher(accessToken); 

Later<User> me = batcher.graph("me", User.class); 
Later<User> mark = batcher.graph("markzuckerberg", User.class); 
Later<List<User>> myFriends = batcher.query(
    "SELECT uid, first_name, pic_square FROM user WHERE uid IN" + 
    "(SELECT uid2 FROM friend WHERE uid1 = " + myId + ")", User.class); 
Later<User> bob = batcher.queryFirst("SELECT timezone FROM user WHERE uid = " + bobsId, User.class); 
PagedLater<Post> feed = batcher.paged("me/feed", Post.class); 

// No calls to Facebook have been made yet. The following get() will execute the 
// whole batch as a single Facebook call. 
String timezone = bob.get().timezone; 

// You can just get simple values forcing immediate execution of the batch at any time. 
User ivan = batcher.graph("ivan", User.class).get(); 
Cuestiones relacionadas