私はインターネット全体を見てきましたが、探しているものが見つからないようです...
公式Facebookの使い方の例をいくつか紹介したサイトを見つけようとしていますAndroid SDK http://github.com/facebook/facebook-Android-sdk
具体的には、通知の使用と簡単な写真のアップロードの例をいくつか見てみたいと思います。ただし、SDKの使用感をつかむために何かを取ります。
誰かが例を知っているなら、共有してくださいありがとうございました!
数週間前、公式のFacebook Android SDKとコンテンツを自分の壁に投稿することについて同様の質問をしました( Android/Java-Facebookの壁に簡単なテキストを投稿しますか? )それはあなたが自分の壁にテキストを投稿するのがどのようなものかを感じるのに役立つはずです。最初にFackbookアプリを作成し、Fackbook.comからAPIキーを申請する必要があることを指摘する必要があります( https ://kunukd.com/ )...作成するアプリのプラットフォームについて質問された場合は、モバイルを選択してください。
私が投稿した(上記の)Stack Overflowリンクのコードを変更して、写真を投稿することもできます。ただし、現時点では、Facebookの公式gitページによるとAndroid SDK(「既知の問題」の下):
3.バイナリAPIパラメータ(写真のアップロードなど)はまだサポートされていません-近日公開予定...
したがって、画像ファイルのURLがあれば(ファイルはすでにインターネット上にある必要があります)、写真を壁に投稿できますが、このSDKを使用して=から写真のバイナリ/バイトデータを送信することはできません。 Androidデバイス(まだ... 2010年7月24日現在)。少なくとも、上記のステートメントから収集したものです。
他のStackOverflow投稿(上記のリンク)に投稿したサンプルコードの次の行を置き換えます。
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が更新されるのを待ちます。
あなたはこのようにそれを行うことができます:
byte[] data = null;
try {
ContentResolver cr = mainActivity.getContentResolver();
InputStream fis = cr.openInputStream(localSnapshotUri);
Bitmap bi = BitmapFactory.decodeStream(fis);
ByteArrayOutputStream baos = new ByteArrayOutputStream();
bi.compress(Bitmap.CompressFormat.JPEG, 100, baos);
data = baos.toByteArray();
} catch (FileNotFoundException e) {
e.printStackTrace();
}
Bundle params = new Bundle();
params.putString("method", "photos.upload");
params.putByteArray("picture", data);
AsyncFacebookRunner mAsyncRunner = new AsyncFacebookRunner(facebook);
mAsyncRunner.request(null, params, "POST", new SampleUploadListener());
ここで使用されるパラメーターは次のとおりです。
localSnapshotUri
これは/ sdcard/..またはどこにでもある画像を指します:)mainActivity
これはアプリのメインアクティビティですSampleUploadListener
AsyncFacebookRunner.RequestListener
インターフェースの実装素敵なプログラミングを!
写真をアップロードする簡単な方法をここに投稿しました。
コード:
byte[] data = null;
Bitmap bi = BitmapFactory.decodeFile(photoToPost);
ByteArrayOutputStream baos = new ByteArrayOutputStream();
bi.compress(Bitmap.CompressFormat.JPEG, 100, baos);
data = baos.toByteArray();
Bundle params = new Bundle();
params.putString("method", "photos.upload");
params.putByteArray("picture", data);
AsyncFacebookRunner mAsyncRunner = new AsyncFacebookRunner(facebook);
mAsyncRunner.request(null, params, "POST", new SampleUploadListener(), null);
一度ログオンしたダイアログなしでユーザーのウォールに投稿し、新しいFacebook SDKを使用する最も簡単で実用的な例は、次のとおりです。 http://www.integratingstuff.com/2010/10/14/integrating- facebook-into-an-Android-application /
ちなみに、画像の投稿は以下で行われます。
parameters.putString("picture", "http://www.google.com/logos/mucha10-hp.jpg");