Java ベースの facebook アプリケーションを作成するための良い例や出発点を無駄に探しました...ここの誰かがそれを知っていることを望んでいました。同様に、Facebook が Java API をサポートしなくなると聞きましたが、これは本当ですか? はいの場合、Java を使用して Facebook アプリを作成する必要はもうないということですか??
6 に答える
古い公式の Facebook コードを出発点として使用して、Facebook Java API を最新の状態に保つことを目的としたコミュニティ プロジェクトがあります。
入門ガイドといくつかのサンプル コードと共に、ここで見つけることができます。
facebookjavaapiを使用して例を 作成します。クライアントリクエストを作成してすべてのユーザー情報を出力するためにFacebookXmlRestClientを使用します http://programmaremobile.blogspot.com/2009/01/facebook-java-apieng.html
BatchFB は、Facebook 呼び出しを最小セットまで簡単に最適化できる最新の Java API を提供します。
http://code.google.com/p/batchfb/
以下は、単一の 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();
Spring Socialを試してみてください。Facebook の機能に関しては制限があるかもしれませんが、Twitter、LinkedIn、TripIt、GitHub、および Gowalla にも接続できます。
反対に、Facebook が機能を追加すると、古い API の一部が機能しなくなる可能性があるため、より単純な純粋な FB API (機能しない場合に更新できる) を使用することをお勧めします。
このチュートリアルでは、必要なすべてのことを文字通り順を追って説明します: http://ocpsoft.org/opensource/creating-a-facebook-app-setup-and-tool-installation/
3部構成です。他の2つはそこからリンクされています。