数週間前、公式の Facebook Android SDK と自分のウォールへのコンテンツの投稿に関して、同様の質問をしました ( Android/Java -- Post simple text to Facebook wall? )。これは、自分の壁にテキストを投稿するのがどのようなものかを理解するのに役立つはずです. ただし、最初に Fackbook アプリを作成し、Fackbook.com ( https://kunukd.com/ )から API キーを申請する必要があることを指摘しておく必要があります...作成しようとしているアプリのプラットフォームについて尋ねられた場合、モバイルを選択します。
私が投稿した Stack Overflow リンク (上記) のコードを変更して、写真を投稿することもできます。現時点では、Facebook Android SDK の公式 git ページ (「既知の問題」の下) によると:
3. バイナリ API パラメータ (写真のアップロードなど) はまだサポートされていません。
そのため、画像ファイルの URL を知っていれば壁に写真を投稿できますが (ファイルは既にインターネット上にある必要があります)、この SDK を使用して Android から写真のバイナリ/バイト データを送信することはできません。デバイス (まだ... 2010 年 7 月 24 日現在)。少なくとも、それが上記の声明から私が収集したものです。
別のスタック オーバーフローの投稿 (上記のリンク) に投稿したサンプル コードの次の行を置き換えます。
Bundle parameters = new Bundle();
parameters.putString("message", "this is a test");// the message to post to the wall
facebookClient.dialog(this, "stream.publish", parameters, this);// "stream.publish" is an API call
これとともに
Bundle parameters = new Bundle();
parameters.putString("message", "Test Photo");
parameters.putString("attachment", "{\"name\":\"My Test Image\","
+"\"href\":\""+"http://www.google.com"+"\","
+"\"media\":[{\"type\":\"image\",\"src\":\""+"http://www.google.com/logos/mucha10-hp.jpg"+"\",\"href\":\""+"http://www.google.com"+"\"}]"
+"}");
facebookClient.dialog(this, "stream.publish", parameters, this);
また、ウォールに写真を投稿できる必要があります (テキストやリンクも同様です)。
「アタッチメント」文字列の構造化について詳しくは、http: //www.mobisoftinfotech.com/blog/android/845/ を参照してください。
それ以外に、デバイスから直接アルバムに写真を投稿する必要がある場合は、サードパーティ パッケージの使用を検討するか、公式 SDK が更新されるのを待ちます。