web-dev-qa-db-ja.com

android)で画像とテキストをFacebookに共有する

AndroidでFacebookに画像とテキストを共有する正しい方法は何ですか?例えば事前入力されたテキストを含む画像。

これは、ネイティブのAndroid共有インテントで説明されているように ここ からは不可能であることに気付きました。画像またはリンクのみを取得できるため、両方を取得することはできません。

また、私はfacebook-sdk-3.14を次のように使用してみました:

    FacebookDialog.ShareDialogBuilder 

しかし、これはリンクの共有専用であることがわかりました。

私も試しました:

    createShareDialogBuilderForPhoto() 

ただし、これは画像の共有専用です。

SDKに欠けているものはありますか? FacebookDialogからは不可能だと思いますか?

Facebookで独自のアプリを作成し、独自のオープングラフアクションを実行する必要がありますか?理想的には、ログインボタンがないを探しています。

私も同様の質問を見ましたが、ほとんどは共有の意図に関するものであるか、それがsdkである場合、少なくとも1年は古く、解決策はこれに似たものです。

    Bundle parameters = new Bundle();
            parameters.putString("message", category_item_name_desc.getText().toString());
            parameters.putString("picture", categoryItemsModel.getImageUrl());
            parameters.putString("caption", txtDescription_desc.getText().toString());
            facebook.request("/me/feed", parameters, "POST");

フィードダイアログ(WebDialog)で試してみましたが、「エラー(#324)にはファイルのアップロードが必要です」というメッセージが表示されます。ヘルプがあれば便利です。

8
Iain Smith

ログインなしで現在のFacebookSDK(当時は3.14.1)を使用してこれを自分で行うことができ、選択リストに追加するための共有インテントにしました。

https://github.com/b099l3/FacebookImageShareIntent にデモプロジェクトがあります。依存関係はfacebook sdkのみであり、1つのアクティビティに含まれています。

2
Iain Smith

Facebook、Twitter、Gmailで画像を共有できます。

Bitmap b =BitmapFactory.decodeResource(getResources(),R.drawable.ic_launcher);

Intent share = new Intent(Intent.ACTION_SEND);

share.setType(“image/jpeg”);

ByteArrayOutputStream bytes = new ByteArrayOutputStream();
b.compress(Bitmap.CompressFormat.JPEG, 100, bytes);
String path = MediaStore.Images.Media.insertImage(getContentResolver(), b, “Title”, null);
Uri imageUri = Uri.parse(path);
share.putExtra(Intent.EXTRA_STREAM, imageUri);
startActivity(Intent.createChooser(share, “Select”));
5
Deepshikha Puri

私のライブラリを見てください: https://github.com/antonkrasov/AndroidSocialNetworks

それの助けを借りて、投稿は本当に簡単です:

mSocialNetworkManager.getFacebookSocialNetwork().postMessage(String message)
mSocialNetworkManager.getFacebookSocialNetwork().postPhoto(File path...)
1
Anton Krasov