2010-12-15 11 views
7

私のAndroidアプリでは、壁に自分のアプリを「共有」して、壁にあらかじめ定義されたコンテンツステータスを投稿してもらいたいです。Android用Facebook SDKのFacebookフィードダイアログにコンテンツを追加する

壁の状態をカスタマイズするにはどうすればよいですか? (アプリアイコンとフレアテキストを追加したい)

+0

これはFacebookのSDKがなくても、Share urlで行うことができます。あなたは間違いなくSDKをしたいですか? –

+0

私は可能な限り簡単な方法を望んでいます。 :) – oriharel

+0

[OK]を、共有者のURLで、最も簡単な方法は、以下のサンプルを参照してください。 –

答えて

2

またSDKせずに、単に共有URLを経由していることを行うことができます。

public void shareOnFacebook(View v) { 

    Uri uri = Uri.parse("http://m.facebook.com/sharer.php?u=http://yourdomain/page.html&t=YourMessage"); 
    Intent intent = new Intent(Intent.ACTION_VIEW, uri); 
    startActivity(intent); 
} 

あなたは自分の共有者に提供したURLの下で、サーバー上のどこかにコンテンツページ/ HTMLを配置する必要があります。

あなたは、特定のイメージは、あなたが共有しているサーバー上のHTMLページのメタタグにこれを入れ、共有メッセージに表示されていることをしたい場合:

<link rel="image_src" type="image/jpeg" href="http://yourdomain.com/promo/image.png" /> 

は、このようなプロモーションページのサンプルを参照してください。リンクされた画像:http://www.modelme.co.uk/promo/amandaharrington

+0

サーバーを持っていないとどうなりますか?単なるネイティブアプリですか? – oriharel

+2

この方法はうまくいきません。ただし、ブラウザで一般公開されている限り、どこにでも空きスペース(http://sites.google.com/など)を置くことができます。 –

5

Facebook SDKをダウンロードしてプロジェクトにインポートします。そして、認可するために、次のコードを使用します。

public void sendtoFacebook(){ 
     facebookClient = new Facebook("<Your_APP_ID"); 
     facebookClient.authorize(<Current_class>.this, new AuthorizeListener()); 
    } 

今、あなたは、次のmethodesを追加する必要があります。あなたのアプリケーション名とアイコン

class AuthorizeListener implements DialogListener { 
    public void onComplete(Bundle values) { 
     Bundle parameters = new Bundle(); 
      parameters.putString("message", "<Message_you_want_to_send>");// the message to post to the wall 
      facebookClient.dialog(<Current_class>.this, "stream.publish", parameters, this);// "stream.publish" is an API call 
    } 
    @Override 
    public void onFacebookError(FacebookError e) { 
    } 
    @Override 
    public void onError(DialogError e) { 
    } 
    @Override 
    public void onCancel() { 
    } 
} 

が自動的に追加されます:)

+0

ありがとうございますが、これは私が欲しいものではありません。これは、テキストボックスにテキストを置きます。私は、ユーザーに定義済みのコンテンツの上にテキストを追加する機会を与えたいと思います。 YouTubeからビデオを共有すると、ポップアップダイアログ、ステータスを追加するための空のテキストボックス、YouTubeコンテンツ(この例では埋め込みビデオとテキスト)の下にダイアログが表示されます。これは私がユーザーに持つ経験です。 – oriharel

+0

私が掲示したコードは壁への単純な投稿です。 https://github.com/facebook/facebook-android-sdkでSDKを調べると、必要なものを含め、さらに多くのオプションがあることがわかります。 – Galip

+0

実際、このページのドキュメントは非常に少ないです(つまり、バンドルに追加するオプションのパラメータのリストはありません)。私はFacebookのAPI(標準ではなく、アンドロイド)が推測されます。 – oriharel

3

Facebookを利用して学習した後、 API、私はこれを見つけたpage

今私はバンドルパラメータのすべてのオプションを知っています。 おかげさまで、皆様のご協力をいただきました!

2

これはそれのどれもがJavaではありませんが、これは、私にすべてを説明したリンクでどのように私はFacebookのSDK

を使用してFacebookのダイアログを介してコンテンツを設定するためのバンドルを作っています
Bundle parameters = new Bundle(); 
     parameters.putString("app_id", "xxxxxxx"); 
     parameters.putString("link", "https://play.google.com/store/apps/details?id=myappistasty"); 
     parameters.putString("name", "This is the name of the link set in app."); 
     parameters.putString("caption", "This is Text that is specified in bt the aoo"); 
     parameters.putString("picture", "www.urltoimage.com); 
facebook.dialog(MainActivity.this, "feed", parameters, new DialogListener() { 
etc... 

http://developers.facebook.com/docs/reference/dialogs/feed/ ですテーブルは良いアイデアを提供します。

関連する問題